debug · pproenca — Claude Code skill: a debugging method for your agent
The debug skill gives your agent a fixed order for bug work: reproduce, test hypotheses, find the root cause. Useful when a stack trace or a failing test lands on you.
npx skills add pproenca/dot-skills --skill debug -a claude-codeWhat debug does
The debug skill is a rule set for debugging: 54 rules in 10 categories, sorted by impact. The top two categories are marked CRITICAL, problem definition and hypothesis-driven search. Then come observation techniques, root cause analysis, tool mastery, triage, common bug patterns, fix verification, anti-patterns and prevention.
Each rule has a short name and a prefix: prob-reproduce-before-debug, hypo-binary-search, rca-five-whys, anti-shotgun-debugging. They live as separate files under references/, with the full compiled version in AGENTS.md. The method draws on Andreas Zeller's "Why Programs Fail" and academic debugging curricula.
Worth installing if your agent patches bugs by guesswork, which is exactly what anti-shotgun-debugging targets. It runs on Claude, Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode, and lands in that platform's skills directory, for example ~/.claude/skills/debug/SKILL.md.
What it helps with
- reproduce a bug before touching the code
- cut a failure down to a minimal case
- separate symptoms from causes
- find the last known good state
- verify a fix without shipping a regression
Example prompts for the agent
- walk through this stack trace using the debug method
- this test only fails in CI — find the root cause
- build a minimal reproduction for this bug
How to install debug
1Skills CLI (Vercel)
npx skills add pproenca/dot-skills --skill debug -a claude-code2Manually: put the files in place
~/.claude/skills/debug/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/debug/
1Skills CLI (Vercel)
npx skills add pproenca/dot-skills --skill debug -a codex2Manually: put the files in place
.agents/skills/debug/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add pproenca/dot-skills --skill debug -a cursor2Manually: put the files in place
.cursor/skills/debug/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install pproenca/dot-skills debug2Manually: put the files in place
.github/skills/debug/SKILL.md1Skills CLI (Vercel)
npx skills add pproenca/dot-skills --skill debug -a gemini-cli2Platform CLI
gemini skills install https://github.com/pproenca/dot-skills --path skills/.curated/debugManually: put the files in place
.devin/skills/debug/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add pproenca/dot-skills --skill debug -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about debug
How do I install debug in Claude?
Run npx skills add pproenca/dot-skills --skill debug -a claude-code. The skill ends up at ~/.claude/skills/debug/SKILL.md.
What does the debug skill do?
It gives the agent a debugging method: reproduce the bug, test one hypothesis at a time, trace the root cause, verify the fix. The rules sit in 10 categories ordered by priority.
Which platforms does debug support?
Claude, Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode. Each has its own install path, for instance .cursor/skills/debug/SKILL.md on Cursor.
Source text
SKILL.md · MIT
--- name: debug description: Comprehensive debugging methodology for finding and fixing bugs (formerly debugging). This skill should be used when debugging code, investigating errors, troubleshooting issues, performing root cause analysis, or responding to incidents. Covers systematic reproduction, hypothesis-driven investigation, and root cause analysis techniques. Use when encountering exceptions, stack traces, crashes, segfaults, undefined behavior, or when bug reports need investigation. --- # dot-skills Debugging Best Practices Comprehensive debugging methodology guide for software engineers, containing 54 rules across 10 categories prioritized by impact. Based on research from Andreas Zeller's "Why Programs Fail" and academic debugging curricula. ## When to Apply Reference these guidelines when: - Investigating a bug or unexpected behavior - Debugging code during development - Code produces wrong results or crashes - Performance issues need root cause analysis - Triaging incoming bug reports and prioritizing fixes - Conducting root cause analysis for incidents - Reviewing debugging approaches or code for common bug patterns ## Rule Categories by Priority | Priority | Category | Impact | Prefix | |----------|----------|--------|--------| | 1 | Problem Definition | CRITICAL | `prob-` | | 2 | Hypothesis-Driven Search | CRITICAL | `hypo-` | | 3 | Observation Techniques | HIGH | `obs-` | | 4 | Root Cause Analysis | HIGH | `rca-` | | 5 | Tool Mastery | MEDIUM-HIGH | `tool-` | | 6 | Bug Triage and Classification | MEDIUM | `triage-` | | 7 | Common Bug Patterns | MEDIUM | `pattern-` | | 8 | Fix Verification | MEDIUM | `verify-` | | 9 | Anti-Patterns | MEDIUM | `anti-` | | 10 | Prevention & Learning | LOW-MEDIUM | `prev-` | ## Quick Reference ### 1. Problem Definition (CRITICAL) - `prob-reproduce-before-debug` - Reproduce the bug before investigating - `prob-minimal-reproduction` - Create minimal reproduction cases - `prob-document-symptoms` - Document symptoms precisely - `prob-separate-symptoms-causes` - Separate symptoms from causes - `prob-state-expected-actual` - State expected vs actual behavior - `prob-recent-changes` - Check recent changes first ### 2. Hypothesis-Driven Search (CRITICAL) - `hypo-scientific-method` - Apply the scientific method - `hypo-binary-search` - Use binary search to localize bugs - `hypo-one-change-at-time` - Test one hypothesis at a time - `hypo-where-not-what` - Find WHERE before asking WHAT - `hypo-rule-out-obvious` - Rule out obvious causes first - `hypo-rubber-duck` - Explain the problem aloud ### 3. Observation Techniques (HIGH) - `obs-strategic-logging` - Use strategic logging - `obs-log-inputs-outputs` - Log function inputs and outputs - `obs-breakpoint-strategy` - Use breakpoints strategically - `obs-stack-trace-reading` - Read stack traces bottom to top - `obs-watch-expressions` - Use watch expressions for state - `obs-trace-data-flow` - Trace data flow through system ### 4. Root Cause Analysis (HIGH) - `rca-five-whys` - Use the 5 Whys technique - `rca-fault-propagation` - Trace fault propagation chains - `rca-last-known-good` - Find the last known good state - `rca-question-assumptions` - Question your assumptions - `rca-examine-boundaries` - Examine system boundaries ### 5. Tool Mastery (MEDIUM-HIGH) - `tool-conditional-breakpoints` - Use conditional breakpoints - `tool-logpoints` - Use logpoints instead of modifying code - `tool-step-commands` - Master step over/into/out - `tool-call-stack-navigation` - Navigate the call stack - `tool-memory-inspection` - Inspect memory and object state - `tool-exception-breakpoints` - Use exception breakpoints ### 6. Bug Triage and Classification (MEDIUM) - `triage-severity-vs-priority` - Separate severity from priority - `triage-user-impact-assessment` - Assess user impact before prioritizing - `triage-reproducibility-matters` - Factor reproducibility into triage - `triage-quick-wins-first` - Identify and ship quick wins first - `triage-duplicate-detection` - Detect and link duplicate bug reports ### 7. Common Bug Patterns (MEDIUM) - `pattern-null-pointer` - Recognize null pointer patterns - `pattern-off-by-one` - Spot off-by-one errors - `pattern-race-condition` - Identify race condition symptoms - `pattern-memory-leak` - Detect memory leak patterns - `pattern-type-coercion` - Watch for type coercion bugs - `pattern-async-await-errors` - Catch async/await error handling mistakes - `pattern-timezone-issues` - Recognize timezone and date bugs ### 8. Fix Verification (MEDIUM) - `verify-reproduce-fix` - Verify with original reproduction - `verify-regression-check` - Check for regressions - `verify-understand-why-fix-works` - Understand why fix works - `verify-add-test` - Add test to prevent recurrence ### 9. Anti-Patterns (MEDIUM) - `anti-shotgun-debugging` - Avoid shotgun debugging - `anti-quick-patch` - Avoid quick patches without understanding - `anti-tunnel-vision` - Avoid tunnel vision on initial hypothesis - `anti-debug-fatigue` - Recognize debugging fatigue - `anti-blame-tool` - Don't blame the tool too quickly ### 10. Prevention & Learning (LOW-MEDIUM) - `prev-document-solution` - Document bug solutions - `prev-postmortem` - Conduct blameless postmortems - `prev-defensive-coding` - Add defensive code at boundaries - `prev-improve-error-messages` - Improve error messages ## How to Use Read individual reference files for detailed explanations and code examples: - [Section definitions](references/_sections.md) - Category structure and impact levels - [Rule template](assets/templates/_template.md) - Template for adding new rules - Example rules: [prob-reproduce-before-debug](references/prob-reproduce-before-debug.md), [hypo-binary-search](references/hypo-binary-search.md) ## Full Compiled Document For the complete guide with all rules expanded: [AGENTS.md](AGENTS.md)
© pproenca · MIT · pproenca/dot-skills
Similar skills
All skills for Agent setup: memory, context, orchestration →debug by other authors comes first.