python-debugpy

Attach debugpy (DAP) to running Python processes for interactive pdb debugging.

Updated May 16, 2026
One-click install
npx skills add https://github.com/jaredcroxton/hermes-mirror --skill python-debugpy-jaredcroxton
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: python-debugpy
Source: https://github.com/jaredcroxton/hermes-mirror/tree/main/agents/skills/software-development/python-debugpy
Command: npx skills add https://github.com/jaredcroxton/hermes-mirror --skill python-debugpy-jaredcroxton

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Debugging Python failures and misbehaving long-running processes becomes slow and opaque when you cannot inspect live state, step through code, or attach a debugger without restarting.

Core Features & Use Cases

  • Interactive local debugging with pdb: Insert breakpoint() or run a script under python -m pdb to inspect locals, stack frames, and flow control at the exact line that matters.
  • Remote/headless debugging with debugpy (DAP): Attach to a running or long-lived process (e.g., Hermes gateway/TUI gateway) using debugpy.listen(...)+wait_for_client() or python -m debugpy --wait-for-client ....
  • Test and post-mortem workflows: Debug failing pytest tests without misleading hangs (including guidance around xdist), and perform exception post-mortems to inspect crash-site locals.

Quick Start

Tell the AI to show you how to attach debugpy to the Hermes gateway on port 5678 so you can pause at a breakpoint and inspect the live call stack.

Frequently Asked Questions about python-debugpy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I attach a debugger to a running Python process without restarting it?▼

Remote Python debugging uses debugpy to attach to long-lived processes via listen and wait_for_client, letting you inspect live state and pause at breakpoints without a restart.

How do I debug failing pytest tests without the execution hanging?▼

Debugging pytest failures uses interactive pdb breakpoints and specific guidance around xdist to investigate test state directly, avoiding misleading hangs during execution.

What is the best way to inspect crash-site locals after a Python exception?▼

Post-mortem Python debugging uses pdb to inspect crash-site locals and stack frames immediately after an exception, enabling interactive REPL inspection of the failure state.

Can I use a DAP-compatible client for remote Python debugging?▼

Remote Python debugging supports DAP-compatible remote attach patterns through debugpy, allowing you to connect external clients to inspect and step through long-running processes.

Does interactive Python debugging require extensive code changes to inspect stack frames?▼

Interactive Python debugging requires minimal code changes, using breakpoint() or python -m pdb to inspect locals, stack frames, and flow control at the exact line that matters.

Why does debugging long-running Hermes processes become opaque without an attached debugger?▼

Long-running Hermes processes accumulate state and fail without clean restarts, making remote debugpy attachment necessary to inspect live state and step through code at the failure point.