Plan Skill
Планирование реализации: из запроса — декомпозированный план изменений, готовый к исполнению другим агентом без дополнительных уточнений.
Загружай этот скилл когда нужно разбить задачу на план шагов перед тем как
кодировать. Скилл генерирует структурированный план (Markdown-файл) с фазами,
bite-sized шагами, интерфейсами и критериями готовности — и проверяет его
скриптом plan_validator.py на отсутствие недоделок (placeholders).
🎯 When to use
Use this skill when:
- Есть задача «сделай X», но нужен порядок шагов и критерии готовности
- Просят «спланируй разработку», «разбей на шаги», «составь план»
- Нужен согласованный процесс: обсуждение → план → исполнение → проверка
- Начинается новый этап: позбюжетные скиллы, фиц, рефакторинг, интеграция
- Нужно одноэлементное ТЗ для передачи параллельным агентам
Do NOT use when:
- Нужно только объяснить, как работает код — это explore/knowledge, не планирование
- Задача тривиальная: один файл, однозначное изменение — можно без плана
- Нужно открытого исполнения: провалидируй запрос, потом вызывай агента-coder
📦 Files
SKILL.md— этот файлscripts/plan_validator.py— проверка плана на готовность (stdlib only)templates/implementation-plan.md— шаблон плана реализацииexamples/plan-example.md— пример готового плана
🔧 Workflow
Фаза 0 — Brainstorming (обзор запроса)
- Уточни цель (что получить) и границы (что НЕ входит).
- Проверь код если нужно:
codegraph_explore/ чтение ключевых файлов. - Зафиксируй входные интерфейсы (что уже есть) и целевое состояние.
- Определи риски: ломающие изменения, скрытые зависимости, конфликты.
Фаза 1 — Writing the plan (составление)
- Создай файл плана по шаблону:
docs/plans/<slug>-<date>.mdили в корне какPLAN.md. Путь любой, главное — единый файл. - Структура плана:
- Goal — цель одним предложением + acceptance criteria (проверяемые).
- Constraints — запреты: «не трогать X», «stdlib only», «без новых зависимостей».
- Steps — неделимые bite-sized шаги, каждый с файлом и ожидаемым результатом.
- Interfaces — каждый шаг с
Produces:/Consumes:(что выходит, что входит). - Verification — как проверяем каждый шаг (команда, тест, ожидаемый вывод).
- Применяй TDD-стиль где уместно: шаг «пишем тест → Expected FAIL», затем «реализация → PASS».
- Правило No placeholders: в плане не должно быть
TODO,TBD,..., нерешительного «решим потом». Если неясно — реши сейчас или вынеси вопрос пользователю. - Правило HARD-GATE: не переходи к коду, пока план не одобрен (пользователем или рулевой ролью) и не прошёл валидацию части важно.
Фаза 2 — Validate the plan
- Прогони
python3 scripts/plan_validator.py <plan-file>. - Скрипт проверяет: наличие Goal/Constraints/Steps, отсутствие заглушек (TBD/TODO/
...), наличие файлов-целей, размер шагов (не гигантских), consistency секций. - Вывод типа:
✅ Plan <path> is execution-readyили список замечаний. - Пока валидатор не зелён — план не готов к исполнению.
Фаза 3 — Execute (исполнение)
- Исполняющий агент действует строго по шагам плана, отмечая
[x]. - После каждого шага — минимальная сверка: тесты/диагностика для «Done».
- Каждый шаг реализует интерфейс из плана: не расширять объём (scope creep).
- Итог — отчёт: какие шаги сделаны, какие НЕ и почему, что проверил.
Фаза 4 — Verification (проверка до завершения)
- Прогони тесты/линтер/сборку (по контексту проекта).
- Сверь результат с Goal и acceptance criteria: всё выполнимо observable подтверждено.
- Если стоит ревью: запусти
code-review(скилл репозитория). - Не завершай работу «на словах» — только после прохождения проверки.
🛡 Red flags (красные флаги плана)
- Шаг крупнее «одного действия» (можно разбить) — разбери на подшаги.
- В плане есть TODO/TBD/«в процессе» — валидатор должен поймать это.
- Скилл вызывает код, которого нет в плане (Interfaces не свяпываются).
- Acceptance criteria невозможно проверить (субъективны) — ужесточи формулировки.
- План на N файлов, а реализация вышла в 3 раза больше — планируй атомарно.
✅ Definition of Done
- План сохранён в Markdown, прошёл
plan_validator.py. - Каждый шаг: файл/границы + Produces/Consumes + Verification.
- Нет заглушек и неоднозначностей. Список замечаний валидатора пуст.
- Пользователь одобрил план (или явно делегировал исполнителю).