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:
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 — воссоздать в новом репозитории.
|
||||
Reference in new issue
Block a user