feat(skill): claude-subagent-playbook — конвейер одной задачи с Codex

- Зачем:
  - выжимка боевого прогона 2026-07-06 (t2-ml-forecast, витрина) в
    переиспользуемый плейбук: постановка → свежий взгляд → реализация
    Codex → слепое двойное ревью разных родословных → синтез.
- Что:
  - SKILL.md: роли, шаги с критериями закрытия, триаж у исполнителя,
    границы применимости; словарь общий с coordinator-loop;
  - references: механика codex-companion с ловушками и раннер-паттерном,
    накопительная эмпирика прогонов, определения deep-reasoner/fast-worker
    для воссоздания в новом репозитории;
  - handoffs: записка о рождении скилла и списке непроверенного боем.
- Проверка:
  - зеркало ~/.claude/skills синхронно (diff -rq чисто); боевой тест —
    следующий прогон конвейера по тексту скилла.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Dmitry DementievandClaude Fable 5 committed 2026-07-06 18:22:00 +03:00
1 parent ca30ac5272
commit 138315d496
5 files changed
+414

No files matched your search

@@ -0,0 +1,123 @@
---
name: claude-subagent-playbook
disable-model-invocation: true
description: >-
Конвейер одной задачи со стороны Claude Code: постановка → свежий взгляд →
реализация Кодексом → слепое двойное ревью → синтез. Знания, не каркас.
---
# Плейбук: одна задача через Кодекса и слепое двойное ревью
Ты — **оркестратор** в сессии Claude Code: планируешь, ставишь задачу,
раздаёшь работу, синтезируешь. Реализацию не пишешь. Это плейбук — знания и
приёмы; порядок этапов разумен, но подстраивай под задачу, а не наоборот.
## Когда применять — и когда нет
Одна нетривиальная задача: спека/issue + реализация + проверка. Признаки
«за»: правки в нескольких файлах с тестами, цена ошибки заметна, пользователь
хочет след (задача-файл, ревью).
**Не разворачивай конвейер на мелочь.** Косметика, пара часов работы, один
файл — сделай сам: накладные расходы процесса многократно превысят цену
работы (эмпирика 2026-07-06: на полировку ноутбука чуть не завели несколько
issue; пользователь справедливо остановил). Очередь зависимых issue с
автономным прогоном — это `/coordinator-loop`, не этот плейбук.
## Роли
- **Оркестратор (ты)** — план, постановка, синтез, коммит. Работай по
**индексу** (правило `/coordinator-loop`): в твой контекст входят вердикты
и находки `файл:строка`, а не diff, не полные логи и не нарратив. Шумные
команды — через файл-лог, в контекст только сводку.
- **Codex** — реализация кода. У пользователя лимиты Codex больше, код он
пишет в целом лучше, но верхнеуровнево планирует хуже — поэтому
декомпозиция и постановка остаются у тебя. Механика вызова —
[references/codex-companion.md](references/codex-companion.md).
- **Ревьюеры** — два, **разных родословных**, слепые друг к другу:
Claude-субагент (adversarial-reviewer, **на Опусе** — экономия лимитов) и
Codex **свежим тредом** (не тем, что писал код). Разные родословные ловят
непересекающиеся классы находок — это центральная находка и
`/coordinator-loop` (кросс-линия), и прогона 2026-07-06 (Клод подтвердил
математику и краевые случаи, Кодекс нашёл дыры в тестах). Нет типа
`adversarial-reviewer` в среде — возьми `general-purpose` со скептическим
промптом и запретом менять репозиторий (мандат промптом, не урезанием).
- **Свежесть**: ревьюеров запускай свежими сессиями, без форка своей истории
(форк тратит токены и убивает независимость). Повторную проверку точечных
правок — **тем же** ревьюером узким вопросом «закрывают ли правки твои
находки», не полным обходом.
- **Вспомогательные Claude-субагенты** для попутного делегирования: глубокое
рассуждение — `deep-reasoner`, механика с шумным выводом — `fast-worker`.
Они репо-локальные; нет в репозитории — определения для создания в
[references/claude-agents.md](references/claude-agents.md).
## Конвейер
1. **Постановка — самодостаточный файл-задача.** У исполнителя нет твоего
контекста; всё нужное — в файле: цель, критерии приёмки чекбоксами,
границы («что трогать нельзя»), «сначала прочитать» (спека, ADR, README с
командами), команды проверки. Формат и место — по конвенции репозитория
(например, `.scratch/<feature>/issues/`). Готово, когда исполнитель может
сделать задачу, не задав тебе ни одного вопроса.
2. **Свежий взгляд на постановку — до реализации.** Адверсарный ревьюер без
твоего контекста проверяет задачу против кода: фактические ошибки, скрытые
решения-«однострочники», недостающие критерии. Окупается: ловит блокеры,
которые исполнитель молча реализовал бы (эмпирика: «русские названия из
`name_ru`» — а в данных `name_ru` английский). Этап закрыт, когда каждая
находка внесена в задачу **решением** или письменно отклонена — «пусть
решит исполнитель» решением не считается.
3. **Реализация Кодексом.** Промпт: «задача самодостаточна, следуй буквально,
коммит не делай». Запуск — **раннером-субагентом** (приём из
`/adversarial-review`: раннеру — готовую команду, шум остаётся у него,
монитор не нужен) либо companion-CLI напрямую; рецепты и ловушки —
[references/codex-companion.md](references/codex-companion.md).
Один писатель в дереве: пока Codex пишет — никто больше (казус с
форвардером — в [references/lessons.md](references/lessons.md)). Готово,
когда Codex вернул отчёт, а в дереве нет правок, которых он не называл.
4. **Два слепых ревью параллельно.** Каждому: путь к задаче-файлу + фокус
(математика/краевые случаи, соответствие критериям, честность тестов,
артефакты). Друг про друга не знают, твои выводы им не пересказывай.
Клод-ревьюеру можно поручить смотреть артефакты (картинки из ноутбука).
Этап закрыт, когда оба вердикта у тебя индексами.
5. **Синтез и триаж.** Сведи вердикты по индексам: пересечения, противоречия.
Пофиндинговый триаж — у **исполнителя**, не у тебя (правило
`/claude-team-review` и `/coordinator-loop`: судит тот, у кого контекст
кода): перешли Codex индекс находок **дословно**, он чинит или
**аргументированно отклоняет** — через контракт и тест, не голословно;
промпт починки — «закрой перечисленное, больше ничего не меняй». Ты судишь
уровнем задачи: принять риск / вне скоупа. Повторная проверка — узкая
(см. «Свежесть»). Этап закрыт, когда по каждой находке обоих ревью есть
решение: починено и перепроверено — или отклонено с доводом.
6. **Финал.** Артефакты проверь **своими глазами** (счётчик тестов, картинки,
прогон CLI) — ревью не заменяет твою приёмку. Обнови чекбоксы и статус
задачи-файла, коммит — по `/conventional-commits`, пользователю — выжимку:
вердикты, что принято/отклонено, что осталось. Готово, когда чекбоксы
проставлены, дерево чистое после коммита и пользователь получил отчёт.
## Пользователь в петле
В отличие от `/coordinator-loop`, здесь пользователь рядом: докладывай в чат
короткие статусы на границах этапов (постановка готова, ревью пришло,
вердикты сведены), решения по скоупу оставляй ему. Фоновые этапы будят тебя
сами — не поллинг вручную, а фоновый монитор + уведомления
(механика — [references/codex-companion.md](references/codex-companion.md)).
## Соседние скиллы
- `/coordinator-loop` — автономный цикл очереди issue на стороне Codex
(координатор в Codex, worker'ы — его субагенты). Выстрадан и отлажен;
словарь (индекс, свежие сессии, две ручки стоимости) — общий.
- `/claude-team-review` — ревью-петля, где лид сам чинит код.
- `/adversarial-review` — разовое адверсарное ревью Кодексом.
- `/conventional-commits` — формат коммита на финале.
## Подробнее
- [references/codex-companion.md](references/codex-companion.md) — команды
companion-CLI, мониторинг, ловушки (read-only без `--write`, форвардер,
idle-уведомления фоновых агентов).
- [references/lessons.md](references/lessons.md) — датированная эмпирика
прогонов: что поймал каждый этап, казусы, цифры.
- [references/claude-agents.md](references/claude-agents.md) — определения
репо-локальных субагентов `deep-reasoner`/`fast-worker` и конструкция
оркестрации из CLAUDE.md — воссоздать в новом репозитории.