From claude-commands
Reproduces bugs through unit, e2e, local server, and browser layers, then drives a root-cause-classified fix. Useful for debugging regressions and filing structured REPRO issues.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-commands:reproThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Reproduce a bug end-to-end, classify the root cause, file a REPRO issue, then propose (or drive) the minimal fix. Always root-cause-first; never ship a patch on top of an unverified hypothesis.
Reproduce a bug end-to-end, classify the root cause, file a REPRO issue, then propose (or drive) the minimal fix. Always root-cause-first; never ship a patch on top of an unverified hypothesis.
/repro <bug description or PR/issue ref>
/repro --issue <#N> # reproduce from a known REPRO issue
/repro --pr <#N> # reproduce from a known PR (use PR's repro context)
/repro outputs.gh pr list --search "<keyword>" and gh pr view <N> --json files,mergedAt.Climb the minimal repro ladder. Stop climbing the ladder only when the blocker is conclusively reproduced.
| Layer | Tool | When to use |
|---|---|---|
| 1. Unit | pytest <path>::<test> (mocked/isolated) | Cheap; narrows down the unit. Unit-only evidence is not sufficient for a production-fix claim. |
| 2. End-to-end | pytest <e2e test> | Hits real callstack with mocks only at external API boundaries. |
| 3. MCP / local server | real curl / mcp client against a running local dev server | When the bug needs the real LLM call path. |
| 4. Browser (final) | mcp__playwright-mcp headless against a deployed URL | When the bug is UI/integration-specific or only reproduces in a real browser session. |
If a layer passes but the bug seems environmental, jump to the highest layer to verify full stack behavior. Capture exact log lines, screenshots, and HTTP traces.
Mandatory before moving to classification:
If you cannot reproduce, say so explicitly. Do not paper over a non-repro with a "probably X" hypothesis.
Use this exact title pattern:
REPRO: <one-line symptom> — <one-line root-cause hypothesis>
Body must include:
origin/main (git fetch origin && git checkout -B <branch> origin/main).origin/main (RED) and passing on the branch (GREEN).Before proposing a fix, classify the root cause into exactly one of these buckets. Pick the most specific bucket that fits; the bucket drives which fix-pattern to apply.
/repro with the new evidence.## REPRO summary
- Symptom:
- Root cause (bucket 7.x):
- Smoking gun (file:line / log / cdiag id):
- Fix pattern: [prompt | backend | retry+sanitize | UI | config | instrumentation-first]
- Status: [REPRODUCED | NOT_REPRODUCED | UNDER_INSTRUMENTED]
- Next action: [link to issue / PR / next skill]
npx claudepluginhub jleechanorg/claude-commands --plugin claude-commandsSystematically reproduces and fixes bugs using test-driven workflow, root cause analysis, and hypothesis validation. Supports fix-to-PR, unknown root cause debugging, and stuck/reflection modes.
Step-by-step bug fix workflow: diagnose root cause, implement minimal fix, write regression test. Use when fixing bugs or working on bug report issues.
Isolates root cause of bugs through systematic hypothesis-and-test cycles. Active before any fix is written — use when behavior diverges from specification.