What problem does it solve? Diagnosing why Python code fails is hard when tracebacks alone don't reveal wrong values, and long-running processes like gateways or daemons can't simply be restarted to add print statements. This Skill provides structured recipes for interactive debugging with pdb, post-mortem exception inspection, and remote debugging of running processes via debugpy or remote-pdb. ## Core Features & Use Cases - Local pdb debugging: Insert breakpoint() for an interactive REPL, launch scripts under python -m pdb without source edits, or debug pytest failures with --pdb (with xdist disabled). - Post-mortem inspection: Catch exceptions and inspect locals at the crash frame using pdb.post_mortem, excepthooks, or python -m pdb -c continue. - Remote debugging: Attach to already-running processes with debugpy's DAP protocol, PID injection, or the simpler remote-pdb over netcat for terminal-based workflows. - Use Case: A gateway subprocess misbehaves in production-like conditions. Add remote_pdb.set_trace() in the suspect handler, trigger the failing request, connect with nc 127.0.0.1 4444, and inspect the live call stack and variables. ## Quick Start Add a breakpoint() call at the suspect line in my Python file and walk me through inspecting the variables when execution pauses there.