Agent skill

gh-run-failure

Use to analyze failures in GitHub pipelines or jobs.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/gh-run-failure

SKILL.md

<general_guidelines>

  • Assume the gh tool is installed and configured.
  • Avoid printing full logs; focus on the failing step.
  • For large logs, prefer downloading artifacts.
  • If a test case failed, specify which test and how to run it locally. </general_guidelines>

List recent runs

Inspect a single run

Show only failed jobs or steps

View failed jobs/steps output

To focus on a specific job, first list them: gh run view "$RUN_ID" --json jobs --jq '.jobs[] | "(.databaseId)\t(.name)\t(.conclusion)"'

Then fetch that job's log: JOB_ID=987654321 gh run view "$RUN_ID" --job "$JOB_ID" --log

List artifacts from a run

Download a specific artifact

After downloading, search locally for errors: rg -n "error|fail|exception" /tmp/github-run-"$RUN_ID"

Compare failed and latest successful run

Get latest successful run ID: BRANCH=main OK=$(gh run list --branch "$BRANCH" --limit 50 --json databaseId,conclusion
--jq '.[] | select(.conclusion=="success") | .databaseId' | head -n1) echo "$OK"

Diff their SHAs: FAIL_SHA=$(gh run view "$RUN_ID" --json headSha --jq .headSha) OK_SHA=$(gh run view "$OK" --json headSha --jq .headSha) gh api repos/:owner/:repo/compare/"$OK_SHA"..."$FAIL_SHA" --jq '.commits[].commit.message' | sed 's/^/- /'

Didn't find tool you were looking for?

Be as detailed as possible for better results