# @apso/cli 中文文档

规范地址：https://npmcn.com/package/%40apso/cli/

版本：0\.47\.2
npm 元数据更新时间：2026-11-04T22:23:55.152Z
中文译文更新时间：2026-11-06T12:57:37.379Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40apso/cli
原文对照：https://npmcn.com/package/%40apso/cli/?lang=original
项目主页：https://github.com/apsoai/cli
源码仓库：https://github.com/apsoai/cli

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：1.9 MB，414 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=18\.0\.0
- 运行依赖：22 个
- 首次发布：2020-06-25T01:55:12.792Z
- 最新版本发布：2026-11-04T22:23:54.792Z
- 近 30 天下载量：3519（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：98（近 12 个月 80 个）

## 中文简介

APso 语录

## 安装

```sh
npm install @apso/cli
```

也可以使用：`pnpm add @apso/cli`、`yarn add @apso/cli`、`bun add @apso/cli`

## README

# APso 语录

定义一个计划。 获取一个生产API。 保持密码.

Apso从一个JSON schema文件生成生产准备后端服务. 获得你拥有的真正框架代码(NestJS, FastAPI, 或 Gin),在任何地方运行,并与标准模式相延伸. 完整文件见 [Apso 文档](https://docs.apso.ai/)。 。 。 .

## 安装

**土生土长** (macOS / Linux) (英语)

```bash
brew install apsoai/tap/apso
# Installed before Homebrew 6? Trust the formula so upgrades work:
# brew trust --formula apsoai/tap/apso
```

**无**

```bash
npm install -g @apso/cli
```

需要18.0或更高的节点.

## MCP 服务器( AI 编辑器集成)

Apso在Claude Code,Cursor,Windsurf以及其他MCP相容编辑器内部担任MCP服务器. 您的AI助手可以设计出计划,生成API,并通过对话部署后端.

**克劳德代码**

```bash
claude mcp add apso -- apso mcp serve
```

**光标 / VS 代码 / 其他编辑器**

添加到您的 MCP 配置 :

```json
{
  "mcpServers": {
    "apso": {
      "command": "apso",
      "args": ["mcp", "serve"]
    }
  }
}
```

**可用工具 :**

| 工具 | 说明 |
| --- | --- |
| `design_schema` | 根据应用程序要求设计数据库计划 |
| `validate_schema` | 验证 a `.apsorc` 计划文件 |
| `scaffold_api` | 从 schema( TypeScript, Python, 或 Go) 生成 API 代码 |
| `setup_auth` | 配置认证 (BetterAuth, Auth0, 办事员, 认知, API 密钥) |
| `start_dev_server` | 通过 Docker 编译启动本地 Dev 环境 |
| `deploy_api` | 部署到Apso平台 |

**Schema 编辑工具** (从) `@apso/schema-tools`() 更改项目 `.apsorc` 一步一步来. 每篇书写都有规则 `apso generate` 执行; 拒绝添加一连串错误的更改, 文件按原样保留 .

| 工具 | 说明 |
| --- | --- |
| `get_schema`, (中文(简体) ), `describe_entity` | 读取计划大纲, 或一个实体及其关系 |
| `add_entity`, (中文(简体) ), `rename_entity`, (中文(简体) ), `remove_entity` | 实体(关系和外国关键指数按重名和去除) |
| `add_field`, (中文(简体) ), `update_field`, (中文(简体) ), `rename_field`, (中文(简体) ), `remove_field` | 字段( 索引和独有性在重命名和去除之后) |
| `add_relationship`, (中文(简体) ), `remove_relationship` | 关系 |
| `add_index` | 索引或独有索引 |
| `lint_schema` | 林特报告 |

**现有资源:**

| 资源 | URI 资源 | 说明 |
| --- | --- | --- |
| 图表参考 | `apso://schema-guide` | Schema 设计指南和实例 |
| 当前方案 | `apso://current-schema` | 您的项目是当前 `.apsorc` |

## 连接

认证 Apso 平台 :

```bash
apso login
```

这将打开 OAuth 认证的浏览器窗口 。 对于 CI/CD 环境,使用符号:

```bash
apso login --token <api-token>
```

## 快开始

```bash
# Create a new project
apso init --name my-app --language typescript

# Edit .apsorc to define your schema

# Generate code from schema
apso generate

# Start Postgres and run the API
apso dev
```

你的API在现场直播 `http://localhost:3000` 与 Swagger 的文档在 `/api`。生成的代码存在于 `src/autogen/` ,是标准 NestJS 有 TypeORM - 没有 APso 运行时依赖性 .

## 图标

| 命令 | 子命令 | 说明 |
| --- | --- | --- |
| [输入](https://npmcn.com/package/%40apso/cli/#readme-apso-init) |  | 创建新工程 |
| [生成](https://npmcn.com/package/%40apso/cli/#readme-apso-generate) |  | 生成代码从 `.apsorc` 计划 |
| [备忘](https://npmcn.com/package/%40apso/cli/#readme-apso-dev) |  | 通过 Docker 编译启动本地 dev 服务器 |
| [移徙](https://npmcn.com/package/%40apso/cli/#readme-apso-migrate) |  | 使用 PGlite 进行本地迁移测试 |
| [部署](https://npmcn.com/package/%40apso/cli/#readme-apso-deploy) |  | 部署到 Apso 平台 |
| [登录](https://npmcn.com/package/%40apso/cli/#readme-apso-login) |  | 使用 Apso 认证 |
| [登录](https://npmcn.com/package/%40apso/cli/#readme-apso-logout) |  | 清除存储的证书 |
| [华美](https://npmcn.com/package/%40apso/cli/#readme-apso-whoami) |  | 显示当前用户 |
| [链接](https://npmcn.com/package/%40apso/cli/#readme-apso-link) |  | 将项目链接到平台服务 |
| [取消链接](https://npmcn.com/package/%40apso/cli/#readme-apso-unlink) |  | 删除平台链接 |
| [状态](https://npmcn.com/package/%40apso/cli/#readme-apso-status) |  | 显示服务和构建状态 |
| [日志](https://npmcn.com/package/%40apso/cli/#readme-apso-logs) |  | 查看构建日志 |
| [打开](https://npmcn.com/package/%40apso/cli/#readme-apso-open) |  | 在浏览器中打开服务仪表板 |
| [项目](https://npmcn.com/package/%40apso/cli/#readme-apso-projects) |  | 在工作空间中列出服务 |
| [配置](https://npmcn.com/package/%40apso/cli/#readme-apso-config) | `get`, (中文(简体) ), `set`, (中文(简体) ), `reset` | 查看或修改 CLI 配置 |
| [计划](https://npmcn.com/package/%40apso/cli/#readme-apso-schema) | `diff`, (中文(简体) ), `push`, (中文(简体) ), `pull`, (中文(简体) ), `validate` | 管理与平台同步的策略 |
| [mcp 服务](https://npmcn.com/package/%40apso/cli/#readme-mcp-server-ai-editor-integration) |  | 为 AI 编辑器启动 MCP 服务器 |

## 命令参考

### `apso init`

从语言特定模板创建一个新的 Apso 项目 .

```bash
apso init
apso init --name my-app --language typescript
apso init --name my-app --language python --skip-platform
```

| 选项 | 说明 | 默认 |
| --- | --- | --- |
| `-n, --name` | 项目名称 | _(即时)_ |
| `-l, --language` | 目标语言(`typescript`, (中文(简体) ), `python`, (中文(简体) ), `go`(中文(简体) ) | _(即时)_ |
| `--skip-platform` | 跳过平台链接( 离线模式) | `false` |

当认证时, `apso init` 允许您创建新工程或从平台上复制一个已有工程.

### `apso generate`

从中生成后端代码 `.apsorc` 计划文件 .

```bash
apso generate
apso generate --language python
apso generate --skip-format
```

| 选项 | 说明 | 默认 |
| --- | --- | --- |
| `-l, --language` | 目标语言(`typescript`, (中文(简体) ), `python`, (中文(简体) ), `go`(中文(简体) ) | _(从.apsorc或被诱使)_ |
| `--skip-format` | 生成后跳过 Pretier 格式化 | `false` |

生成的文件被放置在 `src/autogen/`。这些文件在每次运行时都会被覆盖。 将自定义代码放入 `src/extensions/` 以避免失去变化.

### `apso dev`

使用 Docker Compose 启动本地开发服务器 .

```bash
apso dev
apso dev --build
apso dev --detach
```

| 选项 | 说明 | 默认 |
| --- | --- | --- |
| `--build` | 开始前重建图像 | `false` |
| `-d, --detach` | 在背景中运行容器 | `false` |

需要多克和多克编曲。 寻找 `docker-compose.yml` 在当前目录中.

### `apso migrate`

在不丢失数据的情况下, 写入迁移计划更改 . `apso migrate` 重新生成代码, 比较 `.apsorc` 与已部署的图解,并询问计划无法显示其意图的每一个变化:一个已丢失的字段重新命名或投放,一个字段如何分割,哪些取代已删除的图解值,现有行为一个新的需要的字段获得什么. 它然后从您的答案中写入迁移( TypeScript 的 TypeORM 迁移, Python 的 Alembic 修正, Go 的鹅文件) , 保存旁边的被解答计划, 并在本地 PGlite 副本中测试部署的 schema .

```bash
apso migrate --baseline deployed.apsorc     # first time: the .apsorc that is deployed
apso migrate                                # later runs find the baseline from the last migration
apso migrate --answer field:Contact.phone=rename:mobilePhone
apso migrate --seed seed.sql --check checks.sql
```

在一个终端,它问每个问题。 没有一种(或 `--json`)它打印出 JSON 和 出站 2 的开放式问题,所以编码代理可以用 `--answer` 或进入 `.apso/migration-plan.json` 再来一次 同样的答案总是产生相同的SQL.

这些步骤也是单独的命令: `apso migrate plan`, (中文(简体) ), `apso migrate generate` 财务报告和审定财务报表 `apso migrate verify`。 。 。 . `apso migrate sandbox` 是空数据库上较旧的快照预览( e)`--apply`, (中文(简体) ), `--reset`, (中文(简体) ), `--sql`) (中文(简体) ).

### `apso deploy`

将连接服务部署到Apso平台. 在部署前进行本地迁移检查.

```bash
apso deploy
apso deploy --yes
apso deploy --skip-migrate
apso deploy --no-wait
```

| 选项 | 说明 | 默认 |
| --- | --- | --- |
| `-y, --yes` | 跳过确认提示 | `false` |
| `--skip-migrate` | 跳过本地迁移验证 | `false` |
| `--no-wait` | 不等待完成的触发部署 | `false` |

如果检测到计划变化, `apso deploy` 显示迁移 SQL 并请求在程序前确认。 如果本地迁移失败,部署就会被阻止.

### `apso login`

通过基于浏览器的 OAuth 或 API 令牌认证 Apso 平台 .

```bash
apso login
apso login --token <api-token>
```

| 选项 | 说明 |
| --- | --- |
| `-t, --token` | 非交互登录的 API 令牌( CI/ CD) |

### `apso logout`

清除存储的证书 .

```bash
apso logout
```

### `apso whoami`

显示当前认证用户和链接项目的信息 .

```bash
apso whoami
```

### `apso link`

将当前项目链接到平台服务.

```bash
apso link
apso link --workspace my-team --service my-api
apso link --force
```

| 选项 | 说明 |
| --- | --- |
| `-w, --workspace` | 工作空间弹片 |
| `-s, --service` | 服务弹片 |
| `-f, --force` | 无需确认即可覆盖已存在的链接 |

### `apso unlink`

删除当前工程和平台之间的联系.

```bash
apso unlink
```

### `apso status`

显示当前服务和最新构建状态 .

```bash
apso status
```

### `apso logs`

查看链接服务的构建日志 .

```bash
apso logs
apso logs <build-id>
```

### `apso open`

在浏览器中打开服务仪表板或API端点.

```bash
apso open
```

### `apso projects`

在工作空间列出服务 .

```bash
apso projects
```

### `apso config`

查看或修改 CLI 配置 .

```bash
apso config                        # Show all settings
apso config get apiUrl             # Get a specific value
apso config set verbose true       # Set a value
apso config reset                  # Reset to defaults
```

**配置密钥 :**

| 密钥 | 类型 | 说明 |
| --- | --- | --- |
| `apiUrl` | 字符串 | 平台 API URL |
| `webUrl` | 字符串 | 平台网页 URL |
| `verbose` | 布尔 | 启用动词输出 |
| `noColor` | 布尔 | 禁用彩色输出 |
| `telemetryDisabled` | 布尔 | 从匿名遥测(或 `apso config set telemetry off`(中文(简体) ) |
| `defaultWorkspace` | 字符串 | 默认工作空格 |

接受布尔值 `true`编号 :`false` 或者说 `1`编号 :`0`。 。 。 .

环境变量覆盖配置文件值 :

| 变量 | 覆盖 |
| --- | --- |
| `APSO_API_URL` | `apiUrl` |
| `APSO_WEB_URL` | `webUrl` |
| `APSO_DEBUG=true` | `verbose` |
| `NO_COLOR` 或者说 `APSO_NO_COLOR=true` | `noColor` |
| `APSO_TELEMETRY=0` 编号 : `DO_NOT_TRACK=1` | `telemetryDisabled` |

### `apso schema`

管理本地同步计划 `.apsorc` 还有月台.

```bash
apso schema validate     # Validate local schema
apso schema diff         # Show diff between local and remote
apso schema push         # Push local schema to platform
apso schema pull         # Pull remote schema to local
```

## 全球备选方案

这些选项与任何命令配合 :

```bash
apso [command] --help       # Show command help
apso [command] --version    # Show CLI version
```

## 遥测和隐私

CLI发送匿名使用数据,以便我们可以看到使用哪些命令 相应地确定优先顺序。 它被选择退出,没有个人资料.

**收集的内容:** 命令名称( e)`generate`, (中文(简体) ), `init`, (中文(简体) ), `deploy`,...),CLI (中文(简体) ) 版本,OS和架构,节点版本,命令持续时间和成功,以及 匿名安装 ID( 存储在您的 CLI 配置中的随机 UUID ) – 不从 从任何机器标识符). 如果你被登录,事件属性于您的 Apso账户,与网络应用程序相同.

**从未收集到的:** 您的源代码, 您的 `.apsorc` 或计划 内容,文件路径,环境可变值,或任何其他文件内容.

**选择出去** 其中任何一种方式:

```bash
apso config set telemetry off     # persisted in your CLI config
export APSO_TELEMETRY=0            # per-shell
export DO_NOT_TRACK=1             # honors the consoledonottrack.com standard
```

首先运行 CLI 打印一次通知 指向这些选择退出. 见 [`docs/telemetry.md`](https://npmcn.com/package/%40apso/cli/docs/telemetry.md) 详细情况 合计 公共下载数据(npm/PyPI)可通过下列途径获取: `node scripts/usage-stats.mjs`。 。 。 .

## 支持的语言

| 语言 | 框架 | 机构 | 状态 |
| --- | --- | --- | --- |
| 类型脚本 | 网点JS | 类型ORM | 稳定 |
| 蟒 | FastAPI 软件 | SQL 化学式 | 发展中 |
| 走开 | 银 | 戈兰 | 发展中 |

## 贡献

```bash
git clone https://github.com/apsoai/cli.git
cd cli
npm install
npm run build
```

从本地建筑运行命令 :

```bash
./bin/run generate
./bin/run migrate --sql
```

不断发展:

```bash
npm run build    # Rebuild after changes
npm link         # Make 'apso' command available globally
```

### 测试

```bash
npm run test             # Run all tests
npm run test:watch       # Watch mode
npm run test:cov         # Coverage report
```

### 调试

```bash
env DEBUG=* ./bin/run generate
```

## 许可证

麻省理工学院

## 常见问题

### @apso/cli 是什么？

APso 语录

### 如何安装 @apso/cli？

在项目目录运行 npm install @apso/cli，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 apso，可以用 npx apso 直接运行。

### @apso/cli 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @apso/cli 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @apso/cli 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=18\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @apso/cli 可以商用吗？

@apso/cli 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @apso/cli 的下载量有多少？

根据 npm 官方下载统计，@apso/cli 在 2026/10/07 – 2026/11/05 这 30 天内被下载 3,519 次，日均约 117 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @apso/cli 还在维护吗？

最新版本 0\.47\.2 发布于 2026/11/05（1 天前）；至今共发布 98 个版本，其中过去 12 个月发布了 80 个；首次发布于 2020/06/25。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

