What problem does it solve?
This Skill eliminates the frustration of debugging Python code across diverse scenarios—from simple local script issues to hard-to-reproduce bugs in long-running services, subprocesses, and async handlers—where print statements and basic logging fail to provide enough context to identify root causes.
Core Features & Use Cases
- Local Interactive Debugging: Use built-in breakpoint and pdb for quick, no-setup debugging of local scripts, functions, and pytest tests, with full access to local variables and call stacks.
- Remote & Headless Debugging: Use debugpy to attach to running long-lived processes (such as Hermes gateways, daemons, and subprocesses) without restarting them, or launch processes under a debugger from the start.
- Post-Mortem & Edge Case Debugging: Inspect program state immediately after unhandled exceptions, and debug multithreaded, asyncio, and multiprocessing code with tailored workarounds for common pitfalls.
- Use Case Example: Debug an intermittently crashing Hermes gateway by attaching debugpy to the running process to inspect its state at the crash site, without disrupting active users or restarting the service.
Quick Start
Use the python-debugpy skill to debug a failing Python test by dropping into an interactive pdb REPL at the point of failure to inspect local variables and step through code to identify the root cause.