Краткое содержание
В этом видео обсуждается эффективное использование AI-агентов для разработки кода, так называемый "вайб-кодинг". Подчёркивается, что AI-агенты — это инструменты, которые при правильном использовании могут значительно ускорить и улучшить процесс разработки. Рассматриваются различные подходы к работе с AI, выбор инструментов (IDE, CLI, веб-сервисы), а также этапы подготовки к разработке, включая создание детальных требований, архитектурных правил и планов реализации. Особое внимание уделяется важности код-ревью и применимости данного подхода к большим проектам.
- AI-агенты могут значительно ускорить разработку, но требуют правильного подхода и подготовки.
 - Важно чётко формулировать требования и архитектурные правила для AI-агентов.
 - Код-ревью является ключевым этапом в процессе разработки с использованием AI.
 
Интро
В видео рассматривается эффективное использование AI-агентов в разработке кода, чтобы они приносили пользу и не приводили к созданию некачественного кода. AI-агенты — это инструменты, которые при правильном использовании могут значительно ускорить и улучшить процесс разработки.
Кому подойдёт вайб-кодинг?
Вайб-кодинг не подходит начинающим разработчикам, которые ещё не знают, как писать хороший код и проектировать архитектуру приложений. Использование AI на этом этапе может навредить, так как AI-агенты — это как джуниоры, которым нужно чёткое направление и контекст. Рекомендуется использовать AI-агенты только тем, кто уже может самостоятельно написать тот же код, чтобы ускорить процесс разработки.
3 подхода в работе с AI
Рассматриваются три подхода к работе с AI в коде:
- Использование чат-ботов (например, ChatGPT) для получения готовых фрагментов кода, которые нужно копировать и вставлять в приложение. Плюс этого подхода в том, что разработчик глубже разбирается в коде, минус — дополнительная ручная работа.
 - Автокомплит с помощью AI, который предлагает варианты завершения кода. Этот подход ускоряет ручное написание кода и присутствует во многих IDE.
 - Использование полноценных agentic AI (например, Vinurf), где AI выполняет задачу, а разработчик проверяет результат. Результат не всегда оптимальный и требует переписывания.
 
IDE vs CLI vs Web
Возможности работы с AI-агентами разделены на три группы:
- Полноценные IDE (Fork Visual Studio Code, Cursor, Trite, Inf), которые предоставляют среду разработки с интегрированными AI-агентами. IDE подходят для задач, требующих не только генерации кода, но и его доработки и ревью.
 - Агенты CLI (Anthropic, GLI, Warp), которые выполняют задачи в терминале. Этот подход удобен для делегирования AI несложных задач, особенно при работе в консольных терминалах.
 - Веб-сервисы (V0), которые позволяют создавать проекты с нуля в браузере. Этот подход подходит для небольших проектов, но менее удобен для серьёзной разработки.
 
Подготовка требований
Перед началом работы с AI необходимо подготовить детальное описание проекта, как это делают бизнес-аналитики. Можно написать вручную или использовать ChatGPT для описания сценариев использования приложения. Чем детальнее описание, тем проще будет работать с приложением в дальнейшем. В примере рассматривается создание шортлинкера с описанием API, создания аккаунта, восстановления пароля и статистики по ссылкам.
Правила архитектуры
Важно описать правила архитектуры, которые ограничивают использование определённых технологий и подходов. В примере указано использование NestJS для валидации данных и подхода CQRS. Это позволяет избежать необходимости каждый раз указывать AI, какие инструменты и подходы использовать.
Правила использования
Для обеспечения соблюдения правил архитектуры и бизнес-требований необходимо создать курсор-правила. В настройках курсора создаются новые правила проекта, которые применяются всегда. В этих правилах указывается, где описаны правила архитектуры и бизнес-требования.
План реализации
Для избежания хаотичной реализации необходимо создать план реализации. AI должен составить детальный план реализации, указав этапы. В примере AI анализирует требования и архитектурные правила и составляет план реализации шортлинкера, включая подготовку инфраструктуры, реализацию модуля аутентификации, модуля ссылок и аналитики.
Архитектура проекта
Необходимо добавить документ, в котором хранится и актуализируется архитектура проекта. При изменении проекта нужно вносить изменения в этот документ. После завершения подготовки можно начать реализацию первого этапа проекта. В примере AI настраивает базу данных и устанавливает необходимые зависимости, используя NestJS и другие инструменты.
Код ревью
Основная задача при таком подходе — быть качественным ревьюером. Большую часть времени занимает ревью, исправление и повторное ревью кода, сгенерированного AI. Какие-то части кода проще написать вручную. Важно контролировать архитектуру и требования, чтобы AI поддерживал их в актуальном состоянии.
Использование на больших проектах
Применимость подхода к большим проектам зависит от качества документации. Если проект хорошо документирован, внедрение новых фич проходит безболезненно. Если проект Legacy и нигде не описан, вайб-кодинг не поможет. AI больше подходит для реализации небольших фич, а не для написания целых микросервисов. Важно декомпозировать задачу на этапы и чётко задавать границы и правила для AI.
Аутро
В заключение автор надеется, что видео было полезным, и призывает делиться опытом использования AI-агентов в комментариях.
 
