name: github-actions-failure-matrix description: Summarize GitHub Actions matrix job failures across runs so you can spot unstable OS/runtime axes fast. version: 1.7.0 metadata: {"openclaw":{"requires":{"bins":["bash","python3"]}}}
Use this skill to turn noisy GitHub Actions run JSON into a matrix-focused failure report.
gh run view --json)failure, timed_out, cancelled, etc.)name (a, b), name [a, b], name / a / b)text or jsonOptional:
- RUN_GLOB (default: artifacts/github-actions/*.json)
- TOP_N (default: 20)
- OUTPUT_FORMAT (text or json, default: text)
- FAIL_ON_FAILURES (0 or 1, default: 0) — exit non-zero when failure groups exist
- MIN_OCCURRENCES (default: 1) — hide groups below this repeat count
- WORKFLOW_MATCH (regex, optional) — include only workflows whose names match
- WORKFLOW_EXCLUDE (regex, optional) — drop workflows whose names match
- BRANCH_MATCH (regex, optional) — include only runs whose branch names match
- BRANCH_EXCLUDE (regex, optional) — drop runs whose branch names match
- JOB_MATCH (regex, optional) — include only base job names that match
- JOB_EXCLUDE (regex, optional) — drop base job names that match
- AXIS_MATCH (regex, optional) — include only parsed matrix-axis strings that match
- AXIS_EXCLUDE (regex, optional) — drop parsed matrix-axis strings that match
- CONCLUSION_MATCH (regex, optional) — include only specific failure conclusions (failure, timed_out, cancelled, etc.)
- CONCLUSION_EXCLUDE (regex, optional) — drop specific failure conclusions
- FAILED_STEP_MATCH (regex, optional) — include only jobs whose terminal failed step matches
- FAILED_STEP_EXCLUDE (regex, optional) — drop jobs whose terminal failed step matches
- RUN_ID_MATCH (regex, optional) — include only runs whose run id matches
- RUN_ID_EXCLUDE (regex, optional) — drop runs whose run id matches
- RUN_URL_MATCH (regex, optional) — include only runs whose URL matches
- RUN_URL_EXCLUDE (regex, optional) — drop runs whose URL matches
- HEAD_SHA_MATCH (regex, optional) — include only runs whose headSha matches
- HEAD_SHA_EXCLUDE (regex, optional) — drop runs whose headSha matches
- REPO_MATCH (regex, optional) — include only runs whose repository matches (repository.nameWithOwner/full_name/name)
- REPO_EXCLUDE (regex, optional) — drop runs whose repository matches
gh run view <run-id> --json databaseId,workflowName,headBranch,headSha,url,repository,jobs \
> artifacts/github-actions/run-<run-id>.json
Text report:
RUN_GLOB='artifacts/github-actions/*.json' \
TOP_N=15 \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
JSON output for CI annotation/upload:
RUN_GLOB='artifacts/github-actions/*.json' \
OUTPUT_FORMAT=json \
FAIL_ON_FAILURES=1 \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
Filter to a specific workflow + branch + matrix axis (for targeted triage):
RUN_GLOB='artifacts/github-actions/*.json' \
WORKFLOW_MATCH='(CI|Test)' \
BRANCH_MATCH='^(main|release/)' \
AXIS_MATCH='ubuntu-latest \| python-3\.12' \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
Isolate timeout-only matrix failures:
RUN_GLOB='artifacts/github-actions/*.json' \
CONCLUSION_MATCH='^timed_out$' \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
Exclude noisy flaky suites while keeping the rest of the matrix view:
RUN_GLOB='artifacts/github-actions/*.json' \
WORKFLOW_EXCLUDE='nightly|experimental' \
JOB_EXCLUDE='lint|docs' \
AXIS_EXCLUDE='windows-latest' \
CONCLUSION_EXCLUDE='^cancelled$' \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
Focus only on setup/toolchain breakages by failed step name:
RUN_GLOB='artifacts/github-actions/*.json' \
FAILED_STEP_MATCH='setup|install|dependency' \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
Limit triage to a specific run range or workflow URL pattern:
RUN_GLOB='artifacts/github-actions/*.json' \
RUN_ID_MATCH='^(28419|28420)' \
RUN_URL_MATCH='example/repo/actions/runs' \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
Scope triage to a commit range by headSha:
7w4.net提供免费和付费技能下载。
RUN_GLOB='artifacts/github-actions/*.json' \
HEAD_SHA_MATCH='^(abc123|def456)' \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
Scope triage to specific repositories when aggregating exports from multiple repos:
RUN_GLOB='artifacts/github-actions/*.json' \
REPO_MATCH='^flowcreatebot/(yf-api-saas|conspiracy-canvas)$' \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
Run with bundled fixtures:
RUN_GLOB='skills/github-actions-failure-matrix/fixtures/*.json' \
bash skills/github-actions-failure-matrix/scripts/failure-matrix.sh
0 by default (reporting mode)1 if FAIL_ON_FAILURES=1 and at least one failure group is foundtext mode, prints summary + top failure matrix groupsjson mode, prints machine-readable summary and grouped failures这是一个功能丰富的 GitHub Actions 失败分析工具,文档详尽、使用示例丰富,过滤和筛选功能非常灵活,脚本运行逻辑清晰,输出格式友好。不足之处是缺少自动测试覆盖,长期使用和维护存在一定风险。总体而言质量良好,但建议在使用前仔细阅读文档以充分发挥其功能。