# @earlyai/cli 中文文档

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

版本：2\.23\.16
npm 元数据更新时间：2026-11-01T00:28:36.089Z
中文译文更新时间：2026-11-01T01:07:57.410Z
软件包许可：ISC

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

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

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

- 包体积（解压后）：24.6 MB，25 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- Node.js 要求：\>=20\.19\.0
- 运行依赖：15 个
- 首次发布：2026-01-12T08:24:36.580Z
- 最新版本发布：2026-11-01T00:28:35.909Z
- 已发布版本数：139（近 12 个月 139 个）

## 中文简介

早期的cli

## 安装

```sh
npm install @earlyai/cli
```

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

## README

# @earlyai / cli

ai驱动的CLI工具，为TypeScript/JavaScript代码库生成单元测试。

需要Node.js >= 20.19.0。

安装为 `early` 命令（ISC授权）。

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

## 命令

### `gather-stats`

收集合并pr中早期ai生成的测试文件的采用统计数据。分析这 `.early.test.*` 文件被添加、修改或删除，并向EarlyAI后端报告采用指标。

**别名:** `stats`

```bash
early gather-stats [options]
```

#### 选项

| 选项 | Env Var | 默认的 | 描述 |
| --- | --- | --- | --- |
| `--api-key <key>` | `API_KEY` | \- - - - - - | 早期ai API密钥（必需） |
| `--token <token>` | `TOKEN` | \- - - - - - | GitHub/Bitbucket令牌（必需） |
| `--git-org <org>` | `GIT_ORG` | 自动检测 | Git组织名称 |
| `--git-repo <repo>` | `GIT_REPO` | 自动检测 | Git存储库名称 |
| `--scm-provider <provider>` | `SCM_PROVIDER` | `github` | SCM供应商(`github` 或者 `bitbucket`） |
| `--ref-name <ref>` | `REF_NAME` | \- - - - - - | 总行名称（必填） |
| `--backfill [value]` | `BACKFILL` | `false` | 忽略上次运行的时间戳并重新处理最近的pr |
| `--max-prs <number>` | `MAX_PRS` | `5` | 首次运行或回填时可处理的最大pr数 |
| `--pr-number <number>` | `PR_NUMBER` | \- - - - - - | 按编号处理单个PR |
| `--summary-only [value]` | `SUMMARY_ONLY` | `true` | 报告每个PR的采用摘要。何时 `false`，还包括每个文件的详细信息（文件路径、更改类型）和每个提交的故障 |

#### 它是如何工作的

**默认为增量。** 每次运行时，collect -stats都会记录一个时间戳。下一次运行只处理在该时间戳之后合并的pr -没有数量上限。

**第一次运行。** 如果之前的运行不存在，则没有时间戳可以开始。相反，它处理最近合并的pr直到 `--max-prs` (默认值:5)。

**回填模式(`--backfill`）。** 重置“since”时间戳，并重新处理最近合并的pr `--max-prs`． 使用它来重新处理丢失的pr或在错误修复后刷新数据。

**单PR模式(`--pr-number`）。** 只获取和处理指定的PR。 `--backfill`, `--max-prs`． 使用它刷新特定PR的数据。

**被报道的内容。** 合并或关闭的PR包含在报告中，如果：

1.  它的差异包含 `.early.test.*` 文件（添加、修改或删除），或
2.  它的任何提交包含 `.early.test.*` 文件,或
3.  它有一个EarlyAI工作流运行（早期运行在它上面，即使没有提交测试文件）

开放pr和没有早期ai参与的pr被跳过。

**PR状态跟踪。** 每个报告的PR包括其状态(`MERGED` 或者 `CLOSED`）. 这被发送为 `prState` 在采用条目中，允许后端存储它 `pr_change_type` 用于SUMMARY记录。UI可以使用它来区分合并的pr（绿点）和未合并的关闭pr。

**仅摘要模式(`--summary-only`违约: `true`）。** 默认情况下，只报告每个PR的采用摘要（添加、修改、删除或更改了多少个测试）。这会在后端为每个PR创建一个SUMMARY记录。集 `--summary-only false` 还包括每个文件的详细信息（文件路径、更改类型）和每个提交的分解——对调试或详细审计很有用。

#### 示例

```bash
# Normal incremental run
early gather-stats --api-key $KEY --token $TOKEN --ref-name master

# First run or backfill with more PRs
early gather-stats --api-key $KEY --token $TOKEN --ref-name master --backfill --max-prs 50

# Refresh data for a specific PR
early gather-stats --api-key $KEY --token $TOKEN --ref-name master --pr-number 1419
```

## 常见问题

### @earlyai/cli 是什么？

早期的cli

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

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

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

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

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

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

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

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

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

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

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

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

