- Зачем:
- зеркальный codex-subagent-playbook ушёл вперёд по договорам ревью и
экономии контекста координатора; согласованный с пользователем список
находок перенесён в этот скилл.
- Что:
- SKILL.md: установка «оптика, не конвейер», гейт и ручки эскалации для
субагентов, саморевью исполнителя, шкала риска ревью с линзами
TASK/CODE, статусы триажа с предохранителем кругов, постепенная
приёмка с саморефлексией, раздел «Сбои координации».
- prompts/: устойчивые ID находок, четыре статуса триажа, резолюции — в
файл отчёта вместо тикета (лечит эхо файла задачи); новые
result-contract.md и runtime-language.md.
- prompt-templates.md: файлы линий ревью, сборка промптов с хвостом
языка, вердикт перепроверки из task-notification; lessons.md — гейт
на дистилляцию и датированная отмена урока про доводы в файле задачи.
- Проверка:
- проверка относительных ссылок и git diff --check — чисто.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- решение пользователя 2026-07-19: sol на medium закрывает обычные
задачи, прежнее правило дефолтило high почти всюду.
- Что:
- в codex-exec.md переписано сквозное правило эффорта: medium — обычные
задачи, high — нетривиальная реализация, ревью кода, диагноз.
- к примеру запуска исполнителя добавлена пометка о выборе эффорта.
- Проверка:
- вычитка references/codex-exec.md.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- origin/master обновился во время отправки локальных коммитов.
- Что:
- добавлена удалённая эмпирика Claude-плейбука.
- сохранены локальные изменения Codex-плейбука и handoff.
- Проверка:
- отсутствие конфликтов и последующая проверка состояния ветки.
- Зачем:
- ревью высокоуровневых документов могло требовать преждевременных деталей и постоянно блокировать одобрение.
- Что:
- находки ограничены дефектами на уровне самого документа.
- существенные отложенные риски отделены от блокирующих замечаний.
- уточнено, что APPROVED допускает открытые вопросы будущей реализации.
- Проверка:
- quick_validate.py, git diff --check и проверка локальных Markdown-путей.
- Зачем:
- нужно сохранить контекст координатора и устранить расхождения с зеркальным playbook.
- Что:
- закреплены делегирование, маршрутизация моделей и ограничение кругов ревью.
- добавлены файловый договор ревью и согласованная эмпирика прогонов.
- исправлены сборка слепых линий и компактные статусы находок.
- Проверка:
- quick_validate.py, git diff --check и проверка локальных Markdown-ссылок.
- Зачем:
- зафиксировать уроки прогона тикета 06 (t2-presale) до их поглощения
в SKILL.md.
- Что:
- главный урок: карта прогресса для пользователя на границах этапов.
- блок «Модели»: переоценка Sol, боевое подтверждение medium,
роли Опус/Codex, наводка gpt-5.6-terra с пометкой «не обкатано».
- Проверка:
- чтение references/lessons.md, запись «Прогон 2026-07-13».
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- третий боевой прогон подтвердил рефакторинг «тонкого мастера»;
новые пожиратели контекста и слабое место Клод-ревьюера должны
остаться в эмпирике скилла.
- Что:
- lessons.md: запись прогона 2026-07-12/13 (находки этапов, три новых
пожирателя, цифры конвейера).
- prompt-templates.md: обёртка Клод-ревьюера требует однострочность
индекса (Клод-родословная держит формат хуже Codex).
- handoffs/: handoff разработки с открытыми вопросами (эхо файла
задачи, приём вердикта из уведомления, эксперимент medium).
- Проверка:
- вычитка; факты сверены с транскриптом прогона задачи 13.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- субагенты должны сохранять внимание мастера и помогать результату, а не обслуживать обязательный конвейер.
- Что:
- семиступенчатый процесс заменён эвристиками выбора исполнителя, проверяющего и независимого ревьюера.
- права агентов отделены от канала результата, а полная полезная нагрузка выведена из контекста мастера.
- добавлены авторитетные договоры промптов, полевые заметки и handoff следующей сессии.
- Проверка:
- git diff --cached --check.
- свежий обзор через writing-great-skills, все принятые находки закрыты.
- Зачем:
- ретро прогона 2026-07-12 (задача 20, clickstream-demo): контекст
оркестратора съедали инлайн-диагнозы, переписывание boilerplate и
кириллица в обменных файлах.
- Что:
- SKILL.md: принцип «мастер решает — субагенты выясняют» со стоп-краном
«сам — максимум один заход», обменные файлы на английском, сквозная
проверка до ревьюеров, будильник одной строкой.
- references/prompts/: готовые английские boilerplate-файлы (мандат
ревью, триаж, перепроверка) — подшиваются cat'ом, контекст мастера
не проходят; prompt-templates перестроен под сборку.
- codex-exec: модель gpt-5.6-sol, лестница эффорта, ловушка «&»;
sandbox-справочник переименован в codex-sandbox-apparmor.md;
lessons дистиллирован, добавлена запись прогона 2026-07-12.
- закрыты 14 находок слепого Fable-ревью скилла (согласованность,
единый источник $SCRATCH, скелет ревью постановки).
- Проверка:
- все внутренние ссылки резолвятся; слепое ревью: APPROVED_WITH_MINORS,
восстановление структуры подтверждено без потерь.
- Зачем:
- ретро трёх циклов конвейера показало: находки ревью проходили через
контекст оркестратора до шести раз, review-промпт дублировался, ~7
пустых ходов на idle-пингах teammate-ревьюера.
- Что:
- SKILL.md: механика «индекс у оркестратора, нагрузка файлами» — вердикты
в файлы обменного temp-каталога, fix-промпт конкатенацией, один
канонический review-промпт на обоих ревьюеров, idle-пинги как шум;
- новый references/prompt-templates.md — скелеты четырёх промптов;
- codex-exec.md: сборка промптов cat'ом, боевая модель gpt-5.5 явно
(фронтир из конфига не наследовать);
- codex-sandbox-fix-handover: рабочий AppArmor-фикс (ловушка memfd,
профиль на бинарь codex), проверен на обоих режимах;
- lessons.md: датированные записи ретро, казуса Sol и memfd.
- Проверка:
- чтение SKILL.md и references/, следующий прогон конвейера.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- прогон 2026-07-10 (mws-data-test-t2-presale) дал новую эмпирику
этапов 1–2, не отражённую в скилле.
- Что:
- этап 2: для крупной постановки — второе слепое ревью Кодексом с
рамкой «постановку, не реализацию»; классы находок родословных;
- этап 1: постановка через /to-tickets, когда репозиторий настроен
под скиллы Мэтта Покока;
- lessons.md: запись прогона с цифрами и ретро-оговоркой про
companion-канал (issue #158).
- Проверка:
- вычитка диффа свежим взглядом; ссылки ведут на существующие
файлы references/.
- Зачем:
- рецепт AppArmor-фикса требует sudo, а инициатива агента (диагностика
до прогона, передача команд пользователю) держалась на здравом смысле,
не на тексте скилла.
- Что:
- в правило про линукс-ловушку codex-exec.md дописано: фикс сам не
применяй — дай пользователю готовые команды с `!`-префиксом; после
профиля напомни убрать use_legacy_landlock; перед первым прогоном на
новой Linux-машине прогони диагностику превентивно.
- Проверка:
- чтение правила в references/codex-exec.md.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- другая сессия на Ubuntu 24.04 задиагностировала молчаливую поломку
песочницы Codex CLI 0.144.1 (bwrap+userns против AppArmor); знание
нужно основной линии скилла — Linux-прогон конвейера впереди.
- Что:
- перенесён references/codex-sandbox-fix-handover-2026-07-10.md
(диагностика, обход use_legacy_landlock, AppArmor-профиль);
раздел «Связанные записи» перенацелен с удалённого codex-companion.md
на codex-exec.md.
- в codex-exec.md добавлено сквозное правило про линукс-ловушку
(сигнатура «гуглит, но не может ls»), в lessons.md — датированная
запись, в handoff — кавеат к пункту про Linux-прогон.
- Проверка:
- git show origin/codex-sandbox-fix-20260710 — содержимое перенесено
полностью; перекрёстные ссылки codex-exec.md ↔ handover резолвятся.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- read-only-конфайн обеднял ревью Codex (без тестов, поиска,
первоисточников), а плотность SKILL.md и дефолты модели/усилия
из config.toml накопили риски по итогам трёх прогонов.
- Что:
- ветка «ревьюер» в codex-exec.md переведена на запись + авто-аппрув,
защита — мандат промптом; в рецепты добавлены --strict-config и
явные -m / model_reasoning_effort.
- SKILL.md: правило «мандат промптом» для обоих ревьюеров, правило
моделей субагентов (Опус/Sonnet, не Fable), /tdd и /research +
Context7 в этапе 1, таймер-подстраховка ScheduleWakeup; уборка
плотности и инлайн-дат.
- handoffs 07-06/07-07/07-09 поглощены запиской 2026-07-10; в lessons.md
добавлены правило дистилляции и блок 2026-07-10; правки прошли слепое
ревью Опусом, все находки закрыты.
- Проверка:
- оверрайды -m/-c проверены живым codex exec --strict-config;
перекрёстные ссылки и команды сверены ревьюером с codex --help.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- зафиксировать уроки боевого прогона для сессии доработки скилла.
- Что:
- handoff с шестью уроками: таймер-подстраховка и её экономика, прямой
codex exec вместо плагина (с номерами issues), поправки пользователя
к флагам CLI, идея читающего форвардера, вердикт из логов умершего
агента, паттерн ожидания через отслеживаемый фоновый Bash.
- Проверка:
- чтение handoff; коммит только одного файла, чужие untracked не задеты.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- первый полный боевой прогон конвейера (наглядность витрины t2-ml-forecast)
дал систематические уроки по ожиданию фоновых job и resume Codex-тредов.
- Что:
- в references/lessons.md добавлен разбор прогона: idle-уведомление ≠ отчёт,
bash-поллер умирает на смене хода (нужен persistent Monitor), зомби-job
со статусом «running» у мёртвого воркера и его диагностика.
- урок про resume уточнён по опыту пользователя из /adversarial-review:
resume — только по явному id треда; безадресный resumeLast подхватывает
чужой тред; запасной путь — свежий write-тред с контекстом из файла задачи.
- зафиксировано: ранжировать правила постановки (что главнее) и требовать
вписывать доводы отклонений в файл задачи; цифры прогона (18 мин
реализация, тесты 147 → 154, ноль пересечений находок двух ревью).
- Проверка:
- вычитка references/lessons.md.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- ревью скилла Опус-ревьюером не состоялось: субагент дважды ушёл в
idle без отчёта и исчез; урок должен остаться в эмпирике.
- Что:
- в references/lessons.md добавлен инцидент и вывод: критичный отчёт
ревьюера писать в файл (двухканальный протокол), сообщение — указатель.
- Проверка:
- зеркало ~/.claude/skills синхронно (rsync + diff).
- Зачем:
- выжимка боевого прогона 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>
Два круга кросс-ревью правок (находки по убыванию: конфликт уровней,
затем стенд/человек), раздел «Контракт автономного прогона» и открытый
пункт: контракт не проверен вживую до следующей цепочки.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
По ревью Codex: «живой стенд» ошибочно попал в класс «может проверить
только человек». Теперь как в статус-контракте: недоступную worker-у
проверку прогоняет координатор (часть коммит-гейта), открытым риском в
handoff уходит лишь то, что недоступно и ему — ручная приёмка, внешняя
среда.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
По предложению Codex из ретро: скилл проектировался под сценарий «передал
очередь issue и ушёл», но входной контракт и мандат были неявными. Новый
раздел фиксирует вход (issue, порядок, «зачем»), мандат (весь цикл без
уточняющих вопросов; за пределы локального репозитория — только по
поручению) и сводку стоп-условий со ссылками на их разделы — без
пересказа правил, чтобы не разъезжались. Предупреждение о третьем круге
уточнено: это не вопрос, ответа не ждать.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
По ревью Codex: фраза «дефолт — рабочий уровень» противоречила таблице
effort-levels.md (worker обычного issue — экономный) и толкала запускать
всех worker-ов на high; заменена на выбор уровня по роли и классу issue.
Заодно «форма распределений» расширена до доменных инвариантов данных —
скилл общий, а не только для генератора.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Итоги эксперимента medium-worker (критерий выхода не сработал), ссылка на
правки b8f1fe0, закрытые и оставшиеся пункты из «не сделано».
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Три уточнения по отзыву Codex, сверенному с журналом координатора:
- предусловие входа: качественно подготовленные issue (выход /to-issues),
мутные — сначала прояснение замысла;
- точная граница чтения координатора: запрет только на код ради
верификации, процессные артефакты — его зона;
- классификатор риска расширен маркерами из прогона (версионирование
state, разрушающие пути, fail-open проверки); в effort-levels.md —
итог калибровки: уровни не менять, точность даёт классификация issue.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- на прогоне 2026-07-05 make generator-test с зашитым pytest -v высыпал
в контекст координатора полный список из 181 теста: правило «только
сводка» было, а механики не было.
- Что:
- шаг 7: гейт координатор гоняет сам (не через субагента), шумные
команды — в файл-лог, в контекст только код возврата и итоговые
строки; интерпретация объёмного вывода — разборщику логов
экономного уровня.
- ведущее правило и чек-лист дополнены той же механикой.
- effort-levels: «разбор логов» добавлен в экономный ярус Claude Code.
- Проверка:
- вычитка SKILL.md; grep по pytest/сводка/файл-лог — противоречий нет.
- Зачем:
- session-handoff писался до живого прогона; вторая волна правок и
результат кросс-прохода не были зафиксированы.
- Что:
- дополнение к handoff сессии: шесть находок прогона, вторая волна правок,
урок «живой прогон под наблюдением — самый дешёвый источник находок».
- rationale: поправка 2026-07-05 — третий случай подтверждения находки
о родословной (1 critical, 5 high после APPROVED той же линии).
- Проверка:
- перекрёстные ссылки на отчёт кросс-ревью и коммиты правок сходятся.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- триаж находок финального ревью не был назначен никому (worker-ы уже
закрыты); ретроспектива координатора после цепочки 12-08 дала
проверенные боевые предложения.
- Что:
- триаж находок финала — у fixer-а тем же механизмом, что у worker-а.
- словарь статусов отчётов и правило «APPROVED != завершение цепочки».
- предупреждение пользователю на третьем круге ревью, до потолка.
- шаг 3: уровень worker-а явно по effort-levels.md и в журнал.
- Проверка:
- перечитывание разделов «Цикл» и «Финал цепочки» после правок.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- правило «всё чинит fixer» было слишком грубым: процессные файлы
(PRD фичи, чекбоксы issue, журнал) — прямая зона координатора по
построению скилла, отдавать их fixer-у бессмысленно.
- Что:
- граница по классу файла: процессные — координатор сам (симптом
пропущенного п.1), файлы проекта — fixer-субагент, кодовая находка —
мини-issue с rerun ревью.
- Проверка:
- сверка с живым прогоном: находки Bernoulli (PRD, чекбоксы) — класс 1,
World Map в пользовательских доках — класс 2.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- живой прогон: координатор сам правил доки по находкам финального ревью
(полные тексты в контексте, второй писатель) и дал промежуточный статус,
прочитанный пользователем как завершение.
- Что:
- находки финального ревью чинит fixer-субагент с worker-контрактом,
не координатор.
- до выполнения финала каждый отчёт пользователю явно называет статус
цепочки и остаток.
- Проверка:
- перечитывание раздела «Финал цепочки».
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- координатор прочитал «свежие сессии» как запрет продолжать субагента:
пять полных xhigh-обходов финального ревью вместо узких rerun-ов.
- Что:
- правило уточнено: свежая сессия — про запуск без форка истории;
узкий rerun — продолжение того же ревьюера через send_input.
- свежий ревьюер обязателен по триггерам: спор, эскалация, широкая
переработка, слабый индекс; правило продублировано в шаге 5 и финале.
- reviewer-prompt.md: PREVIOUS_FINDINGS_BLOCK — только для свежего
субагента.
- Проверка:
- сверка с механикой rerun в claude-team-review (продолжение — штатный
путь, блок прошлых находок — для свежего).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- эксперимент «worker на medium» должен быть измерим: круги ревью против
уровня worker-а видны только если уровень записан.
- Что:
- точка записи «старт issue» дополнена уровнем мышления worker-а.
- Проверка:
- перечитывание раздела «Журнал прогона».
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- у worker-а есть страховочная сетка ниже по течению, у ревьюера нет:
глубина мышления важнее на ревью, а worker — самая дорогая петля.
- Что:
- таблицы уровней: worker на обычном issue — экономный (medium), любое
code review и worker на гейтовом issue — рабочий (high).
- в SKILL.md ярусы получили обоснование членства ролей.
- Проверка:
- согласованность ярусов SKILL.md с обеими таблицами effort-levels.md.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- живой прогон issue 12 показал: субагенты не наследуют уровень сессии,
дефолт spawn_agent — medium, worker и ревьюер молча ушли ступень ниже.
- Что:
- effort-levels.md: явные значения уровней (medium/high/xhigh) и
предупреждение про дефолт spawn_agent.
- журнал: фиксировать фактический уровень хоста, не название яруса.
- Проверка:
- сверка с конфигом сессии (model_reasoning_effort = high) и экраном
прогона (spawn gpt-5.5 medium).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- живой прогон issue 12 показал: координатор тратит циклы на попытки
передать worker-у полный контекст форком своей истории.
- Что:
- явное правило в раздел ролей: worker, ревьюеры и диагносты запускаются
свежими сессиями; форк тащит контекст координатора и убивает
независимость ревьюера.
- Проверка:
- перечитывание раздела «Роли» после правки.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- зафиксировать итог сессии для продолжения: как проверялся пакет,
повороты после ревью, что осталось незамеренным.
- Что:
- добавлен handoff 2026-07-04-rework-session-claude-line.md.
- в пакете правок обновлена строка статуса (внесено и закоммичено).
- Проверка:
- перекрёстные ссылки между двумя handoff'ами сходятся.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- боевой прогон цепочки 07-11 показал: worker в Codex не может запускать
субагентов, ревью шло пятью кругами без ограничителя, финальный handoff
и закрытие issue выпадали из цикла.
- Что:
- ревьюеров запускает координатор (наблюдатели, ограничение промптом),
триаж находок и флаг «спор» — в worker-е; политика кругов с потолком.
- две ручки стоимости: модель по роли и уровень мышления, таблица
references/effort-levels.md; шаблон references/reviewer-prompt.md —
скилл самодостаточен, без файлов claude-team-review.
- журнал с метками времени; финал: PRD до ревью, Status: done
docs-коммитом, handoff — условие выхода; handoff пакета правок.
- Проверка:
- адверсарное ревью пакета свежим субагентом (2 блокера и 7 important
закрыты) плюс саморевью; следующий боевой прогон цепочки — замер.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- инцидент 2026-07-03: координатор молча подменил ревью и записал
недоказанную причину, а кросс-линейный проход нашёл серьёзные дефекты
после APPROVED ревьюера той же линии — процессу нужны след и честность.
- Что:
- контракт worker-а: строка происхождения ревью в индексе (режим,
механизм, ревьюер, вердикт), сверка на коммит-гейте.
- append-only журнал прогона coordinator-journal.md: запись в момент
события, handoff собирается по журналу, отклонения фиксируются фактами,
причины-предположения запрещены; честная граница защиты названа явно.
- кросс-линейный проход поднят до рекомендованного по умолчанию для
нетривиальной цепочки; дубли свёрнуты (саморевью, раздел «Родословная»);
датированная поправка с эмпирикой в references/rationale.md.
- Проверка:
- /claude-team-review code (adversarial-reviewer, Opus, read-only):
APPROVED после 2 раундов, неблокирующие заметки применены.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Переписан SKILL.md (194→159): user-invoked, ведущее правило «работай по
индексу», per-finding триаж делегирован claude-team-review, режимы ревью
по риску (два лена разными субагентами на риске), коммит-гейт берёт только
сводку тестов, финал = ревью на соответствие замыслу + handoff под ручную
кросс-линию. README, rationale и июньский context-economy handoff подровнены;
добавлен handoff по сессии. Прошёл /claude-team-review — 2 раунда, APPROVED.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Зачем:
- код и конфигурации читают люди с разным уровнем экспертизы, текст должен быть доступен без дополнительных пояснений.
- Что:
- добавлен абзац про простые слова, короткие фразы и пояснение сложных мыслей при первом упоминании.
- Проверка:
- cat AGENTS.md — новый абзац присутствует в разделе «Язык и рассуждения».
- Зачем:
- `{baseDir}` не является стандартным placeholder и может сбить с толку.
- Что:
- путь заменён на `references/patterns.md` с пояснением «в папке этого скилла».
- Проверка:
- cat agents/.agents/skills/ai-text-lint/SKILL.md | grep patterns
- Зачем:
- автоматизировано создание ~/.env.secrets при chezmoi apply на Windows.
- Что:
- добавлен chezmoi/create_dot_env.secrets с заглушками для CONTEXT7_API_KEY и ZAI_API_KEY.
- Проверка:
- chezmoi apply и проверка наличия ~/.env.secrets
- Зачем:
- устранена дублирующая сводная матрица severity, которая устаревала при изменении паттернов.
- улучшена навигация по документу за счёт группировки паттернов в категории.
- Что:
- добавлены разделы категорий: Структура и форматирование, Тон и авторская позиция, Резюме-специфичные паттерны.
- переупорядочены паттерны S05 и S06 внутри категории Структура.
- обновлена ссылка на severity в SKILL.md с указанием inline-таблиц.
- Проверка:
- git diff agents/.agents/skills/ai-text-lint/