Vibe Coding: ИИ-агент как архитектор. Это возможно, но ...

Коллеги, продолжаю делиться опытом плотной работы с кодогенерирующим ИИ-агентом. После прошлого поста было много вопросов: а может ли он DDD, Clean Architecture, TDD? Давайте разбираться.

Плюсы (реальные, но с условиями):

Скорость прототипирования: Каркас проекта на десятки тысяч строк — за выходные. Полноценный MVP — дело дней. Но! 55к строк достичь без подготовки не выйдет. Нужно правильно готовить промпты, разбивать задачи, настраивать контекст.

Он может и продвинутые практики: Да, он может применять DDD, Clean Architecture, TDD, если ему детально рассказать, дать точные требования и если задача умещается в его контекстное окно. На свежем проекте, который создаётся с нуля по чёткому ТЗ, — он справляется круто.

Идеальный исполнитель рутины: Генерация тестов, документации, конфигов, интеграция библиотек — его стихия.

«Мыслит» контекстом: В отличие от примитивных генераторов, этот агент пытается понять задачу и сохранять целостность.

Минусы (критические и архитектурные):

Скатывание в хаос на пределе: Если задача слишком объёмная, запутанная или он действует на пределе контекста (даже 128К токенов), качество резко падает. Он начинает генерировать говнокод: плодить дубли, кастить в any, создавать цикличные зависимости.

Проблема — в архитектуре LLM: Это не просто баг, а аппаратно-архитектурное ограничение текущих моделей. Они не держат в фокусе всю сложную систему. Это требует от вас правильного архитектурного проектирования и деления системы на независимые слои и модули, которые агенту будет по зубам.

Кошмар рефакторинга: Хуже всего — попросить его переписать существующий спагетти-код на Clean Architecture. Он начинает ломаться на костылях, теряет нить, создаёт ещё более странные гибриды. Постепенный рефакторинг для него — сверхсложная задача.

Требует вашего максимального включения: Это не «нажал кнопку — получил архитектуру». Это активный диалог, где вы — главный архитектор, а он — исполнитель, который постоянно нуждается в валидации и направлении. Без вашего контроля он оптимизирует не за качество, а за «чтоб компилировалось».

Золотая середина и выводы:

ИИ-агент — это мощный усилитель ваших компетенций, а не волшебный архитектор.

Идеальная схема работы:

Вы проектируете: Делите систему на модули, продумываете контракты между слоями, готовите детальные промпты.

Агент реализует: Пишет код по вашим спецификациям внутри этих модулей, генерирует тесты и документацию.

Вы контролируете и интегрируете: Сводите модули вместе, проводите ревью, корректируете курс.

Стоит ли использовать? ✅ Да, если: У вас есть время и экспертиза, чтобы ставить чёткие задачи, делиться на модули и активно руководить процессом. Для нового проекта с ясной архитектурой — это мощный рывок. ❌ Нет, если: Вы ждёте, что он сам придумает и реализует красивую архитектуру в legacy-коде или огромной системе. Без вашего руководства он утонет в деталях.

Главный инсайт: Потолок качества системы, сгенерированной агентом, упирается в потолок вашего архитектурного видения и навыков управления им. Это сложный, но невероятно продуктивный инструмент в руках подготовленного инженера.

P.S. У меня большой опыт в проектировании таких процессов: как правильно делить систему для ИИ, готовить промпты, настраивать контекст и контролировать результат. Если вам нужно не просто сгенерировать код, а построить качественную систему с помощью ИИ или привести в порядок уже сгенерированное — обращайтесь. Поделюсь наработанными практиками.

Контакты для обсуждения: maxbogus@vk.com | Telegram: @maxbogus Канал: https://t.me/aiscepticism