Releases: JoaquinCampo/agent-debugger
Releases · JoaquinCampo/agent-debugger
v0.2.0 — Debug running servers without restart
Debug running servers — no restart, no code changes
Note: This release supports Python only. Support for JavaScript, Go, Rust, and other languages is planned for future releases.
The biggest limitation of v0.1 was that you had to launch your program through the debugger. That doesn't work for servers — nobody wants to restart their running uvicorn/flask/django process just to debug it.
v0.2.0 fixes this. Just point at a running process and go:
agent-debugger attach --pid <PID> --break app/routes.py:42
agent-debugger continue # trigger a request, hit the breakpoint
agent-debugger vars # inspect stateThat's it. The server keeps running. No restart, no code changes, no debugpy setup required.
What happens under the hood
- Auto-detects the Python runtime and venv from the running process
- Auto-installs debugpy if it's not already in the environment (via pip, using the process's own
sys.executable) - Injects
debugpy.listen()into the live process using the native debugger (lldb on macOS, gdb on Linux) — calling Python C API functions directly - Connects the DAP client to the spawned adapter
- Sets breakpoints and hands control back to you
Also in this release
- Linux support — gdb-based injection alongside lldb (macOS)
- Port-based attach —
agent-debugger attach [host:]portfor processes already running withdebugpy.listen() - macOS ARM64 fix — debugpy's built-in
--pidinject ships only x86_64 dylibs; the new lldb/gdb approach works natively on Apple Silicon
Requirements
- Python processes only (other languages coming soon)
- macOS: Xcode Command Line Tools (for lldb) — already installed if you use git
- Linux: gdb (
apt install gdb/yum install gdb) - Target process must have pip available (for auto-install of debugpy)
v0.1.1
- Add npx fallback to skill for zero-install usage
- Add MIT license
v0.1.0
Initial release — CLI debugger for AI agents via DAP