# @bettercms-ai/install 中文文档

规范地址：https://npmcn.com/package/%40bettercms-ai/install/

版本：0\.5\.0
npm 元数据更新时间：2026-11-05T14:16:50.418Z
中文译文更新时间：2026-11-08T00:15:59.011Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40bettercms-ai/install
原文对照：https://npmcn.com/package/%40bettercms-ai/install/?lang=original

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

- 包体积（解压后）：1.1 MB，47 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=18
- 运行依赖：3 个
- 首次发布：2026-09-15T16:25:00.813Z
- 最新版本发布：2026-11-05T14:16:50.063Z
- 近 30 天下载量：5572（2026-10-08 至 2026-11-06，npm 官方下载统计）
- 已发布版本数：60（近 12 个月 60 个）

## 中文简介

将BetterCMS代理技能安装到克洛德代码,光标,代码等编码代理中. 离线,由收件驱动,它只去除所写的.

## 安装

```sh
npm install @bettercms-ai/install
```

也可以使用：`pnpm add @bettercms-ai/install`、`yarn add @bettercms-ai/install`、`bun add @bettercms-ai/install`

## README

# @ bettercms-ai/ 安装

将 BetterCMS 代理技能安装到您的机器上的编码代理 .

```sh
npx @bettercms-ai/install
```

在一个终端里,它问 最多两件事, 每一个都有 可能的答案已经得到了,所以 按下 Enter 通过它是正常的安装 :

```
┌  BetterCMS agent setup v0.4.44
│
◇  Where do you want to install the BetterCMS skills?
│  Globally
│
◇  Configure BetterCMS MCP and agent skills for these editors?
│  Claude Code, Codex CLI, Cursor, Zed
│
◆  MCP configured for Claude Code, Codex CLI, Cursor and Zed
│
◆  BetterCMS agent skills installed (24):
│    ~/.claude/skills  24 installed
│      Claude Code /bettercms
│    ~/.codex/skills  24 installed
│      Codex CLI $bettercms
│    ~/.cursor/skills  24 installed
│      Cursor /bettercms
│
└  Restart Claude Code, Codex CLI, Cursor and Zed and type "set up BetterCMS for this site" in the chat.
```

-   **地点:** “这个项目”首先在一个项目内提供(一个文件夹与 `package.json`, (中文(简体) ), `.git` 或代理文件夹)。 没有代理文件夹的工程会得到您安装的代理, 并创建他们的文件夹 。 在你家的目录中,"全球"是先提供的.
-   **编辑:** 一个问题既包括技能和MCP。 Claude Code, Codex CLI, Cursor, VS Code and Zed 总是被提供;在你的机器上发现的被勾出. 未测试剂在安装时列出,并贴有标签.
-   **技能:** 全部都一样 将技能 ID 命名为要安装更少的参数 .
-   **磁共振:** 主机BetterCMS MCP进入每个编辑器的用户级配置(`--no-mcp` 跳过它。 它从不覆盖已有的 `bettercms` 条目,从不写证书。 你第一次用的时候就签了.

脚本,同样的安装是:

```sh
npx @bettercms-ai/install --global          # every detected agent, in your home directory
npx @bettercms-ai/install --project -y      # agent folders inside the current project
npx @bettercms-ai/install -g --agents claude,cursor,vscode,zed --mcp
```

## 为什么这个安装器

-   **离线.** 包裹内的技能船. 安装不需要网络请求, 也不需要账户或信使 .
-   **知其所写.** 一张收据列出了每个文件 上面有它的sha256, 所以重新运行的报告 `unchanged` 而不是重写,一个升级 刷新版本的下降,和 `--remove` 完全删除它写的东西, 而不是其他东西.
-   **在它写之前显示.** 引导流列出它会触及的每一个文件夹和配置; `--dry-run` 在剧本中做同样的事情.

## 选项

| 选项 | 含义 |
| --- | --- |
| `[skill-ids...]` | 仅安装这些技能, by id (`bettercms`, (中文(简体) ), `bettercms-migrate`, (中文(简体) ), `bettercms-abm`); id是下面的文件夹 `packages/skills`。默认值为全部三个. |
| `--global`, (中文(简体) ), `-g` | 使用您家目录下的代理根 . |
| `--project` | 在当前目录下使用代理根 . |
| `--agents a,b` | 选择特工 默认情况下,每个目录已经存在的代理都会被使用. |
| `--mcp` | 同时注册BetterCMS MCP服务器(见下文). |
| `--api <rung|url>` | 那个API `--mcp` 点数 : `prod` (违约), `dev`, (中文(简体) ), `local`,或全数 `https://` URL (中文(简体) ). 任何其他值出口2号. |
| `--remove` | 删除早先安装时所写的内容 。 移除所有技能, 或只删除您给出的标识 . |
| `-y`, (中文(简体) ), `--yes` | 跳过确认提示 . |
| `--dry-run` | 印出结果行而不用写作. |

没有终端(CI、管子)或带 `-y`没有问题 没有 `--global` 或者说 `--project`,项目文件夹(一个带有代理文件夹,或 `package.json` 或者说 `.git` 在您安装一些代理时), 表示 `--project`;在其它任何地方,命令退出2而不是猜测. `-y` 从不连接 MCP : 这需要 `--mcp`。 。 。 .

在脚本运行中,每个代理/技能配对打印出一行: `installed`, (中文(简体) ), `updated`, (中文(简体) ), `unchanged`, (中文(简体) ), `removed`, (中文(简体) ), `exists-unmanaged`, (中文(简体) ), `skipped: <reason>` 或者说 `failed: <reason>`。 。 。 . `exists-unmanaged` 表示一个 `bettercms-<id>` 文件夹已经存在, 没有收据列表 。 安装者不会在文件夹里写任何东西 并且继续学习其他技能 退出代码为 0 当没有失败时, 1 当任何失败或曾经失败时 `exists-unmanaged`,2用于使用错误。 一个没有技能的建筑也被捆绑在2号出口.

## 写在哪里

每个技能都被复制到 `<root>/bettercms-<id>/`. 已经从 `bettercms-` 保持他们的名字不变.

| 探员 | `--global` 根号 | `--project` 根号 | 已测试 |
| --- | --- | --- | --- |
| 克劳德代码 | `~/.claude/skills` | `.claude/skills` | 对 |
| 代码 CLI | `~/.codex/skills` | `.agents/skills` | 对 |
| 光标 | `~/.cursor/skills` | `.agents/skills` | 对 |
| VS 代码( 副驾驶) | `~/.copilot/skills` | `.agents/skills` | 对 |
| 齐德 | (没有技能文件夹:仅限 MCP) |  | 对 |
| 倾角 | `~/.config/amp/skills` | `.agents/skills` | 没有 |
| 双子座CLI | `~/.gemini/skills` | `.agents/skills` | 没有 |
| 打开代码 | `~/.config/opencode/skills` | `.agents/skills` | 没有 |
| Pi | `~/.pi/agent/skills` | `.pi/skills` | 没有 |
| 反重力 | `~/.gemini/antigravity/skills` | `.gemini/antigravity/skills` | 没有 |
| 风起浪起 | `~/.codeium/windsurf/memories/global_rules.md` | `.windsurf/rules/bettercms-<id>.md` | 没有 |

以下为项目根 [动词片/技能](https://github.com/vercel-labs/skills): 读取共享的代理 `.agents/skills` 在那里得到一份拷贝, 不是每个一个.

"未测试"指根跟随其他技能安装器使用的会话,但没有人检查过代理机是否实际从中装入技能. 这些行被标记为 `*` 在输出中.

Windsurf 没有技能文件夹 :

-   **全球:** 每个技能 `SKILL.md` 身体进入 `global_rules.md` 介于 `<!-- bettercms:<id>:begin v=<version> -->` 财务报告和审定财务报表 `<!-- bettercms:<id>:end -->`重新运行可以取代整块,所以你永远也不会有两本。 你写在标记外面的任何东西 都保持原样.
-   **项目:** 每个技能都变成一个规则文件.

在这两种情况下 `SKILL.md` 被结转。 参考文件不是.

无 `--mcp`,安装者只在上面的代理根内写入.

## 收据、升级、未安装

每个根都有一个 `.bettercms-skills.json` 收讫. 它列出了安装器所写的每一个文件, 以及它的sha256.

-   **重运行同一版本** 改变什么。 文件只有在其字节不同时才被写入,而收件只有在内容发生变化时才被重写.
-   **升级** 写入新文件。 新版本的档案不再被删除,被更名或退役的技能也是如此.
-   **`--remove`** 准确删除收件中列出的文件,然后删除任何留空目录,然后删除收件项。 收件文件一旦被空出, 就会自动打开 。 收据中未包含的任何内容永远不会被删除,包括您在 a 中添加的文件 `bettercms-*` 文件夹.

在写出任何内容之前,安装者会检查捆绑的列表和每个文件散列. 每个写入和删除路径都必须在所选的根内部解决,安装者拒绝通过根下方的同义链接.

## `--mcp`

`--mcp` 连接主机BetterCMS MCP(`https://mcp.bettercms.ai`· ; `--api dev` 用途 `https://mcp.bettercms.dev`,任何其他API自己的 `/mcp`) (中文(简体) ). 每个编辑的条目 **用户级别** 配置, 以编辑器的形状 :

| 编辑器 | 何处 | 条目 |
| --- | --- | --- |
| 克劳德代码 | `claude mcp add --transport http -s user bettercms <url>` (JSON如果 `claude` CLI不是在你的路径上) |  |
| 代码 CLI | `~/.codex/config.toml` | `[mcp_servers.bettercms]` `url = "<url>"` |
| 光标 | `~/.cursor/mcp.json` | `mcpServers.bettercms: { url }` |
| VS 代码( 副驾驶) | 用户 `mcp.json` (单位:千美元)`~/.config/Code/User`, (中文(简体) ), `~/Library/Application Support/Code/User`, (中文(简体) ), `%APPDATA%\Code\User`(中文(简体) ) | `servers.bettercms: { type: "http", url }` |
| 齐德 | `~/.config/zed/settings.json` | `context_servers.bettercms: { url }` |
| 双子座CLI | `~/.gemini/settings.json` | `mcpServers.bettercms: { httpUrl }` |
| 其他代理人 | JSON 片断已打印 |  |

如果有的话 `bettercms` 条目已经存在,结果为 `skipped: exists`。安装者从不覆盖或合并到该条目,也从不写出一个符号或证书。 一个非普通 JSON (Zed 的设置允许注释) 的配置文件不受影响, 片段会打印为您粘贴 。 您在浏览器的第一个工具呼叫上签名 .

## 发展

`prepack` 运行 `scripts/build-manifest.mjs`。它复制每个 `packages/skills/<id>/` 包含一个 `SKILL.md` 输入 `skills/`,然后写 `manifest.json` 加号 `.claude-plugin/{plugin.json,marketplace.json}`。在技能上失败,没有 `name` 或者说 `description`任何不安全的路径 生成的文件被 gitignored .

```sh
bun test test/install.test.js
bun test test/build-manifest.test.js
```

## 常见问题

### @bettercms-ai/install 是什么？

将BetterCMS代理技能安装到克洛德代码,光标,代码等编码代理中\. 离线,由收件驱动,它只去除所写的\.

### 如何安装 @bettercms-ai/install？

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

### @bettercms-ai/install 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/bettercms-ai\_\_install 是否存在。

### @bettercms-ai/install 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @bettercms-ai/install 需要什么版本的 Node\.js？

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

### @bettercms-ai/install 可以商用吗？

@bettercms-ai/install 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @bettercms-ai/install 的下载量有多少？

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

### @bettercms-ai/install 还在维护吗？

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

