К основному содержанию
скилл CX Codex

systematic-debugging · spencerpauly — скилл для Claude Code: что делает

Заставляет ИИ-агента искать причину бага по шагам вместо случайных правок кода. Пригодится, когда поломку трудно поймать или она проявляется только в продакшене.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add spencerpauly/awesome-cursor-skills --skill systematic-debugging -a claude-code
Открыть на GitHub

Что делает systematic-debugging

Скилл задаёт строгую дисциплину поиска ошибок. Сначала агент обязан надёжно воспроизвести дефект, зафиксировав шаги воспроизведения и параметры окружения. Без этого этапа правки кода запрещены. Затем агент локализует сбой: отсекает части кодовой базы бинарным поиском или запускает git bisect, если функциональность работала в прошлых коммитах.

После изоляции формулируется проверяемая гипотеза. Вместо хаотичных правок агент добавляет точечный лог или точку останова, чтобы подтвердить догадку фактами. Финал — минимальный фикс и регрессионный тест. В скилл вшито строгое правило: если за 15 минут прогресса нет, нужно остановиться и локализовать проблему заново.

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

  • локализовать регрессию в истории коммитов с помощью git bisect
  • сформулировать и проверить точечную гипотезу о сбое перед изменением кода
  • изолировать плавающий дефект или состояние гонки
  • воспроизвести ошибку окружения между локальной машиной и продакшеном

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

  • Помоги найти причину ошибки через systematic-debugging: запрос падает при сохранении профиля.
  • Примени systematic-debugging и выясни через git bisect, какой коммит сломал авторизацию.
  • Используй методику systematic-debugging, чтобы локализовать баг с undefined в компоненте.

Как установить systematic-debugging

1Через Skills CLI (Vercel)

npx skills add spencerpauly/awesome-cursor-skills --skill systematic-debugging -a claude-code

2Вручную: положить файлы

~/.claude/skills/systematic-debugging/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/systematic-debugging/

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

Вопросы о systematic-debugging

Как установить systematic-debugging в Claude Code?

Выполните команду npx skills add spencerpauly/awesome-cursor-skills --skill systematic-debugging -a claude-code. Инструкция сохранится в каталоге навыков Claude Code.

Что делает скилл systematic-debugging?

Он направляет агента по методичному процессу: воспроизведение бага, изоляция дефектного слоя, проверка гипотезы через логи и минимальное исправление.

Что делать, если агент застрял на одном баге?

По правилам скилла, если за 15 минут продвижения нет, агент обязан сделать шаг назад и заново изолировать проблему, а не угадывать исправления.

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

SKILL.md · CC0-1.0
---
name: systematic-debugging
description: Structured debugging methodology — reproduce, isolate, hypothesize, verify. Covers git bisect, binary search, logging, and minimal reproduction.
user-invocable: true
---

# Systematic Debugging

Debug methodically instead of randomly changing code.

## The Process

### 1. Reproduce

Before anything else, reproduce the bug reliably:
- Get the exact steps to trigger the issue
- Note the expected vs actual behavior
- Confirm it happens consistently (not intermittent)
- Record the environment (OS, Node version, browser, etc.)

If you can't reproduce it, you can't fix it. Ask for more details.

### 2. Isolate

Narrow down where the bug lives:

**Binary search the codebase:**
- Comment out half the system → does the bug persist?
- If yes, the bug is in the remaining half → repeat
- If no, the bug is in the commented-out half → repeat

**Git bisect:**
```bash
git bisect start
git bisect bad          # current commit is broken
git bisect good <sha>   # this commit was working
# Git checks out the midpoint — test it
git bisect good         # or git bisect bad
# Repeat until it finds the first bad commit
git bisect reset        # when done
```

**Isolate by layer:**
- Is it frontend or backend? (Check network tab)
- Is it the database? (Query directly)
- Is it the API? (curl the endpoint)
- Is it the component? (Render it in isolation)

### 3. Hypothesize

Form a specific, testable hypothesis:
- "The bug is caused by X because Y"
- Not "something is wrong with the data"
- Good: "The `userId` is null because the auth middleware doesn't run on this route"

### 4. Test the Hypothesis

Write the smallest possible test that proves/disproves your hypothesis:
- Add a `console.log` or breakpoint at the suspected location
- Check the value of the suspected variable
- If your hypothesis is wrong, go back to step 3 with new information
- If it's right, you've found the bug

### 5. Fix and Verify

- Apply the minimal fix
- Verify the original reproduction steps no longer trigger the bug
- Check for regressions — did the fix break anything else?
- Write a test that would have caught this bug

## Debugging Tools

| Scenario | Tool |
|----------|------|
| "It worked before" | `git bisect` |
| "I don't know where this runs" | Add logging at entry/exit of suspect functions |
| "The data looks wrong" | Inspect at each transformation step |
| "It only fails in production" | Compare env vars, check logs, try to reproduce with prod data locally |
| "It's intermittent" | Look for race conditions, timing issues, or uninitialized state |
| "The error message is useless" | Search the codebase for where that error is thrown |

## Common Bug Patterns

- **Off-by-one**: Array indices, pagination, date ranges
- **Null/undefined**: Missing optional chaining, uninitialized state
- **Race condition**: Async operations completing in unexpected order
- **Stale closure**: React useEffect/useCallback capturing old values
- **Type coercion**: `==` vs `===`, string vs number comparisons
- **Missing await**: Forgetting `await` on async functions
- **Environment mismatch**: Works locally, fails in CI/prod due to different env vars or versions

## Rules

- Never guess — always verify with evidence
- Fix the root cause, not the symptom
- If you've spent 15 minutes without progress, step back and re-isolate
- Document what you tried so you don't repeat failed approaches

© spencerpauly · CC0-1.0 · spencerpauly/awesome-cursor-skills

Похожие скиллы

Всё по теме «Тесты и QA» →

Сначала — systematic-debugging от других авторов.

systematic-debugging Jesse Vincent Ведёт агента от симптома к причине сбоя, прежде чем предлагать правку. Нужен при падении тестов, ошибках сборки и странном поведении кода. CX Codex 306 118установок systematic-debugging Hermes Agent (adapted from obra/superpowers) Скилл ведёт от воспроизводимого симптома к корневой причине через четыре фазы. Пригодится для ошибок тестов, сборки, интеграций и неожиданного поведения. CX Codex +1 471установок systematic-debugging bobmatnyc Скилл ведёт агента от воспроизведения ошибки до проверки исправления. Пригодится, когда причина сбоя или неожиданного поведения неясна. CX Codex +1 382установок debugging akillness Скилл ведёт агента по циклу «воспроизвести → изолировать → проверить» для конкретных багов, регрессий и плавающих падений. Пригодится, когда падающий тест или запрос уже есть, а причины нет. CX Codex +1 361установок hunt tw93 Ищет первопричину багов, падений и регрессий до правок кода. Запрещает менять файлы, пока проблема не доказана воспроизводимой проверкой. CX Codex +1 14 900установок debugging-wizard https://github.com/Jeffallan Разбирает ошибки, стек-трейсы и логи, чтобы найти причину сбоя. Нужен при падениях, исключениях и неожиданном поведении кода. CX Codex +1 5 100установок bug-reproduction kindlmann Превращает расплывчатый баг-репорт в проверенный минимальный репро и падающий regression-тест. Пригодится, когда баг «иногда воспроизводится» и непонятно, с чего начать. CX Codex +1 1 400установок debugging-and-error-recovery addyosmani Скилл ведёт агента по шагам от воспроизведения ошибки до проверки исправления. Подойдёт, когда падают тесты, ломается сборка или поведение не совпадает с ожиданиями. CX Codex +1 62 800установок debugging-network-issues daymade Методика расследования сетевых, стриминговых и протокольных сбоев, когда очевидная причина скорее всего неверна. CX Codex +1 675установок

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

visual-qa-testing Открывает страницу во встроенном браузере Cursor, делает скриншот, читает консоль и сетевые запросы. Пригодится сразу после правок интерфейса. CX Codex +1 642установок auditing-security Проверяет кодовую базу на утечки секретов, уязвимости OWASP Top 10 и ошибки настроек. Помогает найти уязвимости перед релизом приложения. CX Codex +1 593установок suggesting-cursor-rules Скилл отслеживает повторяющиеся замечания к стилю кода и предлагает сохранить их в виде правил Cursor. Помогает закрепить соглашения проекта, чтобы не напоминать агенту одно и то же. CX Codex +1 554установок grinding-until-pass Скилл заставляет агента крутить цикл «правка → запуск → проверка» до тех пор, пока тесты не пройдут, сборка не соберётся или линтер не замолчит. CX Codex +1 548установок verifying-in-browser После правок в коде запускает dev-сервер, открывает приложение в браузере и проверяет рендер, ошибки консоли и сетевые запросы. CX Codex +1 540установок using-ui-stack Заставляет агента строить интерфейс по фиксированным правилам: сетка 8px, цвета 60-30-10, типографика, тёмная тема и состояния интерактивных элементов. CX Codex +1 539установок parallel-code-review Запускает четыре параллельных субагента в режиме чтения, чтобы разобрать один диф по четырём направлениям. Пригодится при проверке рискованных или крупных пуллреквестов. CX Codex +1 530установок reviewing-code Скилл проводит разбор кода по чек-листу: корректность, поддерживаемость, производительность, типы и тесты. Пригодится, когда нужно ревью перед мержем. CX Codex +1 516установок

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

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