# @erdoai/cli 中文文档

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

版本：0\.237\.0
npm 元数据更新时间：2026-11-13T17:24:54.226Z
中文译文更新时间：2026-11-13T20:37:40.199Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：559 kB，4 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：^22\.13\.0 \|\| \>=23\.5\.0
- 运行依赖：2 个
- 首次发布：2026-06-18T11:31:44.794Z
- 最新版本发布：2026-11-13T17:24:54.036Z
- 近 30 天下载量：22166（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：236（近 12 个月 236 个）

## 中文简介

Erdo CLI——从终端或CI驱动数据集、页面和evals

## 安装

```sh
npm install @erdoai/cli
```

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

## README

# @erdoai/ cli (英语)

Erdo CLI——从终端或CI驾驶等离子体(和更多),在相同处 `/v1` REST API是MCP工具使用的.

## 安装

```bash
npm install -g @erdoai/cli   # global; then run `erdo`
npx @erdoai/cli --help       # or run without installing
erdo update                  # self-update to the latest published version
```

需要节点.js 22.13+. 用户界面安装文件 : [https://docs.erdo.ai/cli 互联网档案馆的存檔,存档日期2013-12-21](https://docs.erdo.ai/cli)

当发布较新的版本时,每个命令都会打印出一行 **标准** 命名已安装的版本并 `erdo update`它在Stderr上 所以Stdout留下 干净 JSON 用于脚本和代理, 已发布的版本会在磁盘上记住 每天重新检查一次 无法到达的登记簿上什么也没有说 都说吧 设定 `ERDO_NO_UPDATE_NOTIFIER=1` 让它安静下来 一个老建筑 `--help` 实值 正确自己,错误的产品,这就是失败 通知已经存在以停止.

## 认证

多账户,比如 `gh`。登录一个 API 密钥( 在 Erdo 中创建); 它被存储 每个账户 `~/.config/erdo/config.json` 并绑在你的活跃的兽.

```bash
erdo login                      # browser sign-in (mints + stores a token)
erdo login --key erdo_api_...   # headless/CI: paste an API key instead
erdo whoami                     # active account + org
erdo auth status                # all accounts (* = active)
erdo auth switch [email]        # switch active account (auto-toggles with two)
erdo logout [email]

erdo org list                   # your orgs (* = active)
erdo org use [id|slug]          # set the active org for this account
erdo --org acme eval suites     # one-off override for a single command
```

CI/scripting 的封面覆盖 : `ERDO_API_KEY`, (中文(简体) ), `ERDO_ORG`, (中文(简体) ), `ERDO_API_URL`, (中文(简体) ), `ERDO_ACCOUNT`。 。 。 .

## 数据集

读取一个数据集的两种方式,而区别很重要.

**`datasets fetch` 读取.** 你写SQL,所以相同的命令给出 每次使用相同的一行——用于任何机械,脚本,或运行于 一个特工 它的答案为 `{columns, rows, row_count}`。 。 。 .

```bash
erdo --org 2200-brickell datasets fetch 2200-brickell.page-events \
  --sql "SELECT event, count(*) FROM data GROUP BY 1 ORDER BY 2 DESC" --limit 20

erdo datasets fetch acme.leads --limit 50        # no SQL: just the rows
erdo datasets fetch acme.leads --filter <name>   # opt into a saved filter
```

这个表格是命名的 **`data`** 用于文件数据集(CSV、Excel和任何东西) 由事件管道所写),无论数据集的弹簧,它都是名称 或资源密钥, 和它是不可猜测的, 所以这是第一个得到正确. 柱子也是无法猜到的,所以在您写 SQL 之前请看:

```bash
erdo datasets schema acme.leads          # column names and types
```

`datasets schema` 读取存储的表格本身,从而显示列 事实上,那些 `fetch --sql` 可参考——而不是 可能落后于最近写作内容的计划. 数据库和仓库数据集通过其真实的表格名称进行查询,其中 来源于数据集的策略. SQL方言为DuckDB. 数据集的默认值 过滤器适用于每个读数; `--filter <name>` 在顶部添加已保存的过滤器,以及 更窄——一个命名过滤器从不绕过默认. 见 `erdo datasets filter list <slug>` 用于提供数据集的名称.

**`datasets query` 是自然语言的包装.** Erdo 写和运行 SQL为您服务,并用SQL与值并列的回答,所以它是一个 当您还不知道数据形状时,您可以到达。 它运行一个特工,所以它 速度较慢,而且没有确定性——两个相同的问题可以产生两个 不同的询问.

```bash
erdo --org 2200-brickell datasets query 2200-brickell.page-events \
  "which pages get the most views, and how many convert?"
```

**一个文件数据集保留了它过度渲染的版本.** 其内装物被储存,以及 每个替换它们的写法都保留它所替换的版本,所以导入 坏一排在好一排上 没有摧毁它们。 列出版本,然后 读回一个 `fetch` 同样的SQL,你会运行 与活台.

```bash
erdo datasets revisions acme.leads               # live version first, then superseded
erdo datasets fetch acme.leads --revision <id> \
  --sql "SELECT * FROM data"                     # query those older contents
```

历史是只读的:这里没有将一个数据集卷回. 恢复意味着 从旧版本中取出行并再次通过 普通写入路径.

```bash
erdo datasets list                     # slug, type, status, class, name
erdo datasets upload ./leads.csv       # create a dataset from a file
```

## 代理页面( P)

```bash
erdo agent ask "what was revenue last week?" --datasets sales
erdo threads create --name "landing build"       # -> thread id
erdo agent send <thread> "Build a landing page for ACME ..." --agent erdo.artifact-builder
erdo agent send <thread> "What should I do next?" --context "Current screen: checkout experiment"
erdo agent send <thread> "Summarize the existing data" --read-only

erdo pages deploy --title "ACME" --html @page.html --js @page.js --public
erdo pages list --type html_page
erdo pages get <artifact-id>
```

`--html/--js/--css` 接受 `@path` 读取文件。 向线索发送消息 运行一个代理——这也是造出文物者如何从简报中产生一页. 使用 `--read-only` 以限制默认 `erdo.data-question-answerer` 转向 只读代理工具。 其他特工被拒绝,旗被省去 默认, 因此已有的发送保留其行为 .

```bash
erdo runs list --agent erdo.artifact-builder --status failed   # inspect agent runs
erdo runs get <run-id>
```

## 爱德华

```bash
erdo eval suites                          # list suites (slug, agent, artifact?)
erdo eval suite landing-variations        # show a suite + its cases
erdo eval run landing-variations --watch  # run it and poll until done
erdo eval results <run-id>                # per-case scores + lenses
erdo eval runs --suite landing-variations # recent runs

# maintain the corpus
erdo eval case add landing-variations \
  --name "voice-concierge" \
  --input "Build a landing page for ACME with a voice concierge (agent id abc123) ..." \
  --rubric '[{"criterion":"voice widget loads and is on-brand","weight":2},{"criterion":"hero + form render correctly","weight":1}]'
erdo eval case rm landing-variations voice-concierge
```

`--watch` 如果运行不完全干净,则退出非零,所以它作为双倍 CI门.

## 开发

```bash
npm install            # or yarn
npm run dev eval suites   # run from source (tsx)
npm run build:check       # typecheck
npm run build             # bundle to dist/ (bin: erdo)
```

## 释放

**版本在 `cli/package.json` 是释放.** 把它装进同一个公关 变化(样本: `feat` - 未成年人, `fix` • 补丁和合并; `.github/workflows/publish-cli.yml` 出版任何内容 `main` 说和标记 结果。 没有标记可以记住 0.5.1 期间 `package.json` 改为0.23.0,每个工作引擎命令都是 任何安装它的人都无法到达.

npm本身是守护者:一个已经发布的版本在它之前就停止了工作 建筑,所以 `cli/` 变换时没有起伏, 重新运行, 并返回所有不操作。 A 类 变动 `cli/` 船不会撞到任何人.

## 常见问题

### @erdoai/cli 是什么？

Erdo CLI——从终端或CI驱动数据集、页面和evals

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

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

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

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

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

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

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

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

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

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

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

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

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

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

