# Команды

> Все команды xflow с главными флагами, сгруппированные по задачам.

> Оглавление всей документации: https://docs.getxflow.com/llms.txt

## Общие правила

- Установка и первый вход: [Установка](https://docs.getxflow.com/cli/install.md).
- Точные флаги установленной версии даёт `xflow help` и `xflow help <команда>`: при расхождении верьте им.
- Команды берут проект и приложение из папки, в которой стоят. Без папки проект называют
  `--project <id>`, приложение `--app <id>`, вместе эти флаги не указывают. Какие команды их
  принимают: `xflow help project`.
- `--json` печатает ответ для машины там, где он есть: `apps`, `db query`, `storage`, `pages`, `connections call`.
- Незнакомый флаг отклоняется с подсказкой, какие флаги есть у команды. Флаг без значения тоже.
- JSON в `--data` и `--payload` проверяется до отправки. В PowerShell двойные кавычки
  экранируют (`--data '{\"a\":1}'`) или кладут тело в файл: `--data-file body.json`.
- `-m` это короткая форма `--message`.

## Вход и организации

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow login` | вход через браузер, ключ организации сохраняется рядом с прежними | |
| `xflow logout` | забыть ключ активной организации | `--all`: все ключи |
| `xflow whoami` | чей ключ, его права, лимиты тарифа и занятое | |
| `xflow org` | организации с сохранённым ключом, активная отмечена | |
| `xflow org members` | кто в организации и с какой ролью | |
| `xflow org switch <имя\|id>` | сделать активной другую организацию, локально | |

## Проекты и приложения

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow init [папка]` | новый проект с первым приложением из шаблона | `--name`, `--app <папка>`, `--no-app`, `--server <имя>` |
| `xflow link <id>` | привязать папку к проекту, пустая получает весь проект | |
| `xflow projects list` | проекты организации | |
| `xflow projects get [id]` | карточка проекта: приложения, база, функции и зовущие, расписания | |
| `xflow apps` | приложения проекта, их папки и адреса | `--json`, `--project` |
| `xflow apps add <папка>` | новое приложение в `apps/<папка>` из шаблона | `--name`, `--color` |
| `xflow status` | что на платформе и чем отличаются локальные копии | |

Подробнее: [Проекты](https://docs.getxflow.com/platform/projects.md), [Приложения](https://docs.getxflow.com/platform/apps.md).

## Код и версии

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow deploy functions -m "…"` | отправить корень проекта, применить миграции, выкатить функции и зовущих | `--allow-removals`, `--revision N`, `--project` (только с `--revision`), `--force` |
| `xflow deploy apps/<папка> -m "…"` | отправить одно приложение и собрать его; в его папке хватит `xflow deploy` | `--revision N`, `--app` (только с `--revision`), `--force` |
| `xflow publish [сборка]` | поставить на адрес приложения новейшую или названную сборку | `--app` |
| `xflow rollback <сборка>` | то же со старой сборкой, номер обязателен | `--app` |
| `xflow deployments [functions]` | сборки приложения или выкатки функций | `--app`, `--project` |
| `xflow pull [functions\|apps/<папка>]` | скачать исходники корня или одного приложения | `--into <папка>`, `--revision N`, `--force` |
| `xflow dev` | в папке приложения: запустить его на `127.0.0.1:3000`, функции отвечают с платформы | |
| `xflow logs` | ошибки браузера опубликованных приложений | `--limit N`, `--app`, `--project` |

`-m` обязателен: одна строка о том, что изменилось. `--force` кладёт папку поверх чужой ревизии и
печатает `xflow pull --revision N`, которым её вернуть. Что проверяется до сборки:
[Проверка перед сборкой](https://docs.getxflow.com/develop/build-check.md). Локальный запуск: [Локальная разработка](https://docs.getxflow.com/develop/local.md).

## База

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow db status` | какие миграции применены и какие ждут | `--project` |
| `xflow db list` | базы проектов и серверы организации | |
| `xflow db schema [таблица]` | таблицы проекта или колонки одной | `--project` |
| `xflow db query 'select …'` | чтение в транзакции только на чтение; запрос можно дать файлом `.sql` | `--json`, `--project` |
| `xflow db migrate` | сохранить корень проекта и применить новые `migrations/*.sql` | `--dry-run`, `--allow-destructive` |
| `xflow db move --to <сервер> --yes` | перенести базу проекта на другой сервер | `--project` |

Без лимита в SQL `db query` отдаёт 50 строк, потолок 300. `--allow-destructive` и `db move`
требуют права на ключе, его включает владелец ключа. Подробнее: [База данных](https://docs.getxflow.com/platform/database.md).

## Функции и расписания

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow functions list` | функции, их зовущие, открыта ли, последний вызов и ошибка | `--project` |
| `xflow functions invoke <имя>` | вызвать функцию от своего имени и напечатать ответ | `--data`, `--data-file`, `--method`, `--project` |
| `xflow functions logs [имя]` | падения функций: стек и вывод консоли | `--limit N`, `--project` |
| `xflow schedules list` | что запускается по таймеру и с каким телом | `--project` |
| `xflow schedules set <имя> "0 3 ? * * *"` | запускать функцию по расписанию, время UTC; другой cron добавляет ещё одно расписание | `--payload`, `--payload-file`, `--project` |
| `xflow schedules rm <имя> ["<cron>"]` | снять одно расписание функции или все | `--project` |

`functions invoke` печатает только тело ответа и выходит с ненулевым кодом на 4xx и 5xx.
В расписании шесть полей, ровно одно из «день месяца» и «день недели» равно `?`.
Подробнее: [Функции](https://docs.getxflow.com/platform/functions.md).

## Переменные и интеграции

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow env` | какие переменные сохранены (имена, без значений) | `--project` |
| `xflow env check` | каких переменных не хватает функциям | |
| `xflow env set ИМЯ=значение` | сохранить переменную | `--scope project\|organization` |
| `xflow env rm ИМЯ` | удалить переменную | `--project` |
| `xflow connections` | подключённые аккаунты, доступные проекту, и их переменные | `--project` |
| `xflow connections link <имя> --as АЛИАС` | отдать функциям доступы аккаунта | `--project` |
| `xflow connections unlink <АЛИАС>` | забрать их обратно | `--yes`, `--project` |
| `xflow connections call <имя> <путь>` | один запрос к API аккаунта без выкатки | `--method`, `--data`, `--data-file`, `--header`, `--json`, `--project` |

Значение доезжает до функции на следующей `xflow deploy functions`. По умолчанию `--scope organization`.
Подробнее: [Переменные и секреты](https://docs.getxflow.com/platform/secrets.md), [Интеграции](https://docs.getxflow.com/platform/integrations.md).

## Файлы

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow storage ls [папка]` | что лежит в хранилище проекта, с адресами и размерами | `--json`, `--project` |
| `xflow storage push <папка>` | залить фото, видео, PDF, сохраняя структуру; уже залитое пропускается | `--to <папка>`, `--replace`, `--json`, `--project` |
| `xflow storage rm <адрес>` | удалить один файл | `--project` |
| `xflow storage rm --folder <путь> --yes` | удалить папку со всем содержимым | `--project` |

`rm` требует права «Удалять файлы» на ключе. Подробнее: [Файлы](https://docs.getxflow.com/platform/storage.md).

## Страницы

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow pages` | страницы организации, их состояние и адрес | `--json` |
| `xflow pages create <название> <путь>` | новая страница сразу с первой версией | `--slug <имя>` |
| `xflow pages deploy <страница> <путь>` | залить новую версию, видна сразу | `-m` |
| `xflow pages status <страница>` | страница и её версии | `--json` |
| `xflow pages rollback <страница> <N>` | вернуть на адрес версию N | |
| `xflow pages rm <страница> --yes` | удалить страницу насовсем | |

`<путь>` это папка с `index.html`, её `.zip` или один `.html`. `--project` у страниц нет: они
принадлежат организации. Подробнее: [Страницы](https://docs.getxflow.com/platform/pages.md).

## Агент и обновление

| Команда | Что делает | Флаги |
|---|---|---|
| `xflow skills` | разложить агентам инструкции платформы | `--agent claude,cursor`, `--global`, `--refresh` |
| `xflow skills list` | агенты, их папки и что установлено | |
| `xflow update` | обновить CLI и скилл, который идёт с ним | |
| `xflow --version` | установленная версия | |
| `xflow help [команда]` | справка: общий список или страница команды | |

Подробнее: [Подключение агента](https://docs.getxflow.com/agent/setup.md), [MCP](https://docs.getxflow.com/reference/mcp.md).

## Окружение

| Переменная | Зачем |
|---|---|
| `XFLOW_TOKEN` | ключ доступа для CI вместо `xflow login` |
| `XFLOW_DEBUG` | печатать стек при неожиданной ошибке |
| `NO_COLOR` | вывод без цвета |
