debugging-strategies

Master systematic debugging techniques, profiling tools, and root cause analysis to efficiently track down bugs across any codebase or technology stack. Use when investigating bugs, performance issues, or unexpected behavior.

By wshobson · 12,063 installs

npx skills add wshobson/agents --skill debugging-strategies

Source repository · Upstream listing

Debugging Strategies Transform debugging from frustrating guesswork into systematic problem solving with proven strategies, powerful tools, and methodical approaches. When to Use This Skill Tracking down elusive bugs Investigating performance issues Understanding unfamiliar codebases Debugging production issues Analyzing crash dumps and stack traces Profiling application performance Investigating memory leaks Debugging distributed systems Core Principles 1. The Scientific Method 1. Observe : What's the actual behavior? 2. Hypothesize : What could be causing it? 3. Experiment : Test your hypothesis 4. Analyze : Did it prove/disprove your theory? 5. Repeat : Until you find the root cause 2. Debugging Mindset Don't Assume: "It can't be X" Yes it can "I didn't change Y" Check anyway "It works on my machine" Find out why Do: Reproduce consistently Isolate the problem Keep detailed notes Question everything Take breaks when stuck 3. Rubber Duck Debugging Explain your code and problem out loud (to a rubber duck, colleague, or yourself). Often reveals the issue. Systematic Debugging Process Phase 1: Reproduce Phase 2: Gather Information Phase 3: Form Hypothesis Phase 4: Test & Verify Debugging Tools JavaScript/TypeScript Debugging VS Code Debugger Configuration: Python Debugging Go Debugging Advanced Debugging Techniques Technique 1: Binary Search Debugging Technique 2: Differential Debugging Compare working vs broken: Technique 3: Trace Debugging Technique 4: Memory Leak Detection Debugging Patterns by Issue Type Pattern 1: Intermittent Bugs Pattern 2: Performance Issues Pattern 3: Production Bugs Best Practices 1. Reproduce First : Can't fix what you can't reproduce 2. Isolate the Problem : Remove complexity until minimal case 3. Read Error Messages : They're usually helpful 4. Check Recent Changes : Most bugs are recent 5. Use Version Control : Git bisect, blame, history 6. Take Breaks : Fresh eyes see better 7. Document Findings : Help future you 8. Fix Root Cause : Not just symptoms Common Debugging Mistakes Making Multiple Changes : Change one thing at a time Not Reading Error Messages : Read the full stack trace Assuming It's Complex : Often it's simple Debug Logging in Prod : Remove before shipping Not Using Debugger : console.log isn't always best Giving Up Too Soon : Persistence pays off Not Testing the Fix : Verify it actually works Quick Debugging Checklist