parallel-debugging — Claude Code skill: debugging and setup
This skill investigates complex bugs by testing competing hypotheses in parallel. Use it when an issue has several plausible causes or crosses multiple components.
/plugin marketplace add wshobson/agents
/plugin install agent-teams@claude-code-workflowsWhat parallel-debugging does
The skill groups possible causes into six areas: logic, data, state, integration, resources, and environment. It calls for evidence tied to file and line references, then compares hypotheses by confidence and causal strength. Findings are classified as confirmed, falsified, plausible, or inconclusive.
Once a cause is selected, the skill gives checks for validating the fix, including the original reproduction case, related edge cases, and tests. It fits bugs that resisted initial debugging or span several components. For a straightforward issue with an obvious cause, this process is unnecessary.
What it helps with
- investigate a bug with several plausible causes
- trace an issue across multiple modules
- weigh evidence for and against each hypothesis
- check a fix against the original reproduction case
Example prompts for the agent
- Investigate this bug in parallel. List competing causes and gather evidence for each.
- Find the root cause of this failure across these modules, citing the relevant files and lines.
- Check whether this fix addresses the original bug and covers related edge cases.
How to install parallel-debugging
1Plugin marketplace
/plugin marketplace add wshobson/agents/plugin install agent-teams@claude-code-workflowsThis installs the whole agent-teams plugin with all its skills
2Skills CLI (Vercel)
npx skills add wshobson/agents --skill parallel-debugging -a claude-code3Manually: put the files in place
~/.claude/skills/parallel-debugging/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/parallel-debugging/
1Skills CLI (Vercel)
npx skills add wshobson/agents --skill parallel-debugging -a codex2Manually: put the files in place
.agents/skills/parallel-debugging/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add wshobson/agents --skill parallel-debugging -a cursor2Manually: put the files in place
.cursor/skills/parallel-debugging/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install wshobson/agents parallel-debugging2Manually: put the files in place
.github/skills/parallel-debugging/SKILL.mdPlatform CLI
gemini skills install https://github.com/wshobson/agents --path plugins/agent-teams/skills/parallel-debuggingManually: put the files in place
.devin/skills/parallel-debugging/SKILL.mdThe legacy .windsurf/skills/ path still works
Claude.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 parallel-debugging
How do I install parallel-debugging in Claude Code?
Run npx skills add wshobson/agents --skill parallel-debugging -a claude-code. You can also use the marketplace commands /plugin marketplace add wshobson/agents and /plugin install agent-teams@claude-code-workflows.
What does parallel-debugging do?
It helps investigate multiple possible causes of a bug, collect evidence with file and line references, and identify the best-supported root cause.
How does parallel-debugging validate a fix?
It calls for checking the original reproduction case, related edge cases, and relevant tests.
Source text
SKILL.md · MIT
--- name: parallel-debugging description: Debug complex issues using competing hypotheses with parallel investigation, evidence collection, and root cause arbitration. Use this skill when debugging bugs with multiple potential causes, performing root cause analysis, or organizing parallel investigation workflows. version: 1.0.2 --- # Parallel Debugging Framework for debugging complex issues using the Analysis of Competing Hypotheses (ACH) methodology with parallel agent investigation. ## When to Use This Skill - Bug has multiple plausible root causes - Initial debugging attempts haven't identified the issue - Issue spans multiple modules or components - Need systematic root cause analysis with evidence - Want to avoid confirmation bias in debugging ## Hypothesis Generation Framework Generate hypotheses across 6 failure mode categories: ### 1. Logic Error - Incorrect conditional logic (wrong operator, missing case) - Off-by-one errors in loops or array access - Missing edge case handling - Incorrect algorithm implementation ### 2. Data Issue - Invalid or unexpected input data - Type mismatch or coercion error - Null/undefined/None where value expected - Encoding or serialization problem - Data truncation or overflow ### 3. State Problem - Race condition between concurrent operations - Stale cache returning outdated data - Incorrect initialization or default values - Unintended mutation of shared state - State machine transition error ### 4. Integration Failure - API contract violation (request/response mismatch) - Version incompatibility between components - Configuration mismatch between environments - Missing or incorrect environment variables - Network timeout or connection failure ### 5. Resource Issue - Memory leak causing gradual degradation - Connection pool exhaustion - File descriptor or handle leak - Disk space or quota exceeded - CPU saturation from inefficient processing ### 6. Environment - Missing runtime dependency - Wrong library or framework version - Platform-specific behavior difference - Permission or access control issue - Timezone or locale-related behavior ## Evidence Collection Standards ### What Constitutes Evidence | Evidence Type | Strength | Example | | ----------------- | -------- | --------------------------------------------------------------- | | **Direct** | Strong | Code at `file.ts:42` shows `if (x > 0)` should be `if (x >= 0)` | | **Correlational** | Medium | Error rate increased after commit `abc123` | | **Testimonial** | Weak | "It works on my machine" | | **Absence** | Variable | No null check found in the code path | ### Citation Format Always cite evidence with file:line references: ``` **Evidence**: The validation function at `src/validators/user.ts:87` does not check for empty strings, only null/undefined. This allows empty email addresses to pass validation. ``` ### Confidence Levels | Level | Criteria | | ------------------- | ----------------------------------------------------------------------------------- | | **High (>80%)** | Multiple direct evidence pieces, clear causal chain, no contradicting evidence | | **Medium (50-80%)** | Some direct evidence, plausible causal chain, minor ambiguities | | **Low (<50%)** | Mostly correlational evidence, incomplete causal chain, some contradicting evidence | ## Result Arbitration Protocol After all investigators report: ### Step 1: Categorize Results - **Confirmed**: High confidence, strong evidence, clear causal chain - **Plausible**: Medium confidence, some evidence, reasonable causal chain - **Falsified**: Evidence contradicts the hypothesis - **Inconclusive**: Insufficient evidence to confirm or falsify ### Step 2: Compare Confirmed Hypotheses If multiple hypotheses are confirmed, rank by: 1. Confidence level 2. Number of supporting evidence pieces 3. Strength of causal chain 4. Absence of contradicting evidence ### Step 3: Determine Root Cause - If one hypothesis clearly dominates: declare as root cause - If multiple hypotheses are equally likely: may be compound issue (multiple contributing causes) - If no hypotheses confirmed: generate new hypotheses based on evidence gathered ### Step 4: Validate Fix Before declaring the bug fixed: - [ ] Fix addresses the identified root cause - [ ] Fix doesn't introduce new issues - [ ] Original reproduction case no longer fails - [ ] Related edge cases are covered - [ ] Relevant tests are added or updated
© Seth Hobson · MIT · wshobson/agents