Rig debug
Copy-in kit of config-driven agent skills, agents, and CI templates — native to Claude Code and adaptable to any AGENTS.md-reading agent.
npx -y skills add agent-rig/rig --skill rig-debugAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 14 days oldThe repository was created 14 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Systematic root-cause debugging for a failing test, production bug, flaky behavior, or unexplained error. Spawns the debugger agent through Phase 1 → 4 (root-cause → pattern analysis → hypothesis → minimal fix). Refuses to propose fixes before evidence is gathered. Triggers on: 'debug', 'why is X failing', 'root cause', 'this isn't working'.
SKILL.md
4.6 KB, as published. Nobody here has run it
Debug
Drive a bug to root cause and a single minimal fix using the four-phase methodology.
Configuration
Reads .rig/config.json:
test.command— how to run the test suite when collecting Phase 1 evidence (default:npm test).agents.debugger— the project's name for the canonicaldebuggerrole (default:debugger).agents.architect— the project's name for the canonicalarchitectrole, used only when escalating (default:architect).
If the file is absent, use the defaults above and note you're running unconfigured.
The four-phase methodology
The debugger agent runs this loop; the skill drives it and refuses to
let it skip ahead. Each phase has a deliverable that gates the next:
- Phase 1 — Root cause. Gather evidence: reproduce the failure, read
the failing code path, capture the exact error/stack/trace,
git diffthe suspect window. Deliverable: a stated root cause backed by observed evidence — not a guess. - Phase 2 — Pattern analysis. Ask whether this is an instance of a class. Does the same bug shape exist elsewhere in the tree? Deliverable: the blast radius (this one site, or N sites).
- Phase 3 — Hypothesis. State the specific change that should fix the root cause and why, plus how you'll confirm it. Deliverable: one falsifiable hypothesis.
- Phase 4 — Minimal fix. Apply the smallest change that addresses the root cause, add/extend a test that fails before and passes after. Deliverable: root cause + fix + test.
Arguments
$ARGUMENTS is a one-line description of what's broken. Examples:
test suite fails with a database connection-closed errorthe workspace-commit step times out on a fresh worktreePR #519 deprovision workflow leaves orphaned resources behind
If $ARGUMENTS is empty, ask the user for the symptom in one
sentence. Don't start the loop on a vague brief.
How it runs
-
Print the brief. Restate the bug in one line so the user sees you understood it correctly.
-
Spawn the
debuggeragent (mapped throughagents.debugger) with the brief, the working directory (current cwd), and any obvious context (the failing test name, the production trace ID, the relevant ticket). Tell it to start at Phase 1 and not propose fixes until Phase 1's deliverable is in. -
Read the agent's report. It comes back at one of these states:
Phase 1 incomplete — need <data>→ either run the data collection yourself (run the test command from.rig/config.json(test.command, defaultnpm test) scoped to the failing test, fetch logs,git diff) or ask the user. Then re-spawn the debugger with the data added.Phase 4 complete — root cause, fix, test→ done. Report to user with the agent's output. The fix is already in the worktree.Three fixes failed — architectural concern→ STOP. Surface the agent's architectural-concern note to the user. Do not spawn the debugger again with "try one more thing." Suggest re-scoping or pulling in thearchitectagent (mapped throughagents.architect) for a design review.
-
After a Phase 4 fix, hand back to the user. Don't auto-PR. Debugging produces a candidate fix; the user decides whether to ship it.
Anti-patterns this skill exists to prevent
- Coder agent invoked on a bug with "fix this" — coder writes a plausible patch with no root cause. Bug returns later.
- Multiple speculative fixes piled into one commit. Can't tell what worked, can't revert cleanly.
- Architectural problems repeatedly patched at the symptom layer until they metastasize.
Relationship to other skills
- Use
/rig-debugwhen you don't know why something fails. It refuses to guess. - Use an implement-style flow when you know what to build. It assumes the spec is correct.
- Use a verify flow to confirm a known-good change works end-to-end — not for debugging an unknown failure.
/rig-debugmay end with a follow-up ticket if the fix is big enough to warrant one; usually it just ends with a small worktree change the user reviews directly.