24/7 — Клодик. Мой братан Клодик

Вот примерно с таким лицом я хожу последнее время (фотка сгенерена, но вайб передан на 100 процентов).

Отчасти виноваты два параллельных хакатона, но главная причина в другом: я почти все время занимаюсь Agentic Dev. Да, модное слово. Но все же лучше, чем вайбкодинг.

С начала года я пытаюсь выстроить идеальный для себя процесс разработки с агентами. Путь получился таким.

1. Армия автономных агентов

Сначала меня захватила идея: я просто создаю задачи, а агенты сами все делают. Начал тестировать Paperclip и Vibe Kanban. В голове уже была картинка: я гуляю и играю в падел, а дружная армия агентов закрывает мои тикеты.

Качество меня не устраивало, и со временем я понял, что не готов отдавать агентам весь контроль над кодом и процессом.

Возможно, я оказался слишком демократичным тимлидом. А возможно, сам пока не готов навсегда расстаться с кодом.

Замок из песка рассыпался, и я спустился на уровень ниже.

2. Написал PRD — получил ревью на полдня

Дальше я попробовал подход, который подсмотрел у Matt Pocock: пишешь PRD, агент делает, ты ревьюишь.

Стало лучше, но между PRD и ревью остается черный ящик, и это не дает мне покоя. Стоит недоработать PRD, и на выходе получаешь ревью, над которым сидишь так долго, что хочется выйти в окно.

Можно дробить PRD на мелкие задачи. Но тогда тебя накрывает поток этих задач. Где-то ревьюишь внимательно, где-то веришь коду на слово, а в итоге все равно приходится регулярно разгребать последствия.

3. Спека как источник правды

Раз проблема в недоработанном PRD, я решил зайти с другой стороны и попробовал SDD (spec-driven development) на OpenSpec.

Идея красивая: спецификация описывает текущее состояние системы и становится источником правды вместо кода. Причем не только в момент написания, а постоянно.

На практике упираешься в выбор. Можно заводить спеку под каждую задачу, даже под мелкий баг или правку, которая хоть немного меняет поведение. Это быстро превращается в бюрократию.

А можно этого не делать, и тогда у тебя два источника правды. Для их расхождения даже придумали термин spec drift. Для агента устаревшая спека хуже, чем никакая: он уверенно делает по ней то, чего давно уже нет.

Поэтому я все чаще ловлю себя на мысли, что лучший источник правды — все-таки код. И я в этом не одинок. Лорен Тан из Cursor прямо пишет в README своего pstack: «the best spec is code». Код не может устареть относительно самого себя.

А спека и PRD хороши на старте задачи, чтобы записать, что именно мы хотим сделать. Как вечная документация они не годятся.

Документацию при этом выкидывать не надо. ADR можно и нужно хранить: код покажет, что сделано, но не расскажет, почему выбрали именно так.

А вот бесконечные PRD с тоннами кода внутри — ужас: токены горят, контекст забивается, а иногда агент правит PRD больше, чем сам код.

4. Тот же процесс, но под контролем

Звучит так, будто я вернулся ко второму этапу. PRD никуда не делся, но поменялось главное: мое место в процессе.

Раньше я отдавал PRD и ждал результат, а весь контроль сводился к ревью в конце. Теперь черного ящика нет: я иду с агентом шаг за шагом (план → билд → проверка) и вмешиваюсь по ходу, а не разгребаю последствия.

Могу параллельно вести пару сессий, но в каждую регулярно заглядываю и, если агент свернул не туда, останавливаю его сразу, а не через три часа.

Панацеей это не назову: устаешь примерно так же. Зато потом не приходится рефакторить полрепозитория.

В итоге я прошел путь от лени, когда пытался отдать все автономным агентам, через PRD и спеки — к работе в паре.

Клодик мне братан, но не тимлид.

А вы на каком этапе? Доверяете агентам полную автономию или тоже держите руку на тормозе?

Кстати, pstack, OpenSpec, skills — это уже про инструменты, отдельная большая тема. Про то, чем пользуюсь сам и что из этого правда помогает, расскажу в следующем посте.

24/7 — Клодик. Мой братан Клодик | Сетка — социальная сеть от hh.ru