fixing-bugs-systematically
A systematic debugging framework for isolating, reproducing, and fixing software defects in existing features.
Install
mkdir -p .claude/skills/fixing-bugs-systematically && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/4982" && unzip -o skill.zip -d .claude/skills/fixing-bugs-systematically && rm skill.zipInstalls to .claude/skills/fixing-bugs-systematically
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Diagnose and fix bugs through systematic investigation, root cause analysis, and targeted validation. Use when something is broken, errors occur, performance degrades, or unexpected behavior manifests.Key capabilities
- →Trace error flows
- →Isolate root causes
- →Validate fixes against acceptance criteria
- →Perform parallel subsystem investigation
- →Update feature documentation
How it works
It follows a structured protocol of context gathering, parallel investigation using specialized agents, root cause hypothesis testing, and validation against acceptance criteria.
Inputs & outputs
When to use fixing-bugs-systematically
- →Trace intermittent runtime errors
- →Reproduce and fix performance regressions
- →Isolate root causes in complex subsystems
- →Validate bug fixes against acceptance criteria
About this skill
Fixing Bugs Systematically
Structured protocol for isolating root causes and implementing focused fixes in existing features.
When to Use
- Something is broken and needs diagnosis and repair
- Error messages or unexpected behavior occurs
- Performance degradation in existing functionality
- Intermittent or hard-to-reproduce issues
Core Steps
1. Context & Reproduction
Read relevant documentation:
docs/feature-spec/F-##-*.mdfor affected featuredocs/user-stories/US-###-*.mdfor expected behavior and acceptance criteriadocs/api-contracts.yamlif API-relateddocs/system-design.mdfor architecture context
Document the bug:
- Expected behavior (cite story AC or spec)
- Actual behavior (what's broken)
- Reproduction steps
- Feature ID (F-##) and Story ID (US-###) if known
2. Investigation
Simple bugs (obvious entry point)
Use direct investigation:
- Grep to locate error messages or related code
- Read suspected files to examine implementation
- Trace function calls and data transformations
- Check related files for connected logic
Complex bugs (multiple subsystems or unclear origin)
Delegate to async agents in parallel:
Spawn senior-engineer agents to:
- Trace error flow through specific subsystem
- Analyze related failure patterns
- Investigate runtime conditions
Spawn Explore agents to:
- Map data flow across multiple files
- Find all error handling for specific operation
- Locate configuration and integration points
Example: For authentication bug, spawn:
- Agent 1: "Trace auth flow from login endpoint to session creation"
- Agent 2: "Find all error handling and validation in auth module"
- Agent 3: "Locate session storage config and related code"
Wait for results using ./agent-responses/await {agent_id}
3. Root Cause Analysis
Generate hypotheses:
- List 3-8 potential root causes from investigation
- Rank by probability (evidence from code) and impact
- Select most likely cause(s)
Decision point:
- Fix immediately if root cause is obvious and confirmed
- Add validation if multiple plausible causes or runtime-dependent behavior
4. Validation (if needed)
Add minimal debugging:
- Logging at decision points
- Data inspection at boundaries
- Input/output logging at integration points
Test to confirm root cause before proceeding to fix.
5. Implementation
Fix the confirmed root cause:
- Keep changes minimal and focused
- Maintain API stability unless approved
- Follow existing patterns in codebase
Update documentation if needed:
- Add note in feature spec or changelog
- Update
docs/api-contracts.yamlif contract changed (requires approval) - For slash commands:
/manage-project/update/update-featureto correct spec/manage-project/update/update-storyif ACs were ambiguous/manage-project/update/update-apiif API changed (with approval)
6. Validation & Testing
Verify fix against acceptance criteria:
- Test all ACs from affected user stories
- Check 1-2 key edge cases and error states
- Run contract tests if API changed
- Verify events in
docs/data-plan.mdstill fire correctly
7. Cleanup
- Remove all debugging and logging code
- Verify no temporary files remain
Investigation Strategy
For direct investigation:
- Use grep, read_file to understand subsystem
- Trace flows manually through related files
- Focus on specific area where bug manifests
When to validate before fixing:
- Multiple plausible root causes exist
- Runtime-dependent behavior
- Intermittent or hard-to-reproduce issues
For async investigation:
- Each agent investigates independent subsystem
- Run in parallel for speed
- Maximum 6 agents (diminishing returns)
Artifacts
Inputs:
docs/feature-spec/F-##-*.md— Feature specsdocs/user-stories/US-###-*.md— Expected behavior and ACsdocs/api-contracts.yaml— API specsdocs/system-design.md— Architecture context
Outputs:
- Investigation findings (inline notes or agent reports)
- Updated feature spec with bug resolution notes
- Fixed code with accompanying tests
Quick Reference
| Scenario | Approach |
|---|---|
| Single subsystem, obvious entry | Direct investigation → immediate fix |
| Multiple subsystems, unclear origin | Spawn 2-4 agents in parallel → synthesize findings → fix |
| Runtime-dependent or intermittent | Add targeted logging → reproduce → analyze logs → fix |
| Multiple independent fixes needed | Pass investigation results to fix agents via artifact files |
When not to use it
- →Fixing bugs without reproduction steps
- →Ignoring existing codebase patterns
Prerequisites
Limitations
- →Maximum of 6 parallel agents recommended
How it compares
It uses a systematic, agent-assisted approach to isolate complex bugs rather than relying on trial-and-error debugging.
Compared to similar skills
fixing-bugs-systematically side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| fixing-bugs-systematically (this skill) | 1 | 8mo | No flags | Intermediate |
| python-testing-patterns | 77 | 2mo | Review | Intermediate |
| fix-bug | 11 | 7mo | Review | Intermediate |
| test-fixing | 1 | 9mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by CaptainCrouton89
View all by CaptainCrouton89 →You might also like
python-testing-patterns
wshobson
Implement comprehensive testing strategies with pytest, fixtures, mocking, and test-driven development. Use when writing Python tests, setting up test suites, or implementing testing best practices.
fix-bug
tddworks
Guide for fixing bugs in ClaudeBar following Chicago School TDD and rich domain design. Use this skill when: (1) User reports a bug or unexpected behavior (2) Fixing a defect in existing functionality (3) User asks "fix this bug" or "this doesn't work correctly" (4) Correcting behavior that violates the user's mental model
test-fixing
mhattingpete
Run tests and systematically fix all failing tests using smart error grouping. Use when user asks to fix failing tests, mentions test failures, runs test suite and failures occur, or requests to make tests pass.
moai-workflow-testing
modu-ai
Comprehensive development workflow specialist combining DDD testing, debugging, performance optimization, code review, PR review, and quality assurance into unified development workflows
investigate
MadAppGang
Unified entry point for code investigation. Auto-routes to specialized detective based on query keywords. Use when investigation type is unclear or for general exploration.
review
MatrixAges
Review uncommitted code changes to find unreasonable design, unfinished requirements, potential bugs, missed reuse opportunities, and optimization opportunities. Use when the user asks for a review of pending, uncommitted, or unpublished code changes and expects both findings and concrete improvemen