Debugging Wizard

by jeffallan1be15d8064f8MIT11K starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated 5 days ago

Parses error messages, traces execution flow through stack traces, correlates log entries to identify failure points, and applies systematic hypothesis-driven methodology to isolate and resolve bugs. Use when investigating errors, analyzing stack traces, finding root causes of unexpected behavior, troubleshooting crashes, or performing log analysis, error investigation, or root cause analysis.

Instructions onlySoftware Development
AI-generated overview

Guides systematic, hypothesis-driven debugging of code errors, stack traces, crashes and logs.

What it does
This skill provides a structured debugging methodology: reproduce the issue, isolate the smallest failing case, form and test one hypothesis at a time, apply a fix, and add regression safeguards. It also supplies reference material on debuggers by language, common bug patterns, strategies such as binary search and git bisect, quick fixes, and systematic root cause analysis. Output is presented as root cause, supporting evidence, the fix, and prevention steps.
When to use it
Use it when investigating errors, analyzing stack traces, troubleshooting crashes, or performing log analysis and root cause analysis. It fits unexpected behavior that needs isolation before a fix, including complex bugs where earlier fixes failed.
Requirements
No scripts are shipped; it is instructions plus reference markdown files. It assumes access to the codebase and its error output, and mentions language debuggers such as pdb, Node.js inspector, delve, and git bisect.

Debugging Wizard

Expert debugger applying systematic methodology to isolate and resolve issues in any codebase.

Core Workflow

  1. Reproduce - Establish consistent reproduction steps
  2. Isolate - Narrow down to smallest failing case
  3. Hypothesize and test - Form testable theories, verify/disprove each one
  4. Fix - Implement and verify solution
  5. Prevent - Add tests/safeguards against regression

Reference Guide

Load detailed guidance based on context:

<!-- Systematic Debugging row adapted from obra/superpowers by Jesse Vincent (@obra), MIT License -->
TopicReferenceLoad When
Debugging Toolsreferences/debugging-tools.mdSetting up debuggers by language
Common Patternsreferences/common-patterns.mdRecognizing bug patterns
Strategiesreferences/strategies.mdBinary search, git bisect, time travel
Quick Fixesreferences/quick-fixes.mdCommon error solutions
Systematic Debuggingreferences/systematic-debugging.mdComplex bugs, multiple failed fixes, root cause analysis

Constraints

MUST DO

  • Reproduce the issue first
  • Gather complete error messages and stack traces
  • Test one hypothesis at a time
  • Document findings for future reference
  • Add regression tests after fixing
  • Remove all debug code before committing

MUST NOT DO

  • Guess without testing
  • Make multiple changes at once
  • Skip reproduction steps
  • Assume you know the cause
  • Debug in production without safeguards
  • Leave console.log/debugger statements in code

Common Debugging Commands

Python (pdb)

bash
python -m pdb script.py          # launch debugger# inside pdb:# b 42          — set breakpoint at line 42# n             — step over# s             — step into# p some_var    — print variable# bt            — print full traceback

JavaScript (Node.js)

bash
node --inspect-brk script.js     # pause at first line, attach Chrome DevTools# In Chrome: open chrome://inspect → click "inspect"# Sources panel: add breakpoints, watch expressions, step through

Git bisect (regression hunting)

bash
git bisect startgit bisect bad                   # current commit is brokengit bisect good v1.2.0           # last known good tag/commit# Git checks out midpoint — test, then:git bisect good   # or: git bisect bad# Repeat until git identifies the first bad commitgit bisect reset

Go (delve)

bash
dlv debug ./cmd/server           # build & attach# (dlv) break main.go:55# (dlv) continue# (dlv) print myVar

Output Templates

When debugging, provide:

  1. Root Cause: What specifically caused the issue
  2. Evidence: Stack trace, logs, or test that proves it
  3. Fix: Code change that resolves it
  4. Prevention: Test or safeguard to prevent recurrence

Maintained by @jeffallan, Principal Consultant at Synergetic Solutions

Documentation

Source and attribution

Source:jeffallan/claude-skillsinskills/debugging-wizardat commit1be15d8

License: MIT

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal