python-debugpy

Debug Python applications interactively and remotely via pdb and debugpy DAP.

1|Updated May 16, 2026
One-click install
npx skills add https://github.com/devMoez/titan --skill python-debugpy-devmoez
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: python-debugpy
Source: https://github.com/devMoez/titan/tree/main/skills/software-development/python-debugpy
Command: npx skills add https://github.com/devMoez/titan --skill python-debugpy-devmoez

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you diagnose failing Python code by letting you pause execution, inspect state, and step through the exact moment things go wrong.

Core Features & Use Cases

  • Interactive breakpoints with pdb: Use breakpoint() for the simplest local REPL at the line where the bug is suspected, including stepping, inspecting locals, and conditional breakpoints.
  • Remote/headless debugging with debugpy (DAP): Attach from an IDE or a lightweight client to long-lived processes such as gateways or daemons without restarting them.
  • Targeted debugging workflows: Debug pytest failures, run scripts under pdb without source edits, and perform post-mortem inspection of exceptions to see locals at the crash site.

Example use case: your Titan-related test fails but the traceback doesn’t explain why a value is wrong, so you drop into pdb at the failing test frame to inspect locals and control flow, then switch to debugpy when the issue is in a long-running gateway process that can’t be easily restarted.

Quick Start

Use breakpoint() at the suspect line, run the code, and interact at the (Pdb) prompt to inspect locals and step through the failing path.

Frequently Asked Questions about python-debugpy

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

FAQPage Schema
How do I debug a Python script with pdb without modifying the source code?

You can debug Python scripts using pdb by running the code under the debugger to interactively step through execution, inspect locals, and set conditional breakpoints without editing the source files.

How do I attach a debugger to a long-running Python process?

You can attach a debugger to long-running Python processes using debugpy's DAP protocol over a specified host and port, enabling remote inspection of daemons or gateways without restarting them.

How do I inspect local variables at the exact line where a Python exception crashes?

Post-mortem exception inspection in Python lets you drop into the crash site frame to see locals and control flow, which is essential when a traceback does not explain why a value is wrong.

Can I debug pytest test failures interactively in Python?

Yes, you can debug pytest failures by dropping into pdb at the failing test frame to inspect locals and control flow, or by using breakpoint() to pause execution at the suspected line.

What is the difference between using breakpoint() and debugpy for Python debugging?

The breakpoint() function offers simple local REPL inspection at a suspect line, while debugpy provides remote, attach-style debugging over the DAP protocol for headless or long-lived processes.

When should I use remote debugpy listen and wait_for_client workflows in Python?

Use debugpy listen and wait_for_client workflows when diagnosing failures in long-running Python processes that cannot be easily restarted, allowing an IDE to attach via the DAP protocol.