NocoBase CLI

描述

NocoBase CLI(nb)是 NocoBase 的命令行入口,用于在本地工作区初始化、连接和管理 NocoBase 应用。

它支持两种常见初始化路径:

  • 连接已有的 NocoBase 应用,并保存为 CLI env
  • 通过 Docker、npm 或 Git 安装新的 NocoBase 应用,再保存为 CLI env

创建新的本地应用时,nb init 也可以安装或更新 NocoBase AI coding skills。需要跳过这一步时,可以使用 --skip-skills

用法

nb [command]

根命令本身主要用于显示帮助,并将调用分发给命令组或独立命令。

命令组(Topics)

nb --help 中会显示以下命令组:

命令组说明
nb api通过 CLI 调用 NocoBase API。
nb app管理应用运行态:启动、停止、重启、日志和升级。
nb backup创建备份并下载到本地,或把本地备份文件恢复到目标 env。
nb config管理 CLI 默认配置。
nb db管理选中 env 的内置数据库。
nb env管理 NocoBase 项目环境、当前 env、状态、详情和运行时命令。
nb license管理商业授权和授权插件。
nb plugin管理选中 NocoBase env 的插件。
nb scaffold生成 NocoBase 插件开发脚手架。
nb self检查或更新 NocoBase CLI 本身。
nb session配置 NB_SESSION_ID,让 current env 按 shell 或 agent runtime 隔离。
nb skills检查或同步当前工作区的 NocoBase AI coding skills。
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_ROOTCLI 保存 .nocobase 配置和本地应用文件的根目录。默认是当前用户主目录。
NB_LOCALECLI 提示语言和本地初始化 UI 语言,支持 en-USzh-CN
NB_SESSION_ID当前 shell 或 agent runtime 的会话 ID。设置后,nb env usenb 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 也兼容读取当前工作目录下的旧 project 配置。

当前 env 的会话级缓存保存在:

.nocobase/sessions/<NB_SESSION_ID>.json

全局最后使用的 env 保存在 config.jsonlastEnv 字段里。没有 NB_SESSION_ID 时,CLI 会回退到这个全局值。

运行时命令缓存保存在:

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

这个文件由 nb env update 生成或刷新,用于缓存从目标应用同步出来的运行时命令。

相关链接