What problem does it solve? Python bugs that tracebacks and print statements cannot explain require interactive inspection of live state, and long-running or subprocess-based programs cannot be debugged with simple local breakpoints. ## Core Features & Use Cases - Local pdb debugging: Insert breakpoint() calls, launch scripts under python -m pdb, run pytest with --pdb, and perform post-mortem inspection of exceptions with full access to locals and the call stack. - Remote debugging with debugpy: Attach to already-running processes via DAP on a TCP port, launch scripts with --wait-for-client, or inject into a live PID for daemons and gateway processes. - Terminal-friendly remote sessions: Use remote-pdb with netcat to get a standard (Pdb) prompt inside long-lived or child processes without IDE integration. - Use Case: A gateway subprocess misbehaves in production-like conditions and cannot be restarted; add a remote_pdb set_trace call in the suspect handler, trigger the code path, connect with nc, and inspect the suspended frame and pending asyncio tasks. ## Quick Start Add a breakpoint() call at the suspect line in my Python file and walk me through inspecting variables when the pdb prompt appears.