Схемы и валидация
Поля пяти типов: строка, число, булево, дата, JSON. Запись, которая не проходит схему, не попадает в базу — агенту возвращается список конкретных полей.
Агент объявляет сущности, получает готовый CRUD REST API и заливает
статический билд — сайт живёт на {проект}.vibemd.ru с уже
подключённым бэкендом и HTTPS. Своего сервера, панели управления и
DevOps не нужно.
Бот заводит аккаунт по одному сообщению и выдаёт токен. Дальше токен
отдаётся агенту — Claude Code, Cursor, Codex, любому, у кого есть
curl.
Четыре шага от пустой папки до работающего сайта с базой. Всё — обычные HTTP-запросы.
@vibemd_bot в Telegram: /start, email — в ответ личный токен аккаунта. Он остаётся у человека и в браузер не попадает никогда.
Проект — это отдельный тенант: свои данные, свои ключи, свой поддомен. В ответ приходят admin-ключ, public-ключ и адрес сайта.
# токен аккаунта
curl -X POST https://api.vibemd.ru/v1/projects \
-H "Authorization: Bearer $ACCOUNT" \
-d '{"name":"Мой лендинг"}'
Сущность описывается списком полей — и сразу получает CRUD с фильтрами, сортировкой и пагинацией. Записи проверяются по схеме до записи в базу.
curl -X POST https://api.vibemd.ru/v1/entities \
-H "Authorization: Bearer $ADMIN" \
-d '{"name":"lead","public_access":"append",
"fields":[{"name":"name","type":"string","required":true},
{"name":"phone","type":"string","required":true}]}'
Архив отправляется одним запросом и сразу становится живой версией. Адрес API и public-ключ подставляются в HTML при отдаче, так что в билде их нет и ротация ключа не требует передеплоя.
tar czf - -C ./dist . | curl -X POST https://api.vibemd.ru/v1/deployments \
-H "Authorization: Bearer $ADMIN" --data-binary @-
# → https://moi-lending.vibemd.ru
Ровно то, из чего обычно состоит бэкенд небольшого сайта, — и ничего сверх того.
Поля пяти типов: строка, число, булево, дата, JSON. Запись, которая не проходит схему, не попадает в базу — агенту возвращается список конкретных полей.
Чтение, создание, замена, частичное обновление, удаление. Фильтры eq, ne, gt, gte, lt, lte, contains, in, сортировка и пагинация в query-строке.
Admin — у агента, public — в браузере. Для каждой сущности отдельно задаётся, что позволено public-ключу: ничего, чтение, только добавление или полный доступ.
У сайта могут быть свои пользователи с паролем и сессионным токеном. Владелец видит всё — так на статике получается админка, отдельного бэкенда для неё не нужно.
Каждый деплой — новая версия. Откат переключает указатель на старую и действует со следующего запроса: ничего не собирается и не заливается заново.
Поддомен выдаётся при создании проекта, сертификат выпускается на первый же запрос. Настраивать DNS и продлевать сертификаты не нужно.
В ответе — код, список проблемных полей и подсказка следующего шага: missing index.html in build root, а не «500». Агент исправляется сам, без человека.
Данные проекта отделены на уровне запросов к базе, ограничения по количеству записей, объёму и частоте запросов — на каждый проект свои.
Эту страницу можно не читать: рядом лежит то же самое в машинном виде. Точка входа одна — базовый URL, дальше сервис описывает себя сам.
Полное руководство: порядок действий, примеры curl, частые ошибки и чек-лист перед сдачей. Отдаётся как text/markdown.
Машиночитаемое описание API: все методы, типы полей, операторы фильтров, формат ошибок и правила деплоя — в одном JSON.
Короткая выжимка для моделей: что это за сервис, где взять доступ и по каким адресам лежит остальное.
# с чего начать, если у тебя есть только домен
curl -s https://api.vibemd.ru/v1/ | jq .
curl -s https://agent.vibemd.ru/agent.md
Значения по умолчанию. Для конкретного проекта их можно поднять — лимиты хранятся на самом проекте.
| Проектов на аккаунт | 5 |
|---|---|
| Сущностей в проекте | 25 |
| Записей в проекте | 50 000 |
| Хранилище | 256 МБ |
| Размер билда | 100 МБ |
| Запросов в минуту | 600 |
Бэкенд как сервис (BaaS) для сайтов, которые пишет AI-агент: база с REST API, авторизация посетителей и хостинг статики на своём поддомене. Главный пользователь — агент, поэтому всё доступно через HTTP и описано текстом, а не кнопками в панели.
Нет. Проект создаётся одним запросом, данные хранятся на стороне сервиса, статика раздаётся с HTTPS. От вас — только собранный фронтенд.
Написать @vibemd_bot в Telegram: команда /start, затем email. Бот заведёт аккаунт и выдаст токен — его нужно передать агенту вместе со ссылкой на инструкцию. Токен показывается один раз; потерянный заменяется командой /token.
Панели нет — это осознанное решение: всё, что умеет сервис, делается запросами к API, и потому доступно агенту. Человеку остаётся сам сайт: владелец входит на нём по логину и паролю и читает данные прямо на странице.
Сейчас сайт живёт на поддомене вида {проект}.vibemd.ru, сертификат выпускается автоматически. Свои домены в текущую версию не входят.
Ничего: данные живут отдельно от билда. Каждый деплой — отдельная версия, вернуться на предыдущую можно одним запросом, и это действует со следующего обращения к сайту.
На серверах в России. Внешних облачных сервисов в схеме нет.