Программист с двадцатилетним стажем перешёл на вайбкодинг не в качестве эксперимента, а как рабочий процесс. Большой продакшен-проект — сотни коммитов, фронтенд и бэкенд — написан почти без участия человека, инструментом выступил Claude Code. Автор подчёркивает: в любом агентном харнессе механики те же, меняются только названия.
Классическая проблема вайбкодинга выглядит так. Простую задачу агент решает за десять минут, но на задаче побольше к середине чата забывает, с чего начал, чинит собственный код и рапортует «готово» про несуществующее. Автор считает, что дело не в модели, а в конфигурации, где одна сессия совмещает архитектора, разработчика, критика и тестировщика. Решение — субагент: markdown-файл, в котором заданы роль (системный промпт), модель и разрешённые инструменты. У каждого субагента свой чистый контекст: он не видит основной разговор, не имеет истории проекта, выполняет задачу, возвращает отчёт и «умирает».
| Роль | Задача |
|---|---|
| архитектор | Проектирует до кода: варианты, компромиссы, план; кода не пишет |
| разработчик | Единственный, кто пишет продуктовый код |
| ревьювер | Read-only; возвращает находки с приоритетами и сценариями поломки |
| тестировщик | Пишет тесты, продуктовый код не трогает |
| безопасник | Смотрит на дифф глазами злоумышленника; объясняет, кто и как эксплуатирует уязвимость |
| dba | Аудит схемы и миграций, когда меняется база |
Главный парадокс — ревьювер находит реальные баги в коде, который тот же набор весов написал десять минут назад и был им доволен. Автор объясняет это тремя механизмами: чистый контекст убирает ощущение владения кодом; промпт «найди, где ломается» сдвигает вероятности LLM в другой режим; а отсутствие инструментов редактирования делает роль фактом, а не пожеланием. В такой труппе шесть ролей: архитектор (проектирует без кода), разработчик (единственный пишет продуктовый код), ревьювер (read-only), тестировщик, безопасник и dba для аудита схемы.
Отдельное правило тестировщика автор называет самым дорогим в опыте: тест, проходящий при сломанном коде, хуже отсутствия теста. Поэтому каждый тест проверяется на убийственность — ломается код, и тест обязан покраснеть. Не менее неожиданна настройка распределения моделей: дешёвую модель следует давать исполнителю, дорогую — критику. Ошибку разработчика поймает ревьювер, ошибку ревьювера не поймает никто. Вторая половина рецепта — скиллы, то есть процесс, записанный в файл. Процесс, живущий в голове человека, автор называет фольклором.

