Spec Driven Development с авто-генерацией документации из сессий✦
От скепсиса к практике✦
Автор — ведущий подкаста «Организованное программирование» — ещё пару-тройку
месяцев назад считал Spec Driven Development (SDD) избыточно сложным:
документация долго пишется, вечно отстаёт от кода, обвешана правилами и почти
нечитаема — «после одного-двух экранов такого текста человеку становится плохо».
Перелом произошёл, когда он начал использовать набор скилов Мэтта Покока
(grill-me и grill-with-docs) — по его словам, близких по духу к OpenSpec и
уже собравших около 169 тыс. звёзд на GitHub.
Как это работает✦
Ключевая идея, которую подчёркивает автор: спеки не нужно писать руками. Скилы
переворачивают привычную схему — не разработчик брифует агента, а агент ведёт
структурированный опрос, задавая по одному точному вопросу за раз и предлагая
собственный вариант ответа. Во время и после каждой сессии решения фиксируются,
и проект постепенно обрастает базой знаний: grill-with-docs ведёт глоссарий
предметной области (единый язык, файл CONTEXT.md) и пишет короткие ADR в
docs/adr/ для решений, которые трудно откатить или которые неочевидны без
контекста. Это не один mdшник, а структура из множества файлов — требования,
инварианты, бизнес-логика, архитектурные решения.
Наш опыт✦
Команда автора микроскопическая, и раньше подобные процессы были для неё «слишком замудрёнными» — проще было договориться устно. Со скилами документация получается «практически на халяву»: она рождается из обычных рабочих обсуждений с агентом, а не из отдельного изнурительного написания спек. Автор отмечает, что сам никогда прежде не писал ADR — теперь они генерируются и пополняются автоматически. Всё это коммитится и через git попадает к коллегам; часть подхода используется и в открытых проектах.
(Контекст из внешних источников, не отменяющий опыт автора): OpenSpec решает ту
же задачу более формализованно — заводит папку openspec/ с proposal, specs,
design и tasks, использует ключевые слова RFC 2119 (MUST/SHOULD/MAY) и сценарии
GIVEN/WHEN/THEN. Скилы Покока добиваются похожего результата через интервью и
авто-документацию, оставаясь легче.
Открытые вопросы✦
Автор честно оговаривается, что опыт пока небольшой: как система поведёт себя при росте числа доменов, не начнёт ли «тупить» на объёме — вопрос без ответа. Но из скептика SDD он превратился в его сторонника — прежде всего потому, что документация теперь появляется из сессий сама, а не ценой ручного труда.