К основному содержанию
плагин

debug-skill — плагин для Claude Code: отладка кода

Плагин учит Claude Code отлаживать программу через точки останова, шаги выполнения и просмотр переменных. Пригодится, когда выводов print недостаточно, чтобы найти причину ошибки.

Установить в Claude Code · Через маркетплейс плагинов Все способы и платформы ↓
/plugin marketplace add anthropics/claude-plugins-community
/plugin install debug-skill@claude-community
/plugin install debugging-code@claude-community
Открыть на GitHub

Что делает debug-skill

В плагин входят скилл debugging-code и CLI dap. Скилл описывает рабочий процесс отладки: ставить точки останова, проходить код по шагам, смотреть локальные переменные и стек вызовов, вычислять выражения во время выполнения. CLI использует Debug Adapter Protocol, чтобы управлять отладчиком командами из Bash.

dap позволяет запускать и останавливать сессию, продолжать выполнение до точки останова, проверять значения и управлять точками останова. Фоновый демон хранит состояние сессии, а CLI возвращает контекст после команды. Это значит, что для работы dap нужна запущенная сессия отладки. Установка в Claude Code состоит из добавления маркетплейса и установки двух плагинов.

Какие задачи решает

  • найти строку, на которой ломается программа
  • проверить значение переменной во время выполнения
  • проследить путь выполнения до нужной точки
  • посмотреть стек вызовов и локальные переменные

Примеры запросов агенту

  • Отладь app.py: остановись на строке 42 и выясни, почему возникает ошибка.
  • Проведи программу по шагам и проверь значение items в текущем кадре.
  • Поставь точку останова в handler.py и проследи выполнение до неё.

Как установить debug-skill

Через маркетплейс плагинов

/plugin marketplace add anthropics/claude-plugins-community
/plugin install debug-skill@claude-community
/plugin install debugging-code@claude-community

По шагам, с командами для каждой платформы: Плагины Claude Code: маркетплейсы, установка и как собрать свой

Вопросы о debug-skill

Как установить debug-skill в Claude Code?

Выполните команды по порядку: /plugin marketplace add anthropics/claude-plugins-community, затем /plugin install debug-skill@claude-community, затем /plugin install debugging-code@claude-community.

Что делает debug-skill?

Скилл помогает Claude Code отлаживать код с точками останова, пошаговым выполнением и проверкой состояния программы. CLI dap передаёт команды отладчику через Debug Adapter Protocol.

Как проверить переменную во время отладки?

Используйте dap eval <expr> для вычисления выражения в текущем кадре или dap inspect <var> --depth N, чтобы раскрыть вложенные значения.

Исходный текст

SKILL.md · MIT
<p align="center">
  <img src=".github/logo.png" alt="debug-skill" width="220">
</p>

<p align="center">
  <strong>Let your coding agent debug like a human developer.</strong><br>
  Set breakpoints, step through code, evaluate expressions — the way you actually debug.
</p>
<p align="center">
  <a href="https://github.com/AlmogBaku/debug-skill/releases/latest"><img src="https://img.shields.io/github/v/release/AlmogBaku/debug-skill?style=flat-square&color=00c853" alt="Latest Release"></a>
  <a href="https://github.com/AlmogBaku/debug-skill/actions/workflows/release.yml"><img src="https://img.shields.io/github/actions/workflow/status/AlmogBaku/debug-skill/release.yml?style=flat-square" alt="Build Status"></a>
  <a href="https://github.com/AlmogBaku/debug-skill/blob/master/go.mod"><img src="https://img.shields.io/github/go-mod/go-version/AlmogBaku/debug-skill?style=flat-square" alt="Go Version"></a>
  <a href="https://github.com/AlmogBaku/debug-skill/blob/master/LICENSE"><img src="https://img.shields.io/github/license/AlmogBaku/debug-skill?style=flat-square" alt="License: MIT"></a>
  <a href="https://github.com/AlmogBaku/debug-skill/stargazers"><img src="https://img.shields.io/github/stars/AlmogBaku/debug-skill?style=flat-square&color=yellow" alt="GitHub Stars"></a>
</p>

<p align="center">
  If this saves you a debugging session, please <a href="https://github.com/AlmogBaku/debug-skill"><strong>star the repo</strong></a> — it helps others find it.
</p>

---

AI coding agents (Claude Code, Codex, Opencode, Cursor) are stuck with `print` statements and guesswork. **debug-skill**
gives them what human developers have: a real debugger they can actually use. It ships two things:

- **A Claude Code skill** — teaches Claude *how* to debug: when to set breakpoints, how to step through code, how to
  inspect state
- **The `dap` CLI** — a stateless CLI wrapper around
  the [Debug Adapter Protocol](https://microsoft.github.io/debug-adapter-protocol/) so any agent can drive a real
  debugger from Bash

---

## Demo

[![Watch the demo](.github/demo.gif)](https://youtu.be/ZxXvTtilZr0)

---

## The Skill

> Install the skill, and Claude debugs your code the way *you* would — not with print statements.

The `debugging-code` skill gives Claude structured knowledge of the debugging workflow: setting breakpoints, stepping
through execution, inspecting locals and the call stack, evaluating expressions mid-run. It uses the `dap` CLI as its
tool.

### Install for Claude Code

Via the plugin marketplace — no manual setup needed:

```
/plugin marketplace add AlmogBaku/debug-skill
/plugin install debugging-code@debug-skill-marketplace
```

### Install for other agents

Via [skills.sh](https://skills.sh) — works with Cursor, GitHub Copilot, Windsurf, Cline,
and [20+ more agents](https://skills.sh/docs):

```bash
npx skills add AlmogBaku/debug-skill
# or: bunx skills add AlmogBaku/debug-skill
```

Or manually copy `skills/debugging-code/` into your agent's skills.

---

## The `dap` CLI

`dap` wraps the Debug Adapter Protocol behind simple, stateless CLI commands. A background daemon holds the session; the
CLI sends one command and gets back the full context — no interactive terminal required.

### Install


```bash
# One-liner (Linux & macOS)
bash <(curl -fsSL https://raw.githubusercontent.com/AlmogBaku/debug-skill/master/skills/debugging-code/scripts/install-dap.sh)
```

<details>
<summary>Other install methods</summary>

**From Homebrew (for macOS):**
```bash
brew install AlmogBaku/tap/dap
```

**From sources:**
```bash
# Go install
go install github.com/AlmogBaku/debug-skill/cmd/dap@latest
```

Or download a pre-built binary from the [releases page](https://github.com/AlmogBaku/debug-skill/releases/latest).

</details>

### Quick Start

```bash
dap debug app.py --break app.py:42   # start, stop at breakpoint
dap eval "len(items)"                # inspect a value
dap inspect data --depth 2           # expand nested objects
dap step                             # step over
dap continue                         # next breakpoint
dap continue --to app.py:50          # run to specific line
dap pause                            # interrupt if hanging
dap restart                          # re-run, preserving breakpoint changes
dap stop                             # end session
```

Execution commands (`debug`, `continue`, `step`) return **full context automatically**: current location, surrounding source, local variables, call stack,
and program output. No follow-up calls needed.

### Usage Examples

```bash
# Python
dap debug app.py --break app.py:42

# Go
dap debug main.go --break main.go:15

# Node.js / TypeScript
dap debug server.js --break server.js:10

# Rust / C / C++
dap debug hello.rs --break hello.rs:4

# Attach to a remote debugger (e.g. debugpy in a container)
dap debug --attach container:5678 --backend debugpy --break handler.py:20

# Attach to a running process by PID
dap debug --pid 12345 --backend debugpy

# Pass arguments to the program
dap debug app.py --break app.py:10 -- --config prod.yaml --verbose
```

### Commands

| Command                              | Description                                                    |
|--------------------------------------|----------------------------------------------------------------|
| `dap debug <script>`                 | Start debugging (local or `--attach host:port` or `--pid PID`) |
| `dap stop`                           | End session                                                    |
| `dap step [in\|out\|over]`           | Step (default: over)                                           |
| `dap continue`                       | Resume execution (`--to file:line` for temp breakpoint)        |
| `dap context [--frame N]`            | Re-fetch current state                                         |
| `dap eval <expr> [--frame N]`        | Evaluate expression in current frame                           |
| `dap inspect <var> [--depth N]`      | Inspect variable (expand nested objects)                       |
| `dap output`                         | Drain buffered stdout/stderr since last stop                   |
| `dap pause`                          | Pause a running program                                        |
| `dap restart`                        | Restart session, preserving breakpoint changes                 |
| `dap threads`                        | List all threads                                               |
| `dap thread <id>`                    | Switch to a different thread                                   |
| `dap break list\|add\|remove\|clear` | Manage breakpoints mid-session                                 |

**Global flags:** `--json` (machine-readable output), `--session <name>` (named sessions), `--socket <path>` (custom
socket path), `--context-lines <int>` (lines of source context)

### Supported Languages

| Language           | Backend     | Auto-detected |
|--------------------|-------------|:-------------:|
| Python             | debugpy     |      yes      |
| Go                 | dlv (Delve) |      yes      |
| Node.js/TypeScript | js-debug    |      yes      |
| Rust / C / C++     | lldb-dap    |      yes      |

Backend is inferred from the file extension. Override with `--backend <name>`.

### How It Works

```
dap <cmd>  →  Unix socket  →  Daemon  →  DAP protocol  →  debugpy / dlv / js-debug / lldb-dap  →  your program
```

The daemon starts automatically on `dap debug` and shuts down on `dap stop` (or after 10 min idle). It's invisible — you
never manage it directly.

### Multi-Session

Multiple agents can debug independently with named sessions:

```bash
dap debug app.py  --session agent1 --break app.py:10
dap debug main.go --session agent2 --break main.go:8

dap stop --session agent1   # stops agent1 only
```

Each session has its own daemon and socket. Omit `--session` to use the default session.

---

## Contributing

PRs and issues welcome. See `claudedocs/` for architecture details and `CLAUDE.md` for code conventions.

## Support the Project

If debug-skill saves you from a painful debugging session,
consider [starring the repo](https://github.com/AlmogBaku/debug-skill/stargazers) — it helps others find it and keeps
the project going.

## License

MIT

© AlmogBaku · MIT · AlmogBaku/debug-skill

Похожие плагины

Все плагины по теме «Настройка агента: память, контекст, субагенты» →
ponytail DietrichGebert Плагин настраивает агента на короткие решения без лишних абстракций. Сгодится, когда нужно использовать возможности уже имеющегося кода и не усложнять задачу. ★ 177 259звёзд репо impeccable pbakaus Даёт агенту словарь дизайнера: 24 команды вроде polish, audit и bolder, чтобы правки интерфейса не сводились к «сделай красиво». ★ 89 321звёзд репо last-30-days-skill mvanhorn Собирает свежие посты, комментарии и транскрипты по любой теме за последний месяц и укладывает их в один отчёт. ★ 65 596звёзд репо claude-hud jarrodwatts Показывает под строкой ввода, сколько контекста занято, какие инструменты работают и как идут задачи. Пригодится, когда сессия длинная и надо видеть расход. ★ 28 914звёзд репо understand-anything Egonex-AI Плагин сканирует проект и строит интерактивный граф файлов, классов и зависимостей с веб-дашбордом. Пригодится при знакомстве с чужим или крупным кодом. ★ 88 429звёзд репо mem0 mem0ai Подключает долговременную память к Claude Code, сохраняя контекст проектов и привычки между сессиями. ★ 67 869звёзд репо

Из того же набора2

Спонсоры проекта

Компании, которые помогают держать аналитику открытой