What problem does it solve?
Debugging can be a frustrating and time-consuming process, often leading to inefficient trial-and-error. This skill provides a structured, systematic approach to diagnose and resolve bugs, errors, and unexpected behavior in code and systems, saving developers valuable time and reducing stress.
Core Features & Use Cases
- Structured Debugging Methodology: Guides users through understanding the problem, gathering information, forming hypotheses, systematic testing, and verification to pinpoint root causes efficiently.
- Common Debugging Techniques: Offers practical methods like print/log debugging, using interactive debuggers (pdb, Node.js debugger, GDB), binary search, and rubber duck debugging to isolate issues.
- System & Performance Troubleshooting: Provides commands and strategies for shell/system debugging (checking service status, analyzing logs, network diagnostics) and performance debugging (profiling, memory analysis).
- Prevention Strategies: Includes advice on writing tests, using type checking, linters, code reviews, and explicit error handling to prevent future bugs and improve code quality.
- Use Case: Diagnose an intermittent server crash by systematically checking logs, tracing system calls, and applying a binary search method to isolate the problematic code section.
Quick Start
Use the debug-helper skill to troubleshoot why my Python script is getting a 'ModuleNotFoundError' for 'requests'.