STATE.md здесь позвоночник. Любой процесс при старте читает его, чтобы понять, где находится проект, и дописывает после значимого шага. Агенты не полагаются на память - они полагаются на файл.
У этого есть следствие, которое документация проговаривает прямо: подагент не видит того, что не записано на диск. Изоляция обязательна для независимости, но она же означает, что всё нужное должно оказаться в файлах до запуска. Каталог планирования и есть тот общий субстрат, ради которого схема сходится.
Изоляция доведена до архитектуры, а не оставлена приёмом
Разница между "запускать подагентов" и тем, что делает GSD, - в том, зачем подагент нужен.
Количество агентов само по себе не даёт ничего. Пять агентов, делящих один мутный контекст, просто дороже повторят одну ошибку. Здесь подагент - это в первую очередь граница контекста: новый процесс, ограниченный набор входных данных, одна работа, завершение.
Отдельно закрыт случай, о котором обычно забывают: сам оркестратор тоже наполняется. Проект регистрирует хуки жизненного цикла среды, чтобы получать сигнал о том, сколько окна осталось, и предупредить до того, как среда молча запустит сжатие и выбросит состояние, на которое оркестратор рассчитывал.
Проверка - это фаза, а не фраза в конце
Отдельный этап проверки закрывает самую частую подмену: исполнение завершилось без ошибок, значит готово.
Проверяющий читает цель фазы, зафиксированные решения, планы и отчёты об исполнении - и сверяет построенное с задуманным. Проверяется покрытие требований, покрытие решений (реализовано ли то, о чём договорились на обсуждении) и соответствие цели фазы в целом.
Формулировка в документации стоит того, чтобы её привести: фаза готова не потому, что исполнение прошло без ошибок, а потому что построенное соответствует спланированному, а спланированное - решённому. Расхождения превращаются не в замечания, а в планы исправления.
Роли разнесены по моделям
Практичная часть, которой у более лёгких наборов обычно нет.
Роли настраиваются по уровням модели, причём тремя способами разной грубости: профиль целиком (качество, баланс, бюджет), тип фазы (планирование, обсуждение, исследование, исполнение, проверка, завершение) и точечное переопределение по имени агента. Плюс сопоставление уровней с конкретными идентификаторами моделей под каждую среду.
Смысл прямой: сильная модель на планирование и отладку, дешёвая на исполнение и разметку кодовой базы. При тридцати четырёх агентах и работе, растянутой на дни, это уже не косметика, а статья расходов.
Документация не прячет неудобное
Это редкое качество, и здесь оно есть.
Раздел про контекстную инженерию заканчивается разделом про издержки, где прямым текстом сказано: цикл добавляет реальное трение, запуск подагентов со свежим контекстом медленнее одной правки в контексте, а для переименования переменной или починки опечатки весь цикл избыточен.
Там же признано, что отслеживание остатка окна - эвристика, а не гарантия: один вызов модели может съесть непредсказуемо много. И отдельно описан случай, когда решение пришлось откатить: три тяжёлых процесса раньше запускались в форкнутом контексте, но у форка нет инструмента запуска агентов, а эти процессы существуют ровно ради него - поэтому форк убрали, со ссылкой на задачу в трекере.
Цена: отладка процесса вместо отладки кода
Оркестрация усложняет разбор неудач.
Когда результат прошёл цепочку из исследователя, планировщика, проверяющего плана и исполнителя, вопрос "какая строка кода плохая" часто оказывается не тем вопросом. Настоящий - на каком этапе появилась неверная предпосылка и почему её пропустили дальше.
Плюс в том, что все промежуточные артефакты лежат на диске и их можно прочитать. Минус в том, что читать придётся вам, и это другой навык, чем чтение стектрейса.
Цена: внешняя память тоже разрастается
Файлы решают проблему исчезающего контекста, но заводят свою.
Плохой файл решений просто превращает старый чатовый шум в новый файловый. А хороший всё равно растёт: собственный файл контекста этого репозитория - триста сорок два килобайта, и проекту пришлось изобрести под него формат, где каждый факт занимает одну машиночитаемую строку, а хронология вынесена в журнал в конце. За сутки между двумя проверками он подрос на шестнадцать килобайт - иллюстрация к тезису лучше любых рассуждений.
Это честный сигнал о масштабе задачи. Внешняя память требует такой же дисциплины, как код, и в какой-то момент требует собственного формата.
Цена: систему надо изучить
Здесь тридцать четыре агента, семьдесят одна команда, семьдесят один скил и почти четыреста страниц документации. Это уже не набор инструкций поверх агента, а полноценный инструмент со своим жизненным циклом, конфигурацией и терминологией.
Ставится он установщиком, который подгоняет файлы под конкретную среду - шестнадцать сред описаны отдельно: