Работа с ИИ-агентами
FlutterFlow CLI позволяет создавать и править приложения из терминала любым ИИ-агентом — Claude Code, Gemini CLI, Codex или другим MCP-совместимым клиентом. Вы описываете задачу словами, агент планирует и вносит изменения, а результат становится обычным проектом FlutterFlow, который открывается в визуальном редакторе.
Источник истины — сам проект FlutterFlow. CLI — лишь способ править его с локальной машины.
Для Codex есть отдельный раздел — с установкой плагина, безопасной авторизацией и разбором частых проблем.

Как это устроено
Команда flutterflow ai init создаёт локальное рабочее пространство — папку с готовым файлом настройки MCP, указывающим на сервер FlutterFlow. Запущенный в этой папке агент находит сервер и получает набор инструментов для работы с облаком FlutterFlow:
- Вы формулируете задачу.
- Агент планирует изменения и вызывает инструменты сервера MCP.
- Сервер применяет изменения к проекту FlutterFlow.
- Вы проверяете результат в визуальном редакторе.
Рабочее пространство — просто папка на диске; сам проект лежит на сервере FlutterFlow.
Model Context Protocol — открытый стандарт, позволяющий ИИ-агентам вызывать внешние инструменты. Сервер FlutterFlow AI MCP открывает агенту API проекта, чтобы тот мог читать и менять его от вашего имени.
- CLI не заменяет визуальный редактор. Для большинства задач вёрстки редактор быстрее. CLI нужен там, где важны точность, повторяемость и автоматизация.
- CLI не запускает приложение. Он создаёт проект FlutterFlow, а запускать и проверять его вы будете в редакторе.
- Установленный FlutterFlow CLI — см. установку.
- Ключ API FlutterFlow — см. создание токена.
- MCP-совместимый агент на вашей машине: Claude Code, Gemini CLI или Codex.
- Идентификатор проекта FlutterFlow — если правите существующий проект.
Плагин FlutterFlow для Claude Code сам поставит CLI и настроит ключ API — это альтернатива ручной настройке ниже.
Создание рабочего пространства
Откройте терминал в папке, где должно появиться рабочее пространство, и выполните:
flutterflow ai init
По умолчанию команда работает с рабочим окружением FlutterFlow. Для другого окружения укажите его явно:
flutterflow ai init --env beta
flutterflow ai init --env enterprise-india
Запустится интерактивный мастер:
- Имя рабочего пространства — короткое, строчными буквами, без пробелов. Оно же станет именем папки.
Workspace name Directory to scaffold the FlutterFlow AI workspace in. > mindfly - Идентификатор существующего проекта. Нажмите Enter, чтобы создать новое приложение, или вставьте идентификатор, чтобы привязаться к существующему.
Existing project ID to edit (press Enter to create a new app) > - Ключ API FlutterFlow. Вставьте его и нажмите Enter — ввод скрыт.
- Регистрация сервера MCP. Мастер просматривает
PATHи предлагает зарегистрировать сервер у каждого найденного агента — Claude Code, Gemini CLI, Codex. ОтвечайтеYдля тех, которыми собираетесь пользоваться.Register FlutterFlow AI MCP server with coding CLIs Detected: claude, gemini, codex Register with claude? [Y/n] - Подтверждение. Мастер покажет сводку — проверьте и нажмите Enter.
Ready to create: Workspace: mindfly Project ID: (none, unlinked) API key: set (***abcd) Base URL: https://api.flutterflow.io (built-in for prod) MCP CLIs: claude, gemini, codex Proceed? [Y/n]
В папке появятся файлы настройки — по одному на каждого зарегистрированного агента:
.mcp.jsonдля Claude Code;.gemini/settings.jsonдля Gemini CLI;.codex/config.tomlдля Codex.
Запуск агента
Перейдите в папку рабочего пространства и запустите агента. В примере это Claude Code, но схема одинакова для всех.
Пользователям Codex с установленным плагином FlutterFlow нужно начать новую задачу Codex из этой папки — см. раздел про Codex.
cd mindfly
claude
При первом открытии папки агент обнаружит новый сервер MCP и попросит подтверждения. Формулировка зависит от агента; у Claude Code она выглядит так:
New MCP server found in .mcp.json: flutterflow_ai
MCP servers may execute code or access system resources.
All tool calls require approval.
> 1. Use this and all future MCP servers in this project
2. Use this MCP server
3. Continue without using this MCP server
Выберите первый вариант — тогда сервер (и те, что появятся в этой папке позже) больше не будет спрашивать разрешения.
Без подтверждённого сервера MCP агент сможет править локальные файлы, но не сможет отправить изменения в проект FlutterFlow.
Создание приложения
Опишите, что хотите получить:
> create a minimalist meditation app
Формулировка свободная: a recipe-sharing app with a social feed, a habit tracker with streaks, a tip calculator for restaurants. Агент спланирует приложение, соберёт изменения, отправит их во FlutterFlow через сервер MCP и отчитается. Откройте проект в браузере — результат будет в визуальном редакторе.
Дальше рабочее пространство привязано к созданному приложению, и следующие запросы в том же сеансе считаются правками, а не новой генерацией. Агент сообщит об этом примерно так:
The project is bound, so I'll switch to edit mode.
Let me check the workspace and read the edit template.
С этого момента действуют те же правила, что и при правке существующего проекта.
Правка существующего проекта
Идентификатор проекта. Откройте проект в редакторе FlutterFlow — это часть адреса после /project/.
Всё так же, как при создании нового, с одним отличием: на вопрос об идентификаторе существующего проекта вставьте свой вместо нажатия Enter:
Existing project ID to edit (press Enter to create a new app)
> mindfly-c9lbgr
Рабочее пространство привязано к проекту. Перейдите в его папку, запустите агента и опишите задачу: «добавь экран профиля», «смени основной цвет на бирюзовый», «подключи форму входа к Firebase Auth». Агент прочитает текущее состояние проекта, спланирует изменение и отправит его через сервер MCP.
Copy AI Selector
Щёлкните по виджету в редакторе правой кнопкой и выберите Copy AI Selector — в буфер попадёт точный адрес виджета. Вставьте его в запрос, и агент будет знать, какой именно виджет смотреть или менять.
Незаменимо, когда на странице повторяющиеся виджеты, вложенные компоненты или одинаковые подписи: описать нужный словами в таком случае почти невозможно.
Одновременная работа с редактором
Править проект визуально, пока работает агент, можно, но запись идёт по схеме оптимистичной блокировки: при отправке сервер сверяет время последнего изменения проекта с тем снимком, который был у агента. Если за это время проект менял кто-то ещё — вы, коллега или другой агент, — отправка отклоняется. Агент перечитает актуальное состояние и попробует снова, при необходимости перепланировав работу.
Ничего не затирается молча, но при одновременной работе повторные попытки будут случаться.
Что агент может править
Может:
- страницы, компоненты, состояние приложения, тему, навигацию, блоки действий, события приложения;
- собственные функции, действия, виджеты, классы и перечисления;
- эндпоинты API, запросы, свои типы данных и перечисления;
- зависимости из pub и библиотек, токены оформления, каталог GenUI, подключение Firebase Auth.
Не может:
- всё, что вне проекта FlutterFlow: запуск приложения, публикацию, создание проектов Firebase, работу с секретами, отправку в App Store.
Обновление устаревшего контекста
Если после последнего чтения проекта вы правили его визуально, снимок у агента устарел. Два способа это исправить:
- Попросить агента. Большинство агентов сами вызывают инструмент
refresh-context, когда замечают расхождение, но можно сказать прямо: «обнови контекст проекта». - Сделать это командой.
flutterflow ai context-checkпокажет, отстал ли локальный снимок, аflutterflow ai refresh-context <project-id>подтянет актуальное состояние.
Полный список — в разделе инструментов MCP.
Живые сессии
Live Sessions позволяют агенту менять запущенное приложение и сразу показывать результат на подключённом устройстве. Так удобно доводить экраны до ума: попросить поправить, посмотреть логи, перезапустить с горячей перезагрузкой, снять скриншот — и тут же увидеть, что получилось.
Запустите приложение из десктопного приложения FlutterFlow на устройстве или симуляторе, затем активируйте агента. Убедитесь, что сессия началась, и дальше работайте запросами.
Десктопное приложение и запущенное приложение должны оставаться открытыми, пока нужны живые обновления.
Ветки и откат
CLI работает с любой веткой проекта. У каждой ветки свой адрес, а значит и свой идентификатор проекта: откройте нужную ветку в редакторе, скопируйте идентификатор из адреса и вставьте его в мастер flutterflow ai init.
Для отката используйте историю версий проекта в визуальном редакторе — ту же, что и для обычных правок. Каждая отправка агента становится там отдельным коммитом с тем сообщением, которое агент указал.
Переключение между проектами
Рабочее пространство привязано к одному проекту. Для другого проекта выполните flutterflow ai init в новой папке. В непустом каталоге команда не запустится, так что переприязать существующее пространство не получится.
Инструменты MCP
Эти команды выполняются внутри рабочего пространства. Агент вызывает их через сервер MCP, но их можно выполнить и вручную.
| Группа | Команда | Что делает |
|---|---|---|
| Сборка | run | Применить изменения к проекту. |
validate | Проверить изменение, не отправляя его. | |
| Обзор | inspect | Сводка по проекту целиком или по его части. |
resources | Список переиспользуемых ресурсов проекта и библиотек. | |
search | Поиск по имени или идентификатору. | |
status | Состояние рабочего пространства и проекта. | |
| Интеграция с ИИ | mcp | Зарегистрировать сервер MCP в Claude Code, Codex, Gemini CLI, Cursor, Copilot и других клиентах. |
| План и аудит | plan | Зафиксировать замысел до выполнения. |
trace | Повторить предыдущий запуск. | |
history | Список выполненных команд и их результатов. | |
| Диагностика | doctor | Проверка типичных проблем рабочего пространства. |
context-check | Отстал ли локальный снимок от проекта. | |
precache | Предзагрузка контекста проекта. | |
| Обновление | upgrade | Обновить FlutterFlow CLI. |
refresh-workspace | Обновить локальную конфигурацию рабочего пространства. | |
refresh-context | Подтянуть актуальное состояние проекта в локальный снимок. | |
| Справка | docs [topic] | Открыть документацию по теме. |
Полный список команд и флагов — flutterflow ai --help из папки рабочего пространства. Каждый вызов через MCP подчиняется правилам подтверждения вашего агента.