"Правка кита: добавить или изменить скилл, скрипт, справку, шаблон базы или то, чем кит правят, прогнать `check-kit.ps1`, свести текст кита, закоммитить и запушить. Работает только в сессии, открытой в каталоге самого кита. Звать словами «правим кит», «добавь скилл в кит», «поправь хук» или /retool <что меняем>, /retool #N — доработка, записанная на GitHub. Не для работы над проектом — это /drive, и не для правки базы знаний."
Install
npx skillscat add t8nax/agents-kit/retool Install via the SkillsCat registry.
Навык: retool
Меняется кит. CLAUDE.md уже в контексте. Здесь — порядок работы.
Куда кладётся правка
| Файл | На что отвечает |
|---|---|
plugin/hooks/hooks.json |
когда кит вмешивается в сессию |
plugin/scripts/link-state.ps1 |
как связаны копия и база |
plugin/scripts/session-start.ps1 |
что видит сессия на старте |
plugin/scripts/link.ps1 |
как связывают копию с базой и как показывают связь |
plugin/scripts/base-init.ps1 |
с чего начинается новая база |
plugin/scripts/base-check.ps1 |
что в базе не так |
plugin/scripts/commit-gate.ps1 |
пускать ли коммит в базу |
plugin/scripts/await-answer.ps1 |
пришёл ли ответ оператора в память копии |
plugin/scripts/worktree-add.ps1 |
как заводят рабочую копию рядом с репозиторием |
plugin/scripts/worktree-remove.ps1 |
как убирают рабочую копию, заведённую рядом с репозиторием |
plugin/scripts/agents-deploy.ps1 |
как субагенты базы попадают в рабочую копию |
check-kit.ps1 |
то ли делает кит на стенде и в порядке ли его репозиторий |
plugin/reference/invariants.md |
что действует в каждой сессии под китом |
plugin/reference/base-layout.md |
как ведут файлы базы |
plugin/reference/task-memory.md |
как ведут память задачи и вопрос оператору в ней |
plugin/reference/backlog-record.md |
как пишут, нумеруют и берут запись бэклога |
plugin/reference/glossary.md |
что значит слово кита в проекте под китом |
plugin/skills/<имя>/SKILL.md |
как идёт работа контура проекта под китом |
.claude/skills/<имя>/SKILL.md |
как идёт работа над самим китом |
.claude/agents/<имя>.md |
кто проверяет смысл текста кита |
plugin/template/base/ |
каркас новой базы |
README.md |
первое знакомство с китом: что это, как поставить, как начать |
CLAUDE.md |
правила для всего кита и для его правки, чего в ките нет, слова его правки |
plugin/.claude-plugin/plugin.json |
чем кит объявлен как плагин и какой он версии |
.claude-plugin/marketplace.json |
чем кит объявлен как маркетплейс |
Когда заводится новый файл
Изменение не ложится ни на одну строку таблицы — новый файл; ложится — правка в существующий.
- скилл проектов —
plugin/skills/<имя>/SKILL.md, вplugin.jsonне регистрируется; - скилл работы над китом —
.claude/skills/<имя>/SKILL.md; - агент работы над китом —
.claude/agents/<имя>.md; - скрипт —
plugin/scripts/<имя>.ps1, скрипт работы над китом —<имя>.ps1в корне; справка —plugin/reference/<имя>.md; - файл шаблона базы —
plugin/template/base/и строка вplugin/reference/base-layout.md. Подаётся он хуком — только правкой списка подаваемых вbase-check.ps1.
Готовое из прежних китов берут, когда оно ложится на этот; их раскладку и имена файлов не переносят.
Порядок
Шаги 2 и 11 — один раз на заход, остальные — на каждую доработку захода.
Назвать доработку одной фразой. Доработка дана номером — сначала
gh issue view N; номера нет или доработка закрыта — сказать оператору. Агентkit-reviewer, режим «адрес доработки». Доработка спорит сCLAUDE.md— сначала вопрос оператору.Поднять версию — ниже.
Прочитать каждый задетый файл целиком и править по месту. Довод — по правилу «У довода свой адрес» в
CLAUDE.md.Что-то переименовано или удалено — выписать старые слова и имена для сведения. Удалённое, которое могут предложить снова, — строкой в «Чего в ките нет»
CLAUDE.md.Правка задевает подачу хука, состояние связи, заведение базы, заведение или удаление рабочей копии, раскладку субагентов, гейт коммита или ожидание ответа — в той же доработке проверка в
check-kit.ps1. Исключение — правила сверки вbase-check.ps1. Поправить то, чтоkit-reviewerна шаге 1 назвал в «Что поведёт себя иначе».Правка ломающая (
0.X.0) — до коммита прогнать хук и сверку на базе, которую назовёт оператор.Свести текст кита — ниже.
pwsh -NoProfile -File check-kit.ps1— зелёный. Красный — код 1;-KeepTempоставляет временные каталоги.Показать оператору доработку: что изменено по файлам, итог
check-kit.ps1, замечания сведения — что поправлено и что отброшено, записанные на GitHub доработки — с номерами. По отброшенному оператор может решить:- это правило кита — строкой в «Как править»
CLAUDE.md; - это не замечание — строкой в «Не замечание»
.claude/agents/kit-reviewer.md.
Показ ответа не ждёт — дальше шаг 10. Оператор сказал править — шаг 8 и снова шаг 9, без сведения.
- это правило кита — строкой в «Как править»
В коммит идёт только эта доработка, подъём версии — с первым коммитом захода; чужое в рабочем дереве — назвать оператору и не коммитить. Коммит явными путями, тело — по правилу «У довода свой адрес». Доработка взята номером — последняя строка тела перед соавторством:
Closes #N.Пуш основной ветки в
origin, когда все доработки захода закоммичены.git status -sb— безahead. Каждая взятая номером доработка захода —gh issue view N: не закрыта — сказать оператору.
Замеченное вне доработки, о чём оператор не сказал править, не править — записать доработкой на GitHub: gh issue create --title "<доработка одной фразой>" --body "<файл, место, что не так>".
gh не установлен или не авторизован — сказать оператору; шаг с gh молча не пропускать.
Поднять версию
version в plugin/.claude-plugin/plugin.json поднимается до правок.
| Часть | Когда | Что ждёт оператора |
|---|---|---|
0.X.0 |
после обновления надо что-то сделать руками | перевести базу под новый формат, пересвязать копию, отвыкнуть от убранной команды |
0.x.Y |
всё остальное — новый скилл, правило, проверка, текст, починка | обновиться и пользоваться |
- Часть — по старшей правке захода. Выяснилось по ходу, что правка ломающая, — номер поднимается до старшей, а не двигается второй раз.
- Часть выбирает сессия.
Свести текст кита
Один агент kit-reviewer в режиме «сведение», вход — из его файла: классы — «поведение», область — «правки», дифф — дифф доработки, старые слова и имена — из шага 4.
- Каждое замечание проверить, прочитав место. Ложное отбросить.
- Верное править; не вызвано правкой доработки — записать доработкой на GitHub. Разошлись редакции одного правила — спросить оператора, какая верна.
- Повторного сведения нет.
Чистка текста кита
Назначает оператор, отдельной доработкой «чистка текста кита». Порядок — как выше, кроме:
- шаг 1 — без агента;
- шаги 3–6 не идут;
- сведение — два агента параллельно, классы — все, область — весь текст, дифф — «нет»: один с линзой «повторы и следы», другой с линзой «читатель и довод». Замечания проверить и править удалением или ссылкой; новая формулировка — только там, где без неё инструкция неполна:
- повтор без расхождения — оставить один адрес, остальные места заменить ссылкой или убрать;
- довод не на своём адресе — перенести по правилу
CLAUDE.mdили убрать; - разошлось по существу — собрать в один список и спросить оператора, какая редакция верна.
Чего не делать
- Не заводить файл без своей ответственности и не класть скилл, агент или скрипт правки кита в
plugin/.