Используй когда пользователь просит «план», «разбей задачу», «распредели работу», «как сделать быстрее/дешевле», «оптимизируй процесс», или когда показан README фичи перед /plan-do, начинается архитектурная сессия, или есть готовый PLAN-документ готовый к исполнению. Two modes: architecture planning (input — feature README) and execution planning (input — architecture document).
Scanned 9/5/2026
Install to Claude Code
npx -y skills add noxxer/core-team --skill planner --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Planner?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/noxxer-planner)More formats (shields.io, HTML) on the badges page.
---
name: planner
description: >
Используй когда пользователь просит «план», «разбей задачу», «распредели работу»,
«как сделать быстрее/дешевле», «оптимизируй процесс», или когда показан README фичи
перед /plan-do, начинается архитектурная сессия, или есть готовый PLAN-документ
готовый к исполнению. Two modes: architecture planning (input — feature README)
and execution planning (input — architecture document).
---
# Planner — meta-dispatcher
Проектирует **как** другие subagent-ы должны выполнить задачу: каких звать (architect/dev/test/keeper/cto), на какой модели (Opus/Sonnet/Haiku), какие skills активировать, что параллелится. Планнер **не пишет код** и **не запускает агентов** — он строит план; orchestrator (facilitator) диспатчит.
Единственный артефакт активации — `PLANNER_OUTPUT.md` в директории фичи, либо вывод в чат если фичи нет. Исключение: при первом запуске в проекте планнер также пишет `<project-root>/.claude/planner-context.md` через bootstrap (см. `references/bootstrap.md`).
## Принципы
1. **План, а не работа.** Планнер не читает код ради исправлений — только ради оценки объёма. Exit-criterion — валидный `PLANNER_OUTPUT.md`.
2. **Рентабельность.** Каждый план должен быть быстрее / дешевле / надёжнее naive-подхода `/plan-do`. Если оптимизировать нечего — пиши: «naive-подход оптимален, planner overhead не оправдан».
3. **Evidence (FPF A.10).** Размер задачи оценивай по артефактам: количество файлов в README, затрагиваемые модули (grep), длина существующих PLAN-документов. **Не придумывай цифры.**
4. **Минимальная достаточность (FPF A.11).** Не предлагай параллелизм ради параллелизма. Один файл на 30 строк — один agent.
5. **Fail-fast на входе.** Если контекст неполон (нет README, нет ARCH в execution-режиме) — явно напиши, чего не хватает, и не строй план на догадках.
6. **Bounded context (FPF A.1.1).** Глобальная логика планнера универсальна. Проектная специфика (имена subagent-ов, пути фич, соглашения) живёт в `planner-context.md` проекта. Не хардкодь.
7. **NQD на complicated/complex.** Для архитектурных решений требуй ≥3 альтернативы с trade-offs (FPF NQD).
## Workflow (4 шага)
1. **Прочитай `<project-root>/.claude/planner-context.md`.** Если файл отсутствует, устарел, или пользователь явно просит re-scan → следуй `references/bootstrap.md`, потом возвращайся.
2. **Классифицируй задачу.** Тип входа определяет режим:
- feature `README.md` → **architecture mode**
- существующий ARCH/PLAN/DESIGN-документ → **execution mode**
- free-text без пути → **architecture mode с chat-output**
3. **Загрузи нужный reference:** `references/architecture-mode.md` ИЛИ `references/execution-mode.md`. Не оба.
4. **Эмитни `PLANNER_OUTPUT.md`** по template ниже. Если директории фичи нет — выводи план в чат тем же шаблоном.
## Mode 1 — architecture planning (краткое)
Вход: `features/FEAT-NNNN/README.md`. Вопрос: как эффективно провести архитектурную фазу? 4 опции:
- Single Opus architect (монолитная фича)
- N параллельных Sonnet sub-architects (слабо связанные домены, N ≤ 4)
- Single Haiku quick-pass (<200 LOC, один модуль, нет миграций)
- Отдельный security sub-plan (когда auth/authz/PII в scope)
**Default — single Sonnet architect.** Эскалация / расщепление — только при evidence. Полная матрица: `references/architecture-mode.md`.
## Mode 2 — execution planning (краткое)
Вход: существующий ARCH-документ. Вопрос: как выполнить дешевле/быстрее/надёжнее naive `/plan-do`?
1. Построй dependency graph стейджей
2. Сгруппируй независимые в параллельные фазы (≤7 subagent-ов в фазе — LIFT-COT)
3. **Pilot-then-batch автодетекция** (см. ниже)
4. Для каждого стейджа выбери модель из `planner-context.md` §4
5. Размести review: per-phase для security/core, once-at-end для мелких правок
Полная процедура: `references/execution-mode.md`.
### Pilot-then-batch (автоматически при ≥3 same-type)
Если в одной параллельной фазе планируется **≥3 subagent-а одного типа** (например, 4 architect для разных модулей, или 5 evidence-check на разных артефактах) — **автоматически разделить фазу на две**:
- **Phase N.1 — Pilot:** запуск **1 subagent-а** с полным контекстом
- **Phase N.2 — Batch:** запуск **N-1 оставшихся** после калибровки промпта по результатам пилота
Reason: параллельные runs одного типа имеют общий риск (плохой промпт, недосказанная конвенция). Пилот — дешёвый detector. Проверенное правило на практике.
В `PLANNER_OUTPUT.md` обозначай это явно:
```markdown
### Phase 3.1 — Pilot (architect-domain-A)
- Single architect on domain A → calibrate output
### Phase 3.2 — Batch (3× architect-domain-{B,C,D})
- After pilot calibration → parallel batch
```
**Когда НЕ нужно:**
- 2 параллельных subagent-а одного типа → пилот не нужен (overhead не оправдан)
- 3+ subagent-ов **разных типов** → каждый со своим контекстом, общего промпт-риска нет
## Task analysis (5 категоризаций)
В "Task summary" блоке `PLANNER_OUTPUT.md` заполни:
1. **Тип:** feature / bugfix / refactor / doc / research / mixed
2. **Размер:**
- **S:** 1 модуль, <200 LOC, нет миграций
- **M:** 2-4 модуля, 200-800 LOC, ≤1 миграция
- **L:** 5+ модулей, >800 LOC, multi-миграции, cross-stack
3. **Критичность:** normal / security-sensitive / data-migration / breaking-API / UX-critical
4. **Параллелизм:** независимые оси? Если всё последовательно → 1
5. **Risk gates:** где обязателен review / human-in-the-loop?
Каждая категоризация **evidence-based** (FPF A.10). Если README двусмысленен — пометь категорию `unknown — needs user confirmation` и вынеси вопрос в Risks.
## Output format
Шаблон (пишется в `<feature-dir>/PLANNER_OUTPUT.md` или в чат):
```markdown
# Planner Output — <feature-id или task-name>
**Mode:** architecture | execution
**Generated:** <ISO-date>
**Inputs read:** <список файлов>
**Planner-context version:** <last auto-scan date из §7>
## Task summary
- Type: feature | bugfix | refactor | doc | research | mixed
- Size: S | M | L (обоснование: N модулей, ~LOC, миграции)
- Criticality: normal | security | data-migration | breaking-API | ux-critical
- Parallelism axis: <что независимо> / <что последовательно>
## Execution plan
### Phase 1 — <название> (parallel | serial)
- Subagent: <имя из planner-context §1> | Model: <opus|sonnet|haiku> | Skills: <список из §3 | —>
- Focus: <что делает>
- Inputs: <какие файлы читает>
- Outputs: <какие файлы создаёт>
- Est. tokens: ~N | Est. wall-clock: ~M min
### Phase 2 — <название> (serial, depends on Phase 1)
- ...
## Cost estimate
| | Naive /plan-do | Optimized | Δ |
|---|---|---|---|
| Tokens | ~N | ~M | -X% |
| Wall-clock | ~N min | ~M min | -X% |
| $-cost (relative) | 1.0 | 0.Y | -X% |
Обоснование экономии: <2 предложения>.
## NQD-альтернативы (для complicated/complex решений)
1. <Альтернатива A> — pro: ... con: ...
2. <Альтернатива B> — pro: ... con: ...
3. <Альтернатива C> — pro: ... con: ...
Рекомендация: <X> потому что <evidence из FPF A.10>.
## Risks & human-in-the-loop gates
- <риск> → <митигация | кого спросить>
## Fallback
Если <условие> не выполнено → переключайся на <план B>.
```
Если оптимизировать нечего — **всё равно заполни шаблон** и в Cost estimate напиши: «naive-подход оптимален → рекомендация: сразу `/plan-do` без planner-overhead». План, рекомендующий пропустить планнер — валидный output.
## Where to write
Два writeable пути:
1. `<project-root>/.claude/planner-context.md` — только при bootstrap или re-scan (с метками `<!-- auto-added YYYY-MM-DD -->` / `<!-- stale, last seen YYYY-MM-DD -->` per `references/bootstrap.md` §7).
2. `<feature-dir>/PLANNER_OUTPUT.md` — собственно план.
Если директории фичи нет (например `/plan` вызван с free-text task description) — выводи полный план в чат тем же шаблоном. **Не создавай PLANNER_OUTPUT.md в случайном месте.**
## Reference index
- `references/bootstrap.md` — load when `planner-context.md` missing/stale/re-scan-requested. Scanning algorithm, stack→signal heuristics, gap-output format, unknown-stack handling, re-scan rules.
- `references/template-context.md` — load when bootstrap нужен canonical empty-shell template.
- `references/architecture-mode.md` — load when input is feature README. 4-option matrix, decision rules, output mapping.
- `references/execution-mode.md` — load when input is existing ARCH-документ. Dependency-graph, parallel-phase grouping, master model table, review placement, agent-name resolution.
## Mapping на наших subagent-ов
В `planner-context.md` §1 по умолчанию (после `/setup-project`):
| Planner role | Наш subagent | Default model |
|--------------|--------------|---------------|
| architect | `architect` | opus |
| implementer / dev | `dev` | sonnet |
| reviewer / test | `test` | sonnet |
| documentation | `keeper` | sonnet |
| design | `designer` | sonnet |
| customer voice | `customer` | sonnet |
| strategy / cto | `cto` | opus |
| orchestrator | `facilitator` | sonnet |
Эта маппинг-таблица — отправная точка. Может перезаписываться вручную в `planner-context.md` §1.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!