From eb0d52ef5704f2c0248fbf8340e3c18ffb1ebab0 Mon Sep 17 00:00:00 2001 From: Dmitry Dementev Date: Thu, 23 Jul 2026 10:51:58 +0300 Subject: [PATCH] =?UTF-8?q?docs(skills):=20=D0=B2=D0=B7=D0=B0=D0=B8=D0=BC?= =?UTF-8?q?=D0=BE=D0=BE=D0=B1=D0=BE=D0=B3=D0=B0=D1=89=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=B1=D0=BB=D0=B8=D0=B7=D0=BD=D0=B5=D1=86=D0=BE=D0=B2?= =?UTF-8?q?-=D0=BF=D0=BB=D0=B5=D0=B9=D0=B1=D1=83=D0=BA=D0=BE=D0=B2=20?= =?UTF-8?q?=D0=BF=D0=BE=D1=81=D0=BB=D0=B5=20=D1=81=D0=B2=D0=B5=D1=80=D0=BA?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Зачем: - близнецы развивались порознь и разошлись: проверенные боем правила клодовского плейбука отсутствовали в кодексовом, и наоборот; промах скиллом 2026-07-22 показал цену дрейфа. - Что: - в кодексовый: одно ревью на версию артефакта, саморевью исполнителя и сквозная проверка до внешних линий, «Партнёр в петле», цена тихой ошибки как критерий уровня (заменой, класс задачи — иллюстрация), проверка внешних фактов первоисточником, кавеат про неработающий reasoning_effort субагентов; - в клодовский: «Пределы параллельности» (обратная пара), карта прогресса поглощена в «Пользователь в петле», автовызов моделью (описание с триггерами вместо disable-model-invocation); - lessons обоих: датированные записи сверки, урок 07-13 сжат до указателя. - Проверка: - перечитка диффа свежим взглядом; следующий прогон конвейера — по автовызванному claude-subagent-playbook. Co-Authored-By: Claude Fable 5 --- .../skills/claude-subagent-playbook/SKILL.md | 23 +++++++++++++------ .../references/lessons.md | 16 +++++++++++-- .../skills/codex-subagent-playbook/SKILL.md | 17 ++++++++++++++ .../references/lessons.md | 10 ++++++++ .../references/roles.md | 15 +++++++++++- 5 files changed, 71 insertions(+), 10 deletions(-) diff --git a/agents/.agents/skills/claude-subagent-playbook/SKILL.md b/agents/.agents/skills/claude-subagent-playbook/SKILL.md index b128d2f..4d9b52e 100644 --- a/agents/.agents/skills/claude-subagent-playbook/SKILL.md +++ b/agents/.agents/skills/claude-subagent-playbook/SKILL.md @@ -1,10 +1,11 @@ --- name: claude-subagent-playbook -disable-model-invocation: true description: >- - Конвейер одной задачи со стороны Claude Code: постановка тикетами-срезами → - свежий взгляд по шкале → реализация Кодексом → ревью по шкале риска - (до слепого двойного) → синтез. Знания, не каркас. + Конвейер одной нетривиальной задачи со стороны Claude Code: постановка → + свежий взгляд → реализация Кодексом → слепое ревью по шкале риска → + триаж → приёмка. Применяй, когда пользователь даёт issue/тикет в работу + конвейером, просит делегировать реализацию Codex или устроить + независимое ревью изменений. --- # Плейбук: одна задача через Кодекса и слепое ревью @@ -70,6 +71,11 @@ description: >- (форк тратит токены и убивает независимость). Повторную проверку точечных правок — **тем же** ревьюером узким вопросом «закрывают ли правки твои находки», не полным обходом. +- **Пределы параллельности**: глубина один — субагенты не разворачивают + собственных субагентов; параллельно только работа без конфликтующих + входов и общего изменяемого состояния; второй обзор добавляй ради + отдельной линии, а не ради свободного слота; реализацию и починку одного + дерева веди последовательно одним владельцем. - **Вспомогательные Claude-субагенты** для попутного делегирования: глубокое рассуждение — `deep-reasoner`, механика с шумным выводом — `fast-worker`. Они репо-локальные; нет в репозитории — определения для создания в @@ -231,9 +237,12 @@ description: >- ## Пользователь в петле -В отличие от `/coordinator-loop`, здесь пользователь рядом: докладывай в чат -короткие статусы на границах этапов (постановка готова, ревью пришло, -вердикты сведены), решения по скоупу оставляй ему. Фоновые этапы будят тебя +В отличие от `/coordinator-loop`, здесь пользователь рядом: на границах +этапов давай в чат карту прогресса в 4–7 строк обычными словами +(✅ сделано / ▶ идёт / ⬜ дальше); термины плейбука — только с расшифровкой +(урок 2026-07-13: телеграфные статусы в терминах этапов потеряли +пользователя). Карта дополняет содержательную сводку, не заменяет её. +Решения по скоупу оставляй пользователю. Фоновые этапы будят тебя сами — не поллинг вручную, а отслеживаемые фоновые процессы + уведомления (механика — [references/codex-exec.md](references/codex-exec.md)). Подстраховка от молчаливой смерти агента — ScheduleWakeup сроком дольше diff --git a/agents/.agents/skills/claude-subagent-playbook/references/lessons.md b/agents/.agents/skills/claude-subagent-playbook/references/lessons.md index 4b418d0..c703075 100644 --- a/agents/.agents/skills/claude-subagent-playbook/references/lessons.md +++ b/agents/.agents/skills/claude-subagent-playbook/references/lessons.md @@ -177,8 +177,9 @@ git (`git show HEAD:path`) + повторным наложением право «информирование о ходе процесса было очень скудным». Урок: на каждой границе — карта прогресса 4–7 строк (✅ сделано / ▶ идёт / ⬜ дальше) обычными словами, термины плейбука только с расшифровкой; карта дополняет -содержательную сводку, не заменяет. Кандидат на поглощение в SKILL.md -(«Пользователь в петле»). +содержательную сводку, не заменяет. Поглощено 2026-07-23: SKILL.md +(«Пользователь в петле») и близнец codex-subagent-playbook +(«Партнёр в петле»). **Что поймал каждый этап:** - Ревью постановки с эмпирикой перекроило тикет до реализации: Codex из @@ -312,3 +313,14 @@ claude-subagent-playbook»); правила канала в codex-exec.md был потолок Kafka: манифест 3 152 байта вместо ~0,81 МБ); приёмка — плоское время next-day 716/718/716 с, мир 3 → 6 дней, 561 942 события; тесты 216 + 31 зелёные. + +## 2026-07-23: сверка близнецов после промаха скиллом + +В кодексовый близнец перенесены проверенные здешними прогонами правила: +одно ревью на версию артефакта, саморевью исполнителя и сквозная проверка +до внешних линий, цена тихой ошибки как критерий уровня, проверка внешних +фактов первоисточником, партнёр в петле. Обратно взяты «Пределы +параллельности» (глубина один; второй обзор ради отдельной линии, а не +свободного слота) — в SKILL.md, раздел «Роли». Скилл переведён на +автовызов моделью (описание с триггерами), близнец скрыт +`disable-model-invocation` — пара промахов исключена с обеих сторон. diff --git a/agents/.agents/skills/codex-subagent-playbook/SKILL.md b/agents/.agents/skills/codex-subagent-playbook/SKILL.md index 0e22ab6..26df1e1 100644 --- a/agents/.agents/skills/codex-subagent-playbook/SKILL.md +++ b/agents/.agents/skills/codex-subagent-playbook/SKILL.md @@ -78,6 +78,16 @@ description: "Оптика тонкого мастера для координа назвать причину. Сложную, рискованную или архитектурную постановку проверяй двумя слепыми линиями, когда цена оправдана. +Одно ревью на версию артефакта, а не на каждую передачу из рук в руки: +принятый и не изменившийся артефакт заново не ревьюится, после правок — +узкая проверка дельты тем же ревьюером. + +Перед внешними линиями — саморевью исполнителя тем же тредом: он проходит +свои изменения против критериев как ревьюер и сам чинит найденное; +координатору — одна строка «found N, fixed N». Доступную дешёвую сквозную +проверку прогони до запуска ревьюеров, иначе ревью уйдёт на код, который +прогон ещё поменяет. + Реализацию проверяй по риску: - тривиальная — саморевью исполнителя; @@ -121,6 +131,13 @@ description: "Оптика тонкого мастера для координа Новый урок для [эмпирики](references/lessons.md) только предложи партнёру. Правь долговечную эмпирику после его согласия. +## Партнёр в петле + +На границах этапов давай партнёру карту прогресса в 4–7 строк обычными +словами: что сделано, что идёт, что дальше. Термины плейбука — только с +расшифровкой. Карта дополняет содержательную сводку, не заменяет её. +Решения о скоупе и принятии остаточного риска остаются у партнёра. + ## Сбои координации - Нет ожидаемого файла: один раз запроси короткий итог в том же треде; после diff --git a/agents/.agents/skills/codex-subagent-playbook/references/lessons.md b/agents/.agents/skills/codex-subagent-playbook/references/lessons.md index d504100..622841b 100644 --- a/agents/.agents/skills/codex-subagent-playbook/references/lessons.md +++ b/agents/.agents/skills/codex-subagent-playbook/references/lessons.md @@ -24,6 +24,16 @@ права ревьюера смешались с каналом результата; семь буквальных этапов породили лишние проверки. Вывод поглощён в [основную оптику](../SKILL.md) и [договор ревью](review-and-triage.md). +- 2026-07-23 — сверка с клодовским близнецом (claude-subagent-playbook): + перенесены проверенные его прогонами правила — одно ревью на версию + артефакта, саморевью исполнителя и сквозная проверка до внешних линий, + партнёр в петле (в [основную оптику](../SKILL.md)); цена тихой ошибки + как критерий уровня и проверка внешних фактов первоисточником + (в [роли](roles.md)). +- 2026-07-23 — по опыту партнёра хост принимает `reasoning_effort` + субагента, но фактически не применяет его; действующая ручка уровня — + модель и TOML-роль. Кавеат внесён в [роли](roles.md); снять после + починки хоста. ## Проверить боем diff --git a/agents/.agents/skills/codex-subagent-playbook/references/roles.md b/agents/.agents/skills/codex-subagent-playbook/references/roles.md index 661d5e1..e5e5bc9 100644 --- a/agents/.agents/skills/codex-subagent-playbook/references/roles.md +++ b/agents/.agents/skills/codex-subagent-playbook/references/roles.md @@ -78,11 +78,24 @@ | Глубокий | Архитектура, сложная реализация, ревью кода | Сильная модель, `high` | | Исключительный | Необратимое решение или несходимость сильных агентов | Самая сильная модель, `max` | +Критерий выбора — цена *тихой* ошибки этапа, не сложность работы: где +пропущенный дефект никто ниже по конвейеру не поймает (постановка, слепое +ревью, диагноз), ставь глубокий уровень; где за результатом стоит приёмка +координатора и ошибка громкая (узкая перепроверка, механика), хватает +рабочего. Таблица «для чего» — иллюстрация этого критерия, не замена. +Экономию уровня считай по конвейеру целиком: дешёвый этап, породивший +длинный триаж находок, выходит дороже дорогого. + Модель задаёт потолок способности, effort — глубину работы этой модели. Повышай effort, когда подходящей модели не хватило поиска или рассуждения. Повышай модель, когда не хватает качества решения. После двух слабых результатов замени исполнителя свежим более сильным агентом вместо переноса -его неудачного контекста. +его неудачного контекста. От уверенной выдумки внешних фактов (форматы +артефактов, версии) не страхует никакой уровень — такие факты проверяй +реальным запросом или фикстурой из первоисточника. +Кавеат (2026-07-23): текущий хост принимает `reasoning_effort` субагента, +но фактически не применяет — рабочая ручка сейчас только модель; +перепроверяй после обновлений хоста. `xhigh` не является автоматической ступенью: текущая эмпирика показывает малый прирост относительно `high` при заметной цене. Выбирай его вручную для