Agent skill · operations · yonatangross
ci-debug
Diagnoses one failing CI run or PR check against an 11-pattern playbook and proposes the exact fix, never applying it unasked. Use when a GitHub Actions job failed. Not for org-wide sweeps (use status) or app test failures.
Why this skill is useful
Encodes 11 specific CI failure patterns and provides exact commands for diagnosis that the AI wouldn't generate on its own.
What it needs
Requires gh installed locally. About 6k tokens when loaded. Last updated 2026-08-06. 215 stars on the source repository.
What this skill does
/ci-debug — classify a failing CI run Direct response to the recurring CI-debug pattern surfaced by /insights: ~12 sessions in 3 weeks doing the same classification dance. This skill encodes the 11 patterns so the dance becomes a lookup. Input User invokes with one of: PR number: /ci-debug 822 (default repo from context; ask if ambiguous) Run URL: /ci-debug https://github.com/owner/repo/actions/runs/12345 Job URL: /ci-debug https://github.com/owner/repo/actions/runs/X/job/Y Execution 1. Resolve the failing job If multiple jobs failed, pick the one with the shortest duration — root cause is usually the first failure; later jobs cascade. No job in the fail bucket but a check won't settle? If gh pr checks shows zero fail-bucket entries yet a status sits in pending that never resolves (and gh pr view --json mergeStateStatus returns UNSTABLE while mergeable=MERGEABLE), this is a stuck external status, not a failure — jump straight to Pattern #11. There is no failing log to fetch; classify on the commit-status metadata (gh api repos/<o>/<r>/commits/<sha>/status). 2. Fetch the failing log Capture the FIRST distinct error message (later lines often echo). 3. Classify against the playbook Walk the patterns in order. First match wins. # Pattern Signature in logs Memory ref Proposed fix --- --------- ------------------- ------------ -------------- 1 Billing block runnername empty + steps[] empty + ~3s duration + annotation: "recent account payments have failed or your spending limit needs to be increased" billing-surface-hosted-vs-self-hosted.md Org admin → Settings → Billing & plans → raise limit / update card. No code change. 2 Root-lockfile drift ERRPNPMOUTDATEDLOCKFILE mentioning <ROOT>/typescript/<pkg>/package.json pnpm-lock-root-vs-workspace-duality.md pnpm install --lockfile-only && git add pnpm-lock.yaml && git commit && git push. 3 uv.lock drift error: The lockfile at uv.lock needs to be updated changeset-release-uv-lock-drift.md cd python && uv lock then commit. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills yonatangross/ci-debug--6c4541