NocoBase CLI

Описание

NocoBase CLI (nb) — это точка входа командной строки NocoBase, используемая для инициализации, подключения и управления приложениями NocoBase в локальном рабочем пространстве.

Он поддерживает два распространённых пути инициализации:

  • Подключить существующее приложение NocoBase и сохранить его как CLI env
  • Установить новое приложение NocoBase через Docker, npm или Git, а затем сохранить его как CLI env

При создании нового локального приложения nb init также может устанавливать или обновлять AI coding skills NocoBase. Если нужно пропустить этот шаг, можно использовать --skip-skills.

Использование

nb [command]

Корневая команда в основном используется для отображения справки и перенаправления вызовов в группы команд или отдельные команды.

Группы команд (Topics)

В nb --help отображаются следующие группы команд:

Группа командОписание
nb apiВызывать API NocoBase через CLI.
nb appУправлять состоянием работы приложения: запуск, остановка, перезапуск, журналы и обновление.
nb backupСоздать резервную копию и скачать её локально либо восстановить локальный файл резервной копии в целевое окружение.
nb configУправлять конфигурацией CLI по умолчанию.
nb dbУправлять встроенной базой данных выбранного окружения.
nb envУправлять окружениями проекта NocoBase, текущим env, состоянием, подробностями и runtime-командами.
nb licenseУправлять коммерческой лицензией и лицензируемыми плагинами.
nb pluginУправлять плагинами выбранного окружения NocoBase.
nb scaffoldГенерировать scaffold для разработки плагинов NocoBase.
nb selfПроверять или обновлять сам NocoBase CLI.
nb sessionНастраивать NB_SESSION_ID, чтобы current env изолировался по shell или agent runtime.
nb skillsПроверять или синхронизировать AI coding skills NocoBase в текущем рабочем пространстве.
nb sourceУправлять локальным проектом исходного кода: загрузка, разработка, сборка и тестирование.

Команды (Commands)

Отдельные команды, которые сейчас напрямую предоставляет корневая команда:

КомандаОписание
nb initИнициализировать NocoBase, чтобы coding agent мог подключаться и работать.

Просмотр справки

Просмотреть справку по корневой команде:

nb --help

Просмотреть справку по команде или группе команд:

nb init --help
nb app --help
nb backup --help
nb config --help
nb api resource --help
nb license --help

Примеры

Интерактивная инициализация:

nb init

Инициализация с использованием формы в браузере:

nb init --ui

Создание Docker-приложения в неинтерактивном режиме:

nb init --env app1 --yes --source docker --version alpha

Подключение существующего приложения:

nb env add app1 --api-base-url http://localhost:13000/api
nb env current
nb env status

Повторная синхронизация состояния env после запуска приложения:

nb app start -e app1
nb env update app1

Вызов API:

nb api resource list --resource users -e app1

Просмотр конфигурации CLI по умолчанию:

nb config list
nb config get docker.network

Просмотр состояния коммерческой лицензии:

nb license status -e app1
nb license plugins list -e app1

Создание и загрузка резервной копии:

nb backup create -e app1 --output ./backups

Восстановление локальной резервной копии:

nb backup restore -e app1 --file ./backups/backup_20260520_190408_8397.nbdata --yes --force

Переменные окружения

Следующие переменные окружения влияют на поведение CLI:

ПеременнаяОписание
NB_CLI_ROOTКорневой каталог, в котором CLI хранит конфигурацию .nocobase и файлы локальных приложений. По умолчанию это домашний каталог текущего пользователя.
NB_LOCALEЯзык подсказок CLI и язык локального UI инициализации; поддерживаются en-US и zh-CN.
NB_SESSION_IDИдентификатор сессии текущего shell или agent runtime. После установки nb env use и nb env current изолируются по сессии.

Пример:

export NB_CLI_ROOT=/your/workspace
export NB_LOCALE=zh-CN

Файл конфигурации

Файл конфигурации по умолчанию:

~/.nocobase/config.json

После установки NB_CLI_ROOT=/your/workspace путь к файлу конфигурации станет:

/your/workspace/.nocobase/config.json

CLI также совместим с чтением старой конфигурации проекта из текущего рабочего каталога.

Кэш уровня сессии для текущего env хранится в:

.nocobase/sessions/<NB_SESSION_ID>.json

Последний глобально использованный env хранится в поле lastEnv файла config.json. При отсутствии NB_SESSION_ID CLI возвращается к этому глобальному значению.

Кэш runtime-команд хранится в:

.nocobase/versions/<hash>/commands.json

Этот файл создаётся или обновляется командой nb env update и используется для кэширования runtime-команд, синхронизированных с целевого приложения.

Связанные ссылки