t8nax

retool

"Правка кита: добавить или изменить скилл, скрипт, справку, шаблон базы или то, чем кит правят, прогнать `check-kit.ps1`, свести текст кита, закоммитить и запушить. Работает только в сессии, открытой в каталоге самого кита. Звать словами «правим кит», «добавь скилл в кит», «поправь хук» или /retool <что меняем>, /retool #N — доработка, записанная на GitHub. Не для работы над проектом — это /drive, и не для правки базы знаний."

t8nax 0 Updated 4w ago
GitHub

Install

npx skillscat add t8nax/agents-kit/retool

Install via the SkillsCat registry.

SKILL.md

Навык: 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 — один раз на заход, остальные — на каждую доработку захода.

  1. Назвать доработку одной фразой. Доработка дана номером — сначала gh issue view N; номера нет или доработка закрыта — сказать оператору. Агент kit-reviewer, режим «адрес доработки». Доработка спорит с CLAUDE.md — сначала вопрос оператору.

  2. Поднять версию — ниже.

  3. Прочитать каждый задетый файл целиком и править по месту. Довод — по правилу «У довода свой адрес» в CLAUDE.md.

  4. Что-то переименовано или удалено — выписать старые слова и имена для сведения. Удалённое, которое могут предложить снова, — строкой в «Чего в ките нет» CLAUDE.md.

  5. Правка задевает подачу хука, состояние связи, заведение базы, заведение или удаление рабочей копии, раскладку субагентов, гейт коммита или ожидание ответа — в той же доработке проверка в check-kit.ps1. Исключение — правила сверки в base-check.ps1. Поправить то, что kit-reviewer на шаге 1 назвал в «Что поведёт себя иначе».

  6. Правка ломающая (0.X.0) — до коммита прогнать хук и сверку на базе, которую назовёт оператор.

  7. Свести текст кита — ниже.

  8. pwsh -NoProfile -File check-kit.ps1 — зелёный. Красный — код 1; -KeepTemp оставляет временные каталоги.

  9. Показать оператору доработку: что изменено по файлам, итог check-kit.ps1, замечания сведения — что поправлено и что отброшено, записанные на GitHub доработки — с номерами. По отброшенному оператор может решить:

    • это правило кита — строкой в «Как править» CLAUDE.md;
    • это не замечание — строкой в «Не замечание» .claude/agents/kit-reviewer.md.

    Показ ответа не ждёт — дальше шаг 10. Оператор сказал править — шаг 8 и снова шаг 9, без сведения.

  10. В коммит идёт только эта доработка, подъём версии — с первым коммитом захода; чужое в рабочем дереве — назвать оператору и не коммитить. Коммит явными путями, тело — по правилу «У довода свой адрес». Доработка взята номером — последняя строка тела перед соавторством: Closes #N.

  11. Пуш основной ветки в 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.

  1. Каждое замечание проверить, прочитав место. Ложное отбросить.
  2. Верное править; не вызвано правкой доработки — записать доработкой на GitHub. Разошлись редакции одного правила — спросить оператора, какая верна.
  3. Повторного сведения нет.

Чистка текста кита

Назначает оператор, отдельной доработкой «чистка текста кита». Порядок — как выше, кроме:

  • шаг 1 — без агента;
  • шаги 3–6 не идут;
  • сведение — два агента параллельно, классы — все, область — весь текст, дифф — «нет»: один с линзой «повторы и следы», другой с линзой «читатель и довод». Замечания проверить и править удалением или ссылкой; новая формулировка — только там, где без неё инструкция неполна:
    • повтор без расхождения — оставить один адрес, остальные места заменить ссылкой или убрать;
    • довод не на своём адресе — перенести по правилу CLAUDE.md или убрать;
    • разошлось по существу — собрать в один список и спросить оператора, какая редакция верна.

Чего не делать

  • Не заводить файл без своей ответственности и не класть скилл, агент или скрипт правки кита в plugin/.