Как работает VibeCraft
Основной источник актуального кода проекта и гарантированно сохраненных изменений — репозиторий в SourceCraft. Для работы с проектом VibeCraft использует связанную с ним удаленную среду разработки SourceCraft Spaces. В ней находится рабочая копия репозитория, с которой работает агент. В этой же среде запускается приложение и формируется его предварительная версия.
Как обрабатывается задача
- Перед началом задачи VibeCraft обновляет рабочую копию до актуального состояния целевой ветки.
- Агент изменяет файлы, запускает проверки и приложение. Для запуска приложения используется конфигурация Docker Compose из проекта.
- После успешного выполнения задачи агент создает коммит и отправляет результат в SourceCraft.
Важно
Гарантированно сохраненным считается только результат, который появился в репозитории SourceCraft. Изменения, оставшиеся только в удаленной среде разработки, могут быть потеряны при обновлении рабочей копии, после ошибки, остановки задачи или превышения времени выполнения.
Ограничения и возможные проблемы
Задача выполняется не более 30 минут
Если агент не завершил работу за 30 минут, результат может не попасть в SourceCraft.
Совет
Разбейте большую задачу на несколько небольших и после завершения каждой проверяйте наличие коммита в репозитории.
Почему агент может не учесть новый коммит
Если вы самостоятельно отправили изменения в репозиторий, сообщите об этом в чате VibeCraft. Укажите коммит или измененные файлы, которые агент должен учесть. Изменения, которые существуют только в рабочей копии удаленной среды, недоступны в чате.
Параллельное изменение файлов может привести к конфликту
Важно
Не изменяйте одни и те же файлы в целевой ветке, пока агент выполняет задачу. Иначе при отправке результата может возникнуть конфликт, и изменения агента не попадут в SourceCraft. Восстановить частичные изменения из удаленной среды самостоятельно нельзя.
Если возник конфликт, повторите задачу после того, как убедитесь, что целевая ветка содержит все нужные изменения.
Остановка задачи не гарантирует сохранение или откат
Чтобы остановить активную задачу, в блоке разработчика нажмите
Важно
Остановка прекращает выполнение, но не гарантирует сохранение частичного результата, создание коммита или возврат проекта в исходное состояние.
Как безопасно совмещать работу в VibeCraft и через Git
- Перед запуском задачи отправьте необходимые изменения в SourceCraft.
- Сообщите в чате VibeCraft о самостоятельно добавленном коммите.
- Не изменяйте те же файлы в целевой ветке, пока агент выполняет задачу.
- После завершения убедитесь, что итоговый коммит появился в SourceCraft.
- Храните важные данные в репозитории или внешнем хранилище, а не только в удаленной среде.
Если итогового коммита нет в SourceCraft, проверьте, не истекло ли время выполнения и не изменялась ли целевая ветка параллельно. Затем отправьте в репозиторий свои актуальные изменения, сообщите агенту о них в чате и повторите задачу.
Технические особенности
Для работы VibeCraft используются следующие компоненты SourceCraft и Yandex Cloud:
- Ансамбль больших языковых моделей Code Assistant для проработки концепции приложения, написания и тестирования кода.
- Удаленная среда разработки SourceCraft Spaces с рабочей копией репозитория для работы агента.
- Репозиторий SourceCraft для хранения кода.
- CI/CD SourceCraft для предварительного просмотра приложения и автоматизации развертывания.
- Реестр Yandex Container Registry для хранения Docker-образов с приложением.
- Контейнер Yandex Serverless Containers для запуска приложения.
- Бессерверная база данных Yandex Managed Service for YDB для хранения состояния приложения.
- Секрет Yandex Lockbox для хранения чувствительных данных.
Примечание
При привязке собственного домена дополнительно создается API-шлюз Yandex API Gateway. Если управление доменом делегировано Yandex Cloud DNS, также создаются DNS-зона и ресурсные записи.
Ресурсами Yandex Cloud можно управлять из репозитория SourceCraft через безопасное сервисное подключение.