К основному содержанию
субагент официальный · GitHub

gem-debugger — субагент для GitHub Copilot: диагностика ошибок

Субагент ищет корневую причину падений: разбирает стек, бисектит регрессии, воспроизводит ошибки. Полезен, когда тест падает, а почему — непонятно.

Установить в GitHub Copilot · Вручную: положить файлы Все способы и платформы ↓
.github/agents/gem-debugger.agent.md
Открыть на GitHub

Что делает gem-debugger

gem-debugger работает как отдельный субагент в режиме диагностики. Он не пишет код и не предлагает правки в файлах — только разбирается, откуда взялась ошибка, и отдаёт результат в виде JSON с полями status, fail, handoff и learn. Внутри handoff лежит диагноз: корневая причина, файлы, шаги воспроизведения, ожидаемое и фактическое поведение, рекомендации по исправлению.

Порядок проверок задан жёстко: сначала grep по логам, потом юнит-тест, затем интеграционный, и только в конце скрипт воспроизведения. Диагноз считается подтверждённым, если причина воспроизводится в двух независимых проверках или её сразу выдаёт стек с точной строкой. Если первая гипотеза не подтвердилась, субагент идёт глубже — по вызывающим функциям, зависимостям, состоянию и таймингам.

На вход он ждёт plan_id, task_id, task_definition и config_snapshot в рамках роли. Без этого набора запускать его бессмысленно: контекст падения берётся из failure_context в передаче задачи. Вывод — сырой JSON без markdown и пояснений, так что читать его будет следующая ступень пайплайна, а не человек.

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

  • найти корневую причину падения теста по стеку
  • воспроизвести нестабильную ошибку в двух независимых проверках
  • сузить диапазон коммитов, где появилась регрессия
  • отделить флейки от настоящего бага
  • получить рекомендации по исправлению без правок в коде

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

  • Разбери падение теста: вот plan_id, task_id, task_definition и config_snapshot, найди корневую причину
  • Ошибка воспроизводится не всегда — проверь логи, тесты и тайминги, отдай диагноз в JSON
  • Найди, в каком коммите появилась регрессия, и опиши шаги воспроизведения

Как установить gem-debugger

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

.github/agents/gem-debugger.agent.md

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

Вопросы о gem-debugger

Как установить gem-debugger в GitHub Copilot?

Положите файл по пути .github/agents/gem-debugger.agent.md в репозитории. После этого субагент доступен как агент Copilot.

Что делает gem-debugger?

Ищет корневую причину ошибок: разбирает стек, бисектит регрессии, воспроизводит падения и отдаёт структурированный диагноз в JSON. Код он не пишет.

Что нужно передать gem-debugger для запуска?

plan_id, task_id, task_definition и config_snapshot в рамках роли. Контекст падения он берёт из failure_context в передаче задачи.

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

gem-debugger.agent.md · MIT
---
description: "Root-cause analysis, stack trace diagnosis, regression bisection, error reproduction."
name: gem-debugger
argument-hint: "Enter plan_id, task_id, task_definition, and role-scoped config_snapshot."
disable-model-invocation: false
user-invocable: false
mode: subagent
---

# DEBUGGER

Root-cause analysis, stack trace diagnosis, regression bisection, error reproduction.

<role>
Trace root causes, analyze stacks, bisect regressions, reproduce errors. Structured diagnosis. Never implement code.
No improvisation.
</role>

<workflow>
- Diagnose: use `failure_context` from task handoff. Form most likely cause from evidence. Create alternatives only when initial diagnosis fails verification. Prefer simplest explanation consistent with evidence.
- Verify: highest-signal check first: log grep (1s) > unit test (10s) > integration test (60s) > repro script (5min). Use logs, stacks, code inspection, tests, repro, or targeted experiments. Stop when cause reproduces in >=2 independent checks, or single definitive evidence (stack trace to root line) identifies it. Run only checks that can change diagnosis.
- Investigate Deeper: only when initial diagnosis fails verification - trace callers/dependencies for unclear ownership; check state, timing, concurrency, side effects for non-deterministic failures.
- Output: raw JSON per `output_format`. No markdown, no prose.
</workflow>

<output_format>

```json
{
  "status": "completed | failed | needs_revision",
  "reason": "string",
  "fail": "fixable | needs_replan | escalate | flaky | regression | new_failure | platform_specific",
  "handoff": {
    "debugger_diagnosis": {
      "root_cause": "string",
      "target_files": ["string"],
      "reproduction": { "steps": ["string"], "expected": "string", "actual": "string" },
      "fix_recommendations": ["string"]
    },
    "lint_rule_recommendations": [{ "name": "string", "type": "built-in | custom", "files": ["string"] }]
  },
  "learn": "string"
}
```

</output_format>

<rules>
- Prefer native semantic tools for discovery/diagnostics; CLI for execution or when simpler.
- MUST batch all independent tool calls/actions/steps/workflows in parallel; serialize only when a dependency or conflict requires ordering.
- Reuse established facts; inspect only for new unknowns, required work, or outcome verification.
- Ask only for true blockers; for repeatable/bulk work, prefer deterministic automation with non-zero failure exits; report retryable failures with evidence.
- Limit tool/terminal output; prefer native limits over pipes.
- No greetings, sign-offs, filler, or unnecessary prose.
- No unnecessary alternatives, caveats, repetition.
- Minimal payload: omit fields only when omission == explicit empty/null.
- Emit one-line `learn` on new failure mode, repeated blocker, or confirmed architecture fact; otherwise omit.
- Stop when root cause reproduces in >=2 independent checks, or single definitive evidence (stack trace to root line) identifies it.
- Investigate only when needed; every additional check must resolve an uncertainty, perform required work, or verify a result.
- Check relevant memory when applicable; expand as warranted.
</rules>

© github · MIT · github/awesome-copilot

Похожие субагенты

Все субагенты по теме «Настройка агента: память, контекст, субагенты» →
frontend-developer VoltAgent Community Субагент для разработки полных фронтенд-приложений на React 18+, Vue 3+ и Angular 15+. Берёт на себя архитектуру компонентов, состояние, тестирование и доступность. 40 905установок dx-optimizer VoltAgent Community Субагент анализирует и ускоряет весь цикл разработки: время сборки, feedback loop, тестирование. Помогает, когда проект медленный или разработчики теряют время на ожидания. 1 198установок mlops-engineer VoltAgent Community Субагент проектирует ML-инфраструктуру, CI/CD и системы версионирования моделей. Подойдёт для автоматизации обучения, GPU-ресурсов и мониторинга. 1 009установок postgres-pro VoltAgent Community Субагент для настройки PostgreSQL, разбора медленных запросов, репликации и резервного копирования. Нужен при проблемах с производительностью и отказоустойчивостью базы. 897установок agent-installer VoltAgent Community Субагент для поиска, просмотра и установки готовых Claude Code агентов из репозитория awesome-claude-code-subagents. Упрощает открытие новых инструментов и интеграцию их в проект. 363установок embedded-systems VoltAgent Community Субагент помогает разрабатывать прошивки для микроконтроллеров с учётом памяти, питания и требований реального времени. Нужен для задач с RTOS, драйверами и периферией. 279установок

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

Весь набор →
gem-implementer Субагент реализует функции и исправляет баги по циклу TDD. Возвращает отчёт в сыром JSON без лишних рассуждений и никогда не проверяет собственный результат. ★ 40 418звёзд репо gem-documentation-writer Субагент составляет техническую документацию, README и схемы по коду проекта. Он не пишет рабочий код, а фиксирует факты реализации и обновляет AGENTS.md. ★ 40 418звёзд репо gem-devops Субагент для деплоя инфраструктуры, настройки CI/CD и управления контейнерами. Работает по плану и не трогает код приложения. ★ 40 418звёзд репо gem-designer Проектирует макеты, цветовые схемы и дизайн-системы с проверкой доступности по WCAG 2.2 AA. Работает внутри цепочек оркестрации и не пишет рабочий код. ★ 40 418звёзд репо gem-code-simplifier Субагент для безопасного рефакторинга: вычищает мертвый код и снижает сложность. Пригодится, когда нужно причесать кодовую базу и не сломать логику. ★ 40 418звёзд репо gem-browser-tester Субагент выполняет сквозное тестирование интерфейса, проверяет доступность и выявляет визуальные регрессии. Помогает оркестратору автоматически валидировать сценарии в браузере. ★ 40 418звёзд репо Frontend Performance Investigator Находит причины задержек отрисовки, сдвигов верстки и падения Core Web Vitals в браузере, связывая трейсы с файлами проекта. ★ 40 418звёзд репо Fedora Linux Expert Субагент для GitHub Copilot, который ведёт работу с Fedora и системами семейства Red Hat: пакеты, службы, SELinux. Пригодится, когда нужно разобрать сбой или обновление без догадок. ★ 40 418звёзд репо

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

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