Skip to content
Skills Library
Programming · Analysis

systematic-debugging

/systematic-debugging

Four-phase debugging framework for any technical issue. Use when encountering bugs, errors, or unexpected behavior. Prevents random fix attempts.

Repository
spellbook ↗
Licence
MIT
Last repository change
26.10.2026

Assessment and security

100/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
1
Scripts
0
HTML comments
0
URLs in SKILL.md
1
Deprecation

No signals detected. Repository changed on 26.10.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What it does and when to use it

Four-phase debugging framework for any technical issue. Use when encountering bugs, errors, or unexpected behavior. Prevents random fix attempts.

Original author description

Four-phase debugging framework for any technical issue. Use when encountering bugs, errors, or unexpected behavior. Prevents random fix attempts.

How it works

  1. Core Principle
  2. The Four Phases
  3. The 3-Fix Rule
  4. Critical Red Flags
  5. Debugging Checklist
  6. Example Workflow
Original SKILL.md headings · 162 lines, 584 words
SKILL.md preview
---
name: systematic-debugging
description: Four-phase debugging framework for any technical issue. Use when encountering bugs, errors, or unexpected behavior. Prevents random fix attempts.
---
# Systematic Debugging

> From [obra/superpowers](https://github.com/obra/superpowers)

## Core Principle

**NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST**

Random fixes create new bugs. Understanding must precede solutions.

## The Four Phases

### Phase 1: Root Cause Investigation

Before ANY fix attempt:

1. **Read error messages carefully**
   - Full stack traces
   - Error codes and descriptions
   - Timestamps and context

2. **Reproduce consistently**
   - Document exact steps
   - Identify triggers
   - Note environmental factors

3. **Check recent changes**
   - Recent commits
   - Dependency updates
   - Configuration changes

4. **Gather diagnostic evidence**
   - Add logging at component boundaries
   - Check input/output at each step
   - Trace data flow backward to source

### Phase 2: Pattern Analysis

1. **Find similar working code**
   - Search codebase for related functionality
   - Look for existing patterns

2. **Read reference implementations completely**
   - Don't skim
   - Understand the full context

3. **Compare working vs broken**
   - What's different?
   - What assumptions changed?

4. **Understand dependencies**
   - What does this code rely on?
   - What relies on this code?

### Phase 3: Hypothesis and Testing

1. **Form a SINGLE, SPECIFIC hypothesis**
   - "The error occurs because X"
   - Not "maybe it's A or B or C"

2. **Test with minimal changes**
   - One variable at a time
   - Don't combine fixes

3. **Accept results**
   - If hypothesis is wrong, form new one
   - Don't force-fit evidence

4. **Ask for help when stuck**
   - After genuine investigation
   - With evidence gathered

### Phase 4: Implementation

1. **Create a failing test case FIRST**
   - Reproduces the bug
   - Will pass when fixed

2. **Implement SINGLE fix**
   - Address root cause only
   - Don't fix "nearby" issues

3. **Verify the fix**
   - Test case passes
   - No regressions
   - Issue is resolved

## The 3-Fix Rule

**If ≥3 fixes fail: STOP and question the architecture**

Three consecutive failed fixes signal:
- Architectural problem, not implementation bug
- Wrong mental model of the system
- Need to step back and reassess

Do NOT attempt more fixes. Reassess the approach.

## Critical Red Flags

STOP and restart investigation if you:

- Propose fixes before understanding the problem
- Add multiple changes simultaneously
- Skip investigation for "quick fixes"
- Make 3+ failed fix attempts
- Say "let's just try this"

## Debugging Checklist

```markdown
## Investigation
- [ ] Read full error message/stack trace
- [ ] Reproduced issue consistently
- [ ] Checked recent changes
- [ ] Added diagnostic logging
- [ ] Traced data flow

## Analysis
- [ ] Found similar working code
- [ ] Compared working vs broken
- [ ] Understood all dependencies

## Hypothesis
- [ ] Formed single specific hypothesis
- [ ] Tested with minimal change
- [ ] Accepted results honestly

## Fix
- [ ] Created failing test case
- [ ] Implemented single fix
- [ ] Verified fix works
- [ ] No regressions
```

## Example Workflow

```
Issue: User login fails silently

Phase 1 - Investigation:
- Error: "null reference at AuthService.validate()"
- Reproduced: happens with specific user emails
- Recent change: added email normalization

Phase 2 - Analysis:
- Working logins use lowercase emails
- Failing logins have mixed case
- Normalization strips @ symbol incorrectly

Phase 3 - Hypothesis:
- "Email normalization regex is wrong"
- Test: log email before/after normalization
- Result: "Test@Example.com" → "testexample.com"
- Confirmed!

Phase 4 - Fix:
- Write test: normalize("Test@Example.com") == "test@example.com"
- Fix regex to preserve @
- Verify: test passes, logins work
```

Versions

RepositoryScoreLicence
This page · majiayu000/spellbook100MIT
magnus919/agent-skills100MIT
FrancoStino/opencode-skills-collection100MIT
foryourhealth111-pixel/Vibe-Skills100Apache-2.0
GanyuanRan/Aegis100MIT
rootcastleco/rei-skills100MIT
jkaloger/lazyspec100MIT
innei/ryugi100MIT
yusixian/anjian100MIT

Identical content appears in 1 other GitHub folders. We show one copy with the highest score.

Database snapshot: 13.11.2026 · package version 8cefbeaf0c7a (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100debugging
    Systematic 4-phase debugging with root cause investigation. Use when fixing bugs to prevent random fixes.
  • 95community-systematic-debugging
    Use when encountering any bug, test failure, or unexpected behavior. 4-phase root cause investigation — NO fixes without understanding the problem first.
  • 100systematic-debugging-codex
    Systematic 4-phase debugging with Codex-backed root cause investigation. Use only when the user explicitly asks for the Codex-backed debugging workflow.
  • 100sr-systematic-debugging
    Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
  • 95argentos-systematic-debugging
    Use when encountering any bug, test failure, or unexpected behavior. 4-phase root cause investigation — NO fixes without understanding the problem first.
  • 100debug
    Systematic debugging workflow: reproduce first, write failing test, then fix. Use when encountering bugs, unexplained errors, or unexpected behavior.

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.