# @byline/cli 中文文档

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

版本：6\.13\.3
npm 元数据更新时间：2026-11-09T15:19:55.502Z
中文译文更新时间：2026-11-09T19:35:15.360Z
软件包许可：MPL-2\.0

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

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

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

- 包体积（解压后）：1.6 MB，516 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=22\.22\.2
- 运行依赖：13 个
- 首次发布：2026-05-04T07:22:39.907Z
- 最新版本发布：2026-11-09T15:19:55.336Z
- 近 30 天下载量：1783（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：175（近 12 个月 175 个）

## 中文简介

引导 Byline CMS 安装器进入已有的 TanStack Start 应用程序

## 安装

```sh
npm install @byline/cli
```

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

## README

# @byline/cli (英语)

引导安装器 [线性CMS](https://github.com/Byline-CMS/bylinecms.dev) 输入已有的 TanStack Start 应用程序.

## 使用量

```sh
cd <your-tanstack-start-app>
npx @byline/cli init
```

安装器是一个分步向导. 它为计划中的文件撰写打印出统一的diffs. 确认模式相等于写入; 安全自动相可直接应用, 除非 `--dry-run` 已经设定.

```sh
byline init                    Run the wizard, re-detecting current installation state.
byline init --only db-init     Re-run a single phase.
byline init --from wire        Resume from a specific phase.
byline init --apply            Skip the per-phase confirmation prompt (still prints diffs).
byline init --dry-run          Show every change but write nothing.
byline init --database mysql   Select MySQL without the database prompt.
byline init --apply -y         Apply detected safe scaffold upgrades noninteractively.
byline doctor                  Inspect the current app and report what's wired.
```

见 `byline init --help` 为全旗列表.

### 数据库选择

安装器提供PostgreSQL(默认)和MySQL 8.0.14或更后. 过 `--database postgres` 或者说 `--database mysql` 以非交互方式选择。 马里亚DB 不支持, 而 Docker 策略仍然被推迟; 使用运行 带有管理员证书的服务器.

选择控制每个特定数据库的文物:

| 选择 | 软件包 | 连接变量 | 服务器配置 |
| --- | --- | --- | --- |
| 邮递SQL | `@byline/db-postgres` | `BYLINE_DB_POSTGRES_CONNECTION_STRING` | `pgAdapter()` 财务报告和审定财务报表 `@byline/db-postgres/admin` |
| MySQL 数据 | `@byline/db-mysql` | `BYLINE_DB_MYSQL_CONNECTION_STRING` | `mysqlAdapter()` 财务报告和审定财务报表 `@byline/db-mysql/admin` |

示例安装也收到匹配 `@byline/search-postgres` 或者说 `@byline/search-mysql` 供养. 最小设备省略了搜索. 这个 未选择的数据库软件包和环境变量不添加.

### 生成的收藏类型

`byline init` 创建 `byline/generated/collection-types.ts` 并添加两个应用程序脚本:

```sh
pnpm byline:generate        # regenerate after changing collection or block schemas
pnpm byline:generate:check  # fail without writing when the artifact is missing or stale
```

应用程序脚本评价 `byline/collections/index.ts`不装入 `server.config.ts`。收集图案仍然是运行时间登记册,而生成的模块 是它的定型,独立的类型Script投影,用于打字客户端和前端代码. 保留 完成CI的检查.

### 更新旧的脚手架和软件包

安装者检查依赖范围并需要文件而不是信任 旧完成相相旗. 运行 `byline init --apply -y` 应用检测到的安全性 脚手架升级. 缺少文件和公认的犬科前身可以是 安装,而用户拥有的脚手架、路由、维特、涡轮和CI各不相同 配置没有受到明确的手动指令的影响.

用于 CLI 版本 `x.y.z`时,选定的数据库适配器被固定在 `x.y.z` 因此,它符合捆绑的计划基线。 其他登记册支持的 `@byline/*` 依赖关系必须在 `>=x.y.z <(x+1).0.0-0`; 计划进行缺失或不兼容的申报 `^x.y.z`当地 `workspace:*`, (中文(简体) ), `workspace:^`,以及 `workspace:~` 链接永远不会 替换。 他们的软件包版本必须在当地解决,满足相同的要求 兼容层, 否则安装用手动屏蔽 指导.

在单列波中,从应用程序目录中运行 CLI 。 App文件保留在该目录下, 当 pnpm 设置时, Turbo 配置、 CI 检查和包管理锁定文件操作使用 最近的工作空间根,其宣布的软件包模式包括应用程序。 被排除的应用程序 这些模式仍然是独立的,不能改变外部工作空间的配置. 当拥有工作空间的人通过工作空间文件宣布一个软件包管理器时, root `packageManager`,或锁文件,安装器要求管理器和拒绝冲突 `--pm` 在规划依赖性之前. 对于一个软件包.json 唯一没有管理器元数据的工作空间,非交互运行必须通过 `--pm`。 。 。 . 选择 pnpm 创建 `pnpm-workspace.yaml` 现有工作空间套件模式 所需经费 `allowBuilds` 一起输入; npm, Yarn, 和 Bun 继续使用 package.json 工作空间.

### 已接通的应用程序( 后手动配置)

如果你用手把Byline接入你的应用(收集), `server.config.ts`, env, 路由, 脚手架文件全部到位), 只需要提供数据库和种子, 使用 `setup` 改为 `init`数字 :

```sh
byline setup                       Provision DB, then seed super-admin and example docs.
byline setup --database mysql      Select MySQL when no choice is recorded.
byline setup --no-seed-admin       Provision DB and seed docs only.
byline setup --no-seed-docs        Provision DB and seed super-admin only.
byline setup --no-seed-admin --no-seed-docs
                                   Provision DB only.
byline setup --reset --i-mean-it   Destructive: drop and recreate the database.
byline setup --force               Re-run every phase even if recorded as complete.
byline setup --force --reset --i-mean-it
                                   Full re-run: drop and recreate the database, then re-seed.
```

`setup` 运行前飞行、解析并核实数据库选择、检查 ,然后运行 `db-init` 财务报告和审定财务报表 的种子阶段。 它不会触及工程文件 。 递减或 推迟数据库选择在下游工作前停止命令 。 给新的 TanStack 启动需要全脚手架的应用程序, 使用 `byline init`。 。 。 .

默认 `setup` 咨询 `.byline-install.json` 并跳过阶段 记录为完整. `--force` 绕过完成状态,但不会转 将新的基线升级或削弱使用的数据库检查.

普通路径只应用 CLI 的释放特性, 被挤压的基线 转到缺少或空的数据库。 它拒绝现有的Byline计划 突变前不相关的占用计划。 升级现有安装 下方为本地 SQL 编号 `packages/db-postgres/sql` 或者说 `packages/db-mysql/sql` 从目标放出标记; 不适用 CLI 那些升级的脚本.

使用 `--force --reset --i-mean-it` 只是为了有意重建 重置跳过 占用数据库检查, 放弃命名的数据库, 重新应用新数据库 ,并丢弃所有文档数据。 无 `--i-mean-it`,重设路径 请求确认.

## 常见问题

### @byline/cli 是什么？

引导 Byline CMS 安装器进入已有的 TanStack Start 应用程序

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

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

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

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

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

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

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

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

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

@byline/cli 使用 MPL-2\.0 许可。弱 Copyleft：可以商用，也可以和闭源代码一起使用；但如果分发时修改了 MPL 授权的文件，这些文件的修改需以 MPL 开源。以上为概括，不构成法律意见，请以许可原文为准。

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

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

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

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

