Ко всем статьям
Вайб-кодинг: как создавать решения и что делать дальше.
ИИ меняет то, как бизнес может подходить к созданию и проверке цифровых продуктов. Раньше в больших компаниях очень сложно было получить финансирование на создание прототипа и этот этап часто приходилось закладывать в пресейл проекта. Сегодня человек без глубокого опыта в разработке может описать, что он хочет получить, задать ограничения, дать ИИ-агенту доступ к необходимым инструментам и получить готовый прототип. Это – вайб-кодинг.
Вайб-кодинг (vibe coding) – подход к разработке, при котором человек, в первую очередь, формулирует, что должно получиться, а всю техническую часть передает ИИ. Этот термин в 2025 году ввел в обиход Андрей Карпаты, бывший руководитель ИИ-направления в Tesla и сооснователь OpenAI.
На практике для вайб-кодинга используются инструменты вроде Claude Code, Codex и их связки. Пользователь задает агенту контекст и рамки проекта, а агент может создавать и изменять код, работать с файлами, запускать команды и настраивать окружение. Это почти как разработка без разработчиков.
Как использовать вайб-кодинг
Из нашего опыта, сейчас вайб-кодинг прочно закрепился в нише прототипирования. Использование ИИ снижает стоимость и время первого шага. Раньше между идеей и работающей демонстрацией существовал довольно дорогой промежуточный этап. Сейчас его во многих случаях можно пройти значительно быстрее, задав необходимые команды ИИ.
Представим, что заказчик хочет получить информационную систему с несколькими дэшбордами, аналитикой и определенной логикой обработки данных. До начала полноценной разработки ему важно понять: действительно ли это выглядит и работает так, как он себе представлял?
В классическом подходе на такой прототип могут уйти недели работы. Причем иногда компания-разработчик еще не получила оплату за проект, а уже инвестировала в его визуализацию значительные ресурсы. У нас были ситуации, когда создание прототипа с дэшбордами и аналитикой требовало более одного миллиона рублей затрат еще до того, как проект переходил в полноценную разработку. Вайб-кодинг меняет эту экономику.
За существенно меньшее время можно собрать рабочую концепцию интерфейса, показать сценарии, проверить гипотезу вместе с заказчиком и получить обратную связь еще до того, как команда начнет строить промышленное решение. И это уже не просто красивая картинка в Figma. Можно показать, как потенциально будет выглядеть и вести себя будущий продукт.
Для проектной деятельности это серьезное преимущество.
Вайб-кодинг и Agile: больше итераций за меньшее время
Один из принципов Agile – получать обратную связь как можно раньше и не строить весь продукт на основании предположений. Проблема в том, что каждая итерация разработки стоит денег и времени. Для проверки каждой гипотезы требуется полноценная разработка, и в этом случае команда может начать экономить на количестве итераций.
Вайб-кодинг позволяет удешевить именно ранние циклы.
Получили идею → быстро собрали прототип → показали пользователю → поняли, что нужно изменить → переделали → снова показали.
Здесь речь идет не о замене разработчиков на ИИ. Сильная сторона использования искусственного интеллекта – быстрое прохождение участка между идеей и технически осязаемым прототипом. Именно поэтому мы видим в вайб-кодинге особенно большой потенциал для прототипирования.
Вайб-кодинг уже выходит за пределы экспериментов
При этом, это не только инструмент для демонстрационных проектов. Внутри компании мы уже используем автоматизацию задач, которые раньше выполнялись вручную. Например, один из сотрудников самостоятельно написал программу для обезличивания документов и их последующей отправки в Frontier.
Есть и другие сценарии:
- анализ встреч,
- преобразование голосовых встреч в текст,
- подготовка материалов и списка задач по итогам обсуждений,
- формирование повестки для будущих встреч,
- автоматизация отдельных внутренних процессов.
Причем важен сам характер этих решений: они появились как ответ на конкретную рабочую задачу. Это – самая практичная сторона вайб-кодинга: человек, который лучше всех понимает проблему, получает возможность самостоятельно собрать инструмент для ее решения. При этом, ему не обязательно быть разработчиком, чтобы создать и в одиночку пользоваться таким готовым решением.
Почему навайбкоденный прототип – еще не готовый продукт
Мы начали сталкиваться с заказчиками, которые приходят уже не только с бизнес-требованием. Они приходят с работающим прототипом. «Мы сделали вот это с помощью ИИ. Теперь хотим встроить это в наши рабочие процессы». И по их мнению, 90% работы уже сделано, остались лишь небольшие доработки. С нашей же стороны, мы знаем, что это далеко не так.
Работающий прототип и готовый промышленный продукт – не одно и то же. Работать может практически что угодно. Промышленный продукт должен обеспечивать:
- предсказуемое поведение,
- безопасность и стабильность работы,
- достаточную производительность при росте нагрузки,
- понятное управление и контроль,
- возможность проверять и воспроизводить результат,
- понятную структуру, которую можно передать другой команде,
- возможность безболезненно поддерживать и развивать решение.
Именно эти характеристики часто не были заложены в первоначальный запрос к ИИ. Потому что человек, который не занимается разработкой профессионально, просто мог не знать, что их нужно задавать.
Проблема башни Дженга
Один из рисков решений, созданных ИИ, можно описать очень простым образом. Представьте башню Дженга. В начале игры она выглядит устойчивой, хоть и состоит из разных брусочков. Если ее не трогать и не играть, она так и будет стоять. Но начав играть, вы не знаете, после устранения какого брусочка посыпется вся башня. Поэтому попытка изменить одну часть системы может привести к неожиданным последствиям в совершенно другом месте.
В разработке это выглядит примерно так: небольшое изменение в одном компоненте неожиданно ломает другой функционал, потому что между ними образовалась скрытая зависимость. И чем больше такой проект растет, тем дороже становится каждое изменение.
В результате компания может оказаться в парадоксальной ситуации: она сэкономила ресурсы на первоначальной разработке, но затем начала тратить сопоставимые ресурсы на поддержку решения, которое сложно понимать и изменять. Именно это делает проблему сложной.
Плохой код не обязательно выглядит как плохой продукт.
Хорошая разработка – это не только то, что работает сегодня
В профессиональной разработке есть важный критерий, который не всегда виден пользователю: насколько легко систему менять.
Архитектура ПО должна предусматривать изменения, потому что здесь много вариативности. Бизнес меняется, появляются новые требования, растет количество пользователей, меняются источники данных. Если систему невозможно безболезненно адаптировать к новым требованиям, она постепенно превращается в технический долг.
Что находится «под капотом»
Когда ИИ создает приложение, снаружи оно может выглядеть совершенно нормально: можно понажимать кнопки, построить дэшборд, получить какой-то результат. Но этого недостаточно, чтобы назвать систему качественно разработанным продуктом. Для нас, как для разработчиков, важна культура разработки. Мы начинаем смотреть, что внутри прототипа, как устроена архитектура, как и где хранятся данные, сколько решение тратит ресурсов, можно ли его изменить, не поломав при этом его производительность, и так далее.
Самый же главный вопрос: кто будет отвечать, если решение «упадет».
ИИ не отвечает за результат
Для бизнеса это один из принципиальных вопросов. Если над системой работает профессиональная команда разработки, существует ответственность. Есть техническое задание, архитектурное решение, документация и конкретные люди, которые отвечают за реализацию решения. ИИ же такой ответственности не несет. Он может что-то поправить, предложить, но перенести ответственность за промышленное решение на ИИ нельзя.
Вайб-кодинг =/= конец классической разработке
Мы не считаем, что появление ИИ и вайб-кодинга означает конец профессии разработчика. Скорее, меняется распределение работы. Вайб-кодинг хорошо подходит там, где нужно быстро:
- проверить гипотезу,
- собрать прототип,
- автоматизировать небольшую внутреннюю задачу,
- показать заказчику возможный сценарий,
- исследовать техническую идею,
- подготовить основу для дальнейшей разработки.
А когда прототип превращается в часть реального бизнес-процесса, требования становятся другими. Тогда появляется необходимость в архитектуре, безопасности, тестировании, документации, интеграциях, мониторинге и ответственности за результат.
И здесь нужен мост между вайб-кодингом и промышленной разработкой.
Этим мостом становятся разработчики, которые понимают: 1. Как сделать рабочий код 2. Как сделать систему пригодной для дальнейшей эксплуатации и развития.
Что делать, если вы уже навайбкодили продукт
Если у вас уже есть приложение, которое вы создали с помощью ИИ – это не означает, что его придется выбросить и начинать с нуля. Такой прототип может стать хорошей отправной точкой для масштабирования, развития решения и привлечения профессиональной команды разработчиков. Но сначала нужно понять, что именно было создано, какая идея была воплощена в прототипе по итогу интерактивной работы.
Отличным завершением очередной вайб-кодинг сессии может стать просьба к ИИ сформировать в том или ином виде спецификацию реализованного прототипа продукта. Для этого можно использовать следующий набор инструкций:
Оба промпта выполняются в том же инструменте и том же проекте, где собирался прототип – иначе модель работает без контекста и выдает правдоподобную выдумку.
Промпт 1. Инвентаризация контекста
Запускается внутри проекта, где велась разработка (репозиторий открыт, история чата доступна). Занимает несколько минут, дает карту источников и раннее понимание, что вообще можно восстановить.
| Роль: системный аналитик. Задача — инвентаризация контекста проекта перед восстановлением функционального описания. Ничего не описывай и не проектируй. Только опиши, что физически есть в доступе. Это подготовительный шаг.
ИСТОЧНИКИ ДЛЯ ПРОВЕРКИ: — история переписки по этому проекту (промпты, правки, обсуждения); — текстовые файлы: README, PRD, plan, spec, todo, changelog, CLAUDE.md, AGENTS.md, .cursorrules, папка docs/ и любые другие .md и .txt в репозитории; — код: экраны и роуты фронтенда, серверные эндпоинты, схема БД, миграции, сиды, конфигурация, тексты промптов к моделям, переменные окружения (только имена, без значений). ВЫВЕДИ СЛЕДУЮЩЕЕ: 1. ИСТОРИЯ ПЕРЕПИСКИ Доступна целиком / частично / недоступна. Если доступна: примерный объём, дата или порядковый номер первого доступного сообщения, есть ли начальный бриф в первых сообщениях, видны ли обрывы и потерянные куски. 2. ТЕКСТОВЫЕ ФАЙЛЫ Список найденных файлов с путями. По каждому — одна строка: что в нём и кем он выглядит написанным (человеком или сгенерирован моделью по ходу работы). 3. КОД: СТРУКТУРА — экраны / страницы / роуты фронтенда — полный список; — серверные эндпоинты — полный список с методами; — таблицы базы данных — список с количеством полей; — внешние сервисы и библиотеки, влияющие на функциональность. Без описания логики, только перечни. 4. ПРИЗНАКИ НЕЗАВЕРШЁННОСТИ Где в коде фиктивные данные, хардкод, заглушки, TODO, FIXME, закомментированные блоки, экраны без обращения к API, эндпоинты, которые никто не вызывает. Список с путями. 5. ЗОНЫ ТИШИНЫ Чего в источниках нет вообще. Проверь минимум: аутентификация и права доступа, многопользовательская работа, история изменений и аудит, обработка ошибок, тесты, нагрузки и объёмы данных, безопасность и хранение чувствительных данных. 6. ОЦЕНКА ВОССТАНОВИМОСТИ Что из описания продукта реально восстановится по этим источникам, а что не восстановится ни при каком усилии. Честно и коротко. ПРАВИЛА: — Только факты из доступного контекста. Нет — пиши «не найдено». — Ничего не додумывай, не предполагай и не описывай замысел. — По-русски. Списками, без прозы. Сохрани результат в context-inventory.md |
Промпт 2. Восстановление функционального описания продукта
Запускается в том же сеансе, следом за первым, чтобы инвентаризация оставалась в контексте.
| Роль: системный аналитик. Задача — восстановить функциональное описание продукта из фактического контекста проекта. Это реверс-инжиниринг, а не проектирование. Опирайся на инвентаризацию из context-inventory.md и на те же источники: история переписки, текстовые файлы проекта, код.
ПРАВИЛА (соблюдать во всех разделах): — Каждое содержательное утверждение помечай источником в конце строки: [переписка] / [код] / [файл] / [выведено]. [выведено] — логический вывод, а не факт. Используй честно и редко. — Нет данных — пиши «НЕ ЗАДАНО» и иди дальше. Пустой раздел лучше правдоподобного. Не достраивай логику по аналогии с типовыми системами и отраслевыми практиками. — Отличай замысел от реализации. Сказанное в переписке не равно сделанному в коде. Где расходится — говори прямо. — Не сглаживай противоречия. Требования менялись — покажи обе версии и укажи, какая попала в код. — Терминологию предметной области бери из источников дословно, не заменяй своими словами и не унифицируй. — Без маркетинга, преимуществ, целевой аудитории, roadmap и рекомендаций по улучшению. — По-русски, деловым языком. Полнота важнее краткости. РАЗДЕЛЫ: 0. ГЛОССАРИЙ Термины предметной области из источников. Определение — как его даёт заказчик; если не объяснялось — как термин используется, с пометкой «определение не дано, значение выведено из употребления». Отдельно — сокращения, коды, названия документов и форм. 1. ОБЗОР ПРОДУКТА Какую проблему решает, в каком контексте применяется, назначение системы, какой результат получает пользователь на выходе. Только формулировки из источников. 2. ПОЛЬЗОВАТЕЛИ, РОЛИ И ПРОЦЕСС Процесс до внедрения системы и после — если обсуждались. Роли: кто работает, что делает, что доступно. Если ролевая модель в коде отсутствует — укажи это отдельно, даже если роли упоминались в переписке.
3. СЦЕНАРИИ ИСПОЛЬЗОВАНИЯ Сквозной путь от входа до получения результата. Основные сценарии по ролям: шаги, ветвления, откаты назад, что считается успешным завершением, что происходит при ошибке.
4. ИНФОРМАЦИОННАЯ МОДЕЛЬ Сущности, ключевые атрибуты, связи, кардинальность. Статусная модель: статусы, переходы, что их запускает. Источники данных: загрузка файлов (форматы), ручной ввод, внешние системы. Сверь сущности из переписки со схемой БД и укажи расхождения. 5. КАРТА ФУНКЦИЙ Модули и функции внутри них. По каждой функции статус: РЕАЛИЗОВАНО / ЧАСТИЧНО / ЗАГЛУШКА / ТОЛЬКО ОБСУЖДАЛОСЬ. Статус определяй по коду, не по переписке и не по внешнему виду интерфейса. Приоритеты указывай, только если они явно обсуждались. Сам не расставляй. 6. ЭКРАНЫ И НАВИГАЦИЯ Карта переходов между экранами. По каждому экрану: назначение, отображаемые данные, доступные действия, источник данных (эндпоинт или хардкод), статус РАБОТАЕТ / ЧАСТИЧНО / МАКЕТ. МАКЕТ — верстка без реального обращения к данным. Проверяй по наличию вызова API в коде, а не по наличию кнопки. 7. БИЗНЕС-ПРАВИЛА И ОГРАНИЧЕНИЯ Ключевой раздел. Все содержательные правила предметной области: формулы расчётов, условия проверок, что считается ошибкой, что блокирует дальнейшие действия, а что является предупреждением, обязательные и необязательные поля, округления, лимиты. Формат: правило | формулировка | где закреплено | источник. Правила, произнесённые в переписке, но отсутствующие в коде, вынеси в конец раздела отдельным списком. 8. НЕФУНКЦИОНАЛЬНЫЕ ТРЕБОВАНИЯ Только реально обсуждавшееся или видимое в коде: объёмы данных, ограничения на файлы, время обработки, параллельная работа, аутентификация, права доступа, аудит и история изменений, хранение чувствительных данных, отраслевые и внутренние регламенты. Тема не поднималась — так и напиши. Не выводи требования из общих соображений, не пиши типовые формулировки. 9. ИНТЕГРАЦИИ И ОБМЕН ДАННЫМИ Смежные системы и сервисы, форматы на входе и выходе, выгружаемые и печатные формы, направление потоков, способ обмена. Отдельно — обсуждавшееся как будущая интеграция. 10. ПРОБЕЛЫ И ПРОТИВОРЕЧИЯ 10.1 Обсуждалось, но не реализовано — формулировками, близкими к оригинальным. 10.2 Противоречия: где требования менялись, где сказанное расходится с реализованным. 10.3 Недоопределённое: где логика оборвана или задана частично. 10.4 Темы, отсутствующие в источниках полностью. ЗАВЕРШЕНИЕ: Укажи фактически использованный контекст: история переписки целиком, частично или недоступна; какие файлы прочитаны; какие части кода просмотрены, какие нет. Оцени распределение: какая доля описания опирается на код, какая на переписку, какая выведена. Если история переписки недоступна — напиши это первой строкой всего ответа, до раздела 0. Сохрани результат в product-brief.md |
Получив такой документ (product-brief), разработчик может разобраться в существующем решении, гораздо оперативнее, определить его техническое состояние, найти архитектурные риски и понять, что можно использовать, что необходимо переработать, а что проще реализовать заново.
Что дальше?
Вайб-кодинг позволяет пройти путь от идеи до работающего прототипа гораздо быстрее. И это хорошая новость для бизнеса: теперь не обязательно вкладывать значительные ресурсы в разработку только для того, чтобы проверить, работает ли идея на практике. Но если прототип оказался действительно полезным, возникает следующий вопрос: как превратить его в решение, которым можно пользоваться в реальной работе?
Если вы самостоятельно создали с помощью ИИ приложение, сервис, внутренний инструмент или автоматизацию и теперь хотите встроить его в существующие бизнес-процессы, не обязательно начинать проект заново. Пришлите нам то, что у вас уже есть: прототип решения, исходную и/или восстановленную документацию и другие значимые артефакты проекта.
Мы разберемся, что именно было создано, как оно устроено и что потребуется, чтобы воспроизвести решение, сделать его поддерживаемым и интегрировать в рабочую инфраструктуру.
То, что вы навайбкодили, не обязательно оставлять прототипом. Это можно превратить в часть реального бизнес-процесса. И мы можем в этом помочь.