Сайт ↗
Разделы документации
CLI интерфейс · 0.8.1

CLI: как читать команды и результаты

Общие параметры, запуск редактора, справка, коды завершения и карта команд.

На этой странице

UI запускается бинарником admingen, команды для скриптов — admingen-cli. Раньше эти программы назывались admingen-ui и admingen; в командах ниже используются новые имена.

CLI подходит для повторяемых действий и скриптов. Он меняет тот же манифест, что и Generator UI. Создание сущности, генерация исходников и запуск приложения — разные операции: после настройки модели вы отдельно выпускаете файлы и запускаете результат.

Из чего состоит команда

admingen-cli --path ./docs-demo entity add Article --module content --table articles

admingen-cli — исполняемый файл CLI; --path задаёт проект; entity add — действие; Article — имя сущности. --module и --table относятся к её созданию. Сохраняйте порядок слов команды и передавайте технические имена точно, без перевода.

Параметр Значение по умолчанию Для чего нужен
--path PATH . Корень проекта. Удобнее указывать явно, если терминал находится в другом каталоге.
--output text|json text Читаемый вывод для человека или структурированный результат для программы.
-h, --help выключен Справка выбранной команды без выполнения операции.

У логического параметра --required означает true, --required=false — false. В командах update отсутствие параметра обычно означает «оставить как есть». Не передавайте все значения из справки в надежде сохранить настройки: так вы можете заменить их.

Как проверить проект перед записью файлов

admingen-cli --path ./docs-demo doctor
admingen-cli --path ./docs-demo plan
admingen-cli --path ./docs-demo generate --dry-run

doctor показывает, инициализирован ли каталог. plan строит операции генерации. generate --dry-run показывает изменения файлов без записи. По этим результатам можно понять, проблема в модели или в конфликте с существующими исходниками.

Для обработки результата скриптом включите JSON:

admingen-cli --path ./docs-demo --output json plan

Сначала проверяйте код завершения, затем данные и ошибку. Не ищите в тексте просто слово «успех». Форматы ошибок CLI и HTTP API генератора различаются: JSON из HTTP нельзя без изменений использовать как результат CLI.

Как запустить Generator UI

admingen содержит CLI-команды и встроенный интерфейс:

admingen --path ./docs-demo start --addr 127.0.0.1:8080 --open=true

--addr задаёт адрес и порт, по умолчанию 127.0.0.1:8080. --open управляет открытием браузера. ui — совместимое имя того же запуска.

admingen-cli запускает локальный HTTP API через serve --addr ..., но не содержит встроенного UI. Локальный редактор не предназначен для публикации в интернете как система администрирования вашего приложения.

Где получить справку и автодополнение

admingen-cli help entity
admingen-cli entity field add --help
admingen-cli completion zsh > admingen-completion.zsh

completion поддерживает bash, zsh, fish и powershell. Он выводит скрипт дополнения; сохраните его и подключите по правилам своей оболочки. Не запускайте весь вывод как произвольную команду. Где поддерживается --no-descriptions, он убирает пояснения из дополнений.

Команды по задачам

Задача Команды и раздел
Создать проект, запустить локальный редактор init, serve, start
Проверить проект и получить файлы doctor, plan, generate
Сгруппировать и описать модель module, entity
Настроить данные и форму field / entity field
Описать связи entity relation
Собрать read-only представление projection
Настроить операции и выдачу записей Разрешения и правила чтения
Переименовать поле, удалить поле или сущность Жизненный цикл модели
Создать собственную SQL-миграцию migration create
Запустить приложение и обслуживать БД Команды готового приложения
Выпустить релиз, backup и restore deploy/control

Для настройки полей используйте команды полей, для связей — отношения, для read-only выборок — проекции. Подготовка каталога описана в init, структура сущностей — в module и entity, применение модели — в generate.

Отдельных admingen-cli history, diff, rollback, git и project settings нет. Diff доступен через generate --dry-run, история и восстановление модели — в UI. Настройки проекта меняются в Project settings или манифесте. После init для дальнейшей работы с репозиторием используются обычные команды Git.

Что означает код завершения

Код Значение
0 Команда завершилась успешно; содержимое результата всё равно нужно учитывать.
1 Ошибка выполнения, включая ошибки, не отнесённые к отдельной категории.
2 Ошибка проверяемого ввода/модели, неподдерживаемый lock-контракт или отсутствие нужного терминала.
130 Операция отменена через контекст.

Даже при коде 0 учитывайте содержимое ответа: doctor с initialized: false сообщает, что проект ещё не создан, а не разрешает сразу выполнять Generate.

В текущем CLI нет отдельной команды version и глобального --version. init --generator-version задаёт записываемую версию генератора для проекта, а не печатает версию установленного бинарника.

Команды готового приложения выполняются уже для другой задачи и нередко из другого каталога. Не смешивайте их с командами изменения модели.