# @descryy/cli 中文文档

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

版本：0\.20\.1
npm 元数据更新时间：2026-10-29T18:43:35.238Z
中文译文更新时间：2026-11-14T07:53:40.966Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40descryy/cli
原文对照：https://npmcn.com/package/%40descryy/cli/?lang=original
项目主页：https://github.com/descryhq-wq/descry-core#readme
源码仓库：https://github.com/descryhq-wq/descry-core

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

- 包体积（解压后）：829 kB，179 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=22\.5
- 运行依赖：3 个
- 首次发布：2026-09-01T00:04:45.502Z
- 最新版本发布：2026-10-29T18:43:34.996Z
- 近 30 天下载量：2117（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：39（近 12 个月 39 个）

## 中文简介

德克瑞的指挥线表面. 第一个命令是 `init`,它写一个多repo运行需要的宣告——在.descry/config.json中的工作空间id,以及当repo是单repo时的包/铺设声明. 也从未推断过.

## 安装

```sh
npm install @descryy/cli
```

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

## README

# @descryy/ cli (英语)

这个 `descry` 命令行工具。 它为Descry建立了一个寄存器,检查安装是否有效,在没有代理的情况下运行Descry的支票.

Descry将寄存器的源头读入一个图表,并告诉一个编码代理一个应用程序运行时所达到的改变,测试的是什么和中断的是什么,以及它无法检查的清晰清单. 该图由 [`@descryy/mcp`](https://www.npmjs.com/package/@descryy/mcp);此软件包是它的设置和命令行侧. 一切都运行在你的机器上.

## 所需资源

-   节点.js 22.5或更新.
-   一个有至少一个承诺的 Git 仓库 .
-   用于沙盒的 Linux 运行服务器报价(`observe`, (中文(简体) ), `generate_test`) (中文(简体) ). Descry自己的测试在Linux上运行;macOS和Windows还没有被验证.

## 快速启动

1.  在存储库中:
    
    ```
    npx -y @descryy/cli init
    ```
    
    写着 `.descry/config.json` 带有明确的寄存器身份和识别寄存器的语言适配器,记录此机已确认这些适配器,并打印下一步要做什么. 其输出的最后一行是精确的注册命令,此安装的服务器版本被填入.
    
2.  向您的代理注册服务器 。 克劳德代码:
    
    ```
    claude mcp add descry --scope local -- npx -y @descryy/mcp@<version> "$(pwd)"
    ```
    
    任何其他MCP客户端都采取与stdio命令相同的做法: `npx` 与论据 `-y`, (中文(简体) ), `@descryy/mcp@<version>` 和寄存器的绝对路径. `<version>` 是那个 `init` 打印: 此 CLI 的服务器版本已发布 .
    
3.  在经纪人,呼叫 `workspace` 带有动词的工具 `analyze` 用来构建图表.
    

提交 `.descry/config.json` 财务报告和审定财务报表 `.descry/.gitignore`数据库和其他所有信息 `.descry/` 留在这台机器上,被git忽略.

若为 `init` 找不到寄存器的适配器, 它说是这样的, 并打印一个的安装命令(`npm install @descryy/adapter-<name>`; 运行 `init` 之后再说 如果寄存器的配置已经列出此机尚未确认的适配器, `init` 列出他们,请您在终点站确认(`--yes` 未经询问即予以确认)。 没有终点站也没有 `--yes` 它证实了什么和指纹 `descry trust`从经纪人, `workspace` 动词 `trust_sources` 列出将装入并询问一次的准确内容.

## 图标

```
descry init [--workspace <name>] [--repo <name>] [--yes] [--json] [repository-path]
descry trust [--yes] [repository-path]
descry setup [--workspace <name>] [--repo <name>] [--yes] [--hook <agent>] [repository-path]
descry doctor [--json] [--fix] [repository-path]
descry check [--base <ref>] [--require-ready] [--json] [--scenarios] [repository-path]
descry qa gaps [--json] [--limit <number>] [--fail-on P0|P1|P2|none] [repository-path]
descry qa analyze [--json] [--limit <number>] [--fail-on P0|P1|P2|none] [repository-path]
descry qa validate-tests (--test <id>... | --file <path>) [--timeout-ms <number>] [--yes] [--json] [repository-path]
descry browse explore|autopilot|layout|prove-reach --url <address> [--safety <level>] [--yes] [--json] [repository-path]
descry analyze [--no-history] [--max-commits <number>] [--json] [repository-path]
descry approve browser --origin <address>... [--write] [--ttl <8h>] [repository-path]
descry approve tests --command <command> [--ttl <8h>] [repository-path]
descry approve sandbox | store [--ttl <8h>] [repository-path]
descry approve --list | --revoke <id> | --revoke --all
descry approvals list [--json]
descry approvals approve <id> | deny <id>
descry observe tests [--command <command>] [--cwd <folder>] [--no-coverage] [--yes] [--json] [repository-path]
descry scenario record <name> --url <address> [--yes] [--json] [repository-path]
descry feedback [--json] [--hook <agent>] [--refresh] [repository-path]
descry slop [--scope change|repo] [--base <ref>] [--paths <path>...] [--detectors fast|all|S1,S4] [--include introduced|all] [--limit <number>] [--detail minimal|standard] [--format json|text] [--refresh] [--fail-on-findings] [repository-path]
descry slop suppressions [--format json|text] [--limit <number>] [repository-path]
descry slop --hook <agent> [repository-path]
descry hook install|uninstall|restore|test --agent <agent> [repository-path]
descry viz [--port <number>] [repository-path]
descry credential set <name>
```

-   `init` 写入寄存器的身份、适配器、 `.descry/.gitignore`,而对于一个没有软件包声明的单曲,则在向您展示准确的diff后,再发布软件包声明. `--workspace` 设置一个工作空间id,用于共享存储器;将其留给一个单独的存储器. `--json` 将一个 JSON 对象与结果和下一步一起打印, 并且永远不要提示, 因此, 软件包声明只有在您也通过时才会被写入 `--yes`。 。 。 .
-   `trust` 列出此寄存器的配置名称, 此机器尚未确认, 在终端询问您, 并记录每个寄存器和每个寄存器的确认 . `--yes` 将问题跳过脚本;没有终端和没有 `--yes` 它证实了什么 并打印命令。 这是快速的替代 `DESCRY_TRUST_CONFIGURED_SOURCES=1`,它信任服务器打开的每个寄存器.
-   `setup` 执行存储器在一步或一无所求: `init`,构建图表,为浏览器工具安装Chrimium,然后对每个工具进行自试. 一个失败的步子 使整个跑回.
-   `doctor` 检查Descry能在这里运行。 它查看了节点版本及其内置的SQLite,安装了一个引擎复制件,这个CLI和旁边的服务器是一起发布的版本,npx的缓存一个半提取的软件包,常备的审批和等待你的审批,在一个寄存器中,它的git状态(一个寄存器,有承诺),配置,适配器,这台机器是否已经确认它们,图形和 `.gitignore`每一个发现名称 它的固定。 退出代码0全部通过,2只是警告,1是失败. `--fix` 仅从 npx 的缓存中删除已断开的 Descry 项, 并列出它们 .
-   `check` 运行更改镜、合同、验证和对您更改的文件的交叉PR检查,当发现缺陷时退出。 它的本意是钩子或者CI步骤. 0出口是干净的,1是屏蔽发现,2是检查无法运行. 过 `--require-ready` 在CI中,缺失的图表是失败而不是沉默的通关.
-   `qa gaps` 财务报告和审定财务报表 `qa analyze` 报告存储器的测试所证明的内容以及缺少该证据的地方,每个部分都标有完整、部分、不运行或失败的标签.
-   `browse`, (中文(简体) ), `observe tests`, (中文(简体) ), `qa validate-tests` 财务报告和审定财务报表 `scenario record` 是服务器仅在确认后提供的动词,用于CI和脚本。 每个字都印出服务器会同意的文本,在终端向您询问,并且只运行在“是”;没有终端,除非您通过,否则拒绝 `--yes`,用于输入它的人(一个添加它运行命令的代理商,不管其主机给予它什么 shell 许可, 和 `trust --yes`) (中文(简体) ). `browse` 打开浏览器会话,运行一个动词(`explore`, (中文(简体) ), `autopilot`, (中文(简体) ), `layout` 或者说 `prove-reach`并结束会议; `explore` 财务报告和审定财务报表 `autopilot` 点击和键入,所以需要 `--safety write`。 。 。 . `observe tests` 在运行前显示精确的命令行. `scenario record` 打开可见浏览器,记录您在其中的所为,直到按 Enter,并保存为 `descry/scenarios/<name>.scenario.json`; 您输入的密码从不存储, 步骤保留一个 `${credential:NAME}` 引用和名称都打印出来,这样您就可以用 `credential set`。 。 。 .
-   `analyze` 构建寄存器的代码图, 同样的构建 `workspace` 工具的 `analyze` 动词运行,所以 `check`, (中文(简体) ), `qa` 财务报告和审定财务报表 `observe tests` 可以在它之前没有MCP客户端. 它只装入此机确认的适配器;用未经证实的能建出它所能建的(git history),直言不讳地说没有读出源,2号出口. `--no-history` 跳过历史和 `--max-commits` 盖住它.
-   `approve` 是一个客户不能给你一个批准提示的代理人 它显示什么是批准,需要一个终端,你是否输入它;它没有 `--yes`。补助金是以下文件: `~/.descry/grants` 绑在这个仓库里 对你来说是私人的 它会过期的. `approve browser --origin` 允许只读关于您命名的确切起源的会话( 默认为8小时, 最多7天); `--write` 它允许写级会话,只在回回地址上(localhost, 127.0.0.1, \[:1\]). `approve tests --command` 允许输入准确的测试命令,通过 `observe tests`。 。 。 . `approve sandbox` 允许 `qa validate_tests` 财务报告和审定财务报表 `generate_test verify` 在此寄存器中, 该寄存器会运行于一个被网络拒绝的沙盒中 . `approve store` 允许写入 Descry 自己的商店( 事件、 答案、 牵引请求范围、 解除共享图链接 )。 除了只读浏览之外,所有东西最多都持续了24小时. 他们没有覆盖已保存的登录或信头 . `--list` 显示赠款和 `--revoke` 移除一个或全部。 存储器中的文件不能创建或拓宽 .
-   `approvals` 一次处理一个电话。 门牌动词的首个调用会排队批准 `~/.descry/approvals` (15分钟,最多50分钟,绝不是辩论本身); `approvals list` 说明究竟在等待什么, `approvals approve <id>` 您是否输入 id 并让代理的下一次呼叫运行一次 `approvals deny <id>` 拒绝。 它在任何客户端和无头运行中都起作用。 没有 `--yes`。 。 。 .
-   这里的每个提示都从控制终端读取,丢弃任何在提示出现前被粘贴的东西,只取您在提示后输入的东西,因此粘贴数个指令一次无法回答更早的问题. 独自运行每个命令 等待它的快。 没有终点站也没有 `--yes` 命令拒绝.
-   `feedback` 列出引入的未承诺的更改中存在的少数合同和配置缺陷. `hook` 在克勞德代碼(Claude Code, Codex),副驾驶,双子座或克爾斯(Cursor)中将它变成一尾钩并可以再去掉.
-   `slop` 在更改中查找低质量代码,或,随 `--scope repo`, 整个寄存器: 引用不存在的东西, 根和占位符, 吞入错误, 添加无用, 和测试 坚持什么。 它报告代码的属性,从来没有谁或什么写它,并且编辑什么. 它需要一个构建的代码图。 输出是用于读取的文本或 `--format json`; 一次部分运行在它的最后一行都这么说,并且从未被报道为干净. 退出 0 是完成运行, 1 是 `--fail-on-findings` 满足于一个得到有力支持的快速级发现所引入的更改,2是一个糟糕的论据,3是德斯克里拒绝运行(没有图,不是git寄存器),4是一个出乎意料的失败. `slop suppressions` 列出每个内行 `descry-slop-ignore` 标出它的理由. `slop --hook <agent>` 答案作为倒转的钩子:最多有五个一行的发现,当变化是干净的或任何东西出错时则一无所有;用手将其添加到代理的设置中.
-   `viz` 在一个已经建好的图表上为当地检查员服务.
-   `credential set` 读取一个从 stdin 到浏览器方案所使用的本地证书存储处的秘密 .

## 解决问题

运行 `npx -y @descryy/cli doctor` 在仓库。 新寄存器库最满足的信息 :

-   "没有.descry/config.json"或"没有来源":运行 `npx -y @descryy/cli init`。 。 。 .
-   "本机未确认":见"分析说没有读出源"下.
-   "不是git仓库"或"还没有承诺":运行 `git init` 并做出第一个承诺.
-   "descry-mcp:没有找到"或 `ENOTEMPTY` 从 npx: 运行 `doctor --fix`。 。 。 .

### 分析说没有源代码读取/ 适配器未确认

那么图中只有Git历史,没有代码. 按这个顺序处理:

1.  运行 `npx -y @descryy/cli init --yes` 在寄存器中,记录了这台机器对它所写的适配器的确认. 或运行 `descry trust` (见命令).
2.  如果配置已经列出适配器,请打电话 `workspace` 动词 `trust_sources` 并批准它提出的要求 告诉当事人期望这个即时;如果客户端不能显示一个,步骤一就是方法.
3.  打电话 `workspace` 动词 `analyze` 再来一次.

未设置 `DESCRY_TRUST_CONFIGURED_SOURCES=1` 在一个全球MCP服务器条目中。 它使服务器信任它所打开的每个寄存器的适配器列表,一个寄存器可以通过编辑一个已承诺的文件来更改该列表. 设定它只用于一个单一的,可信任的寄存器,在寄存器自己的服务器条目中.

### 自动模式中的 Claude 代码

Claude Code在Descry看到之前决定每个工具调用,通过许可规则,询问规则,或者在自动模式下,一个分类器. 规则被命名 `mcp__<server-name>__<tool>`时 `<server-name>` 你给的名字 `claude mcp add`。可自由允许阅读工具:

```
{
  "permissions": {
    "allow": [
      "mcp__descry__code_context",
      "mcp__descry__git_context",
      "mcp__descry__disclosure",
      "mcp__descry__check",
      "mcp__descry__reach",
      "mcp__descry__similar_incidents",
      "mcp__descry__draw_conclusion"
    ]
  }
}
```

内 `.claude/settings.local.json`。运行代码、驱动浏览器或写作的工具也可以按规则允许:它们的首通电话不会改变任何东西,一个人在许可提示中批准准确的句子: `descry_confirm`,允许规则不能跳过。 如果无法使用该工具(不是 Claude 代码或无头运行),则使用 `descry approvals`, (中文(简体) ), `descry approve` 或上述命令线双胞胎。 不要通过剧本或钩子 来赎回任何戴斯克里要求的东西.

## 已知限制

-   Playwright 和其他端到端测试仅通过已执行覆盖连接到代码(`observe` 动词 `tests`) (中文(简体) ). 测试的静态链接 `page.goto` 仅限于精确的文字路径,所以在覆盖运行之前,这样的套房节目是注册的,但没有覆盖任何东西.
-   变化镜解答的可靠性类是被接入的边缘上的最低值. 一个宽的diff可以成为C级,因为有少数R0边缘.
-   只有前端寄存器的图中没有 API 路由,所以 `check` 动词 `contracts` 在后端寄存器链接到 `workspace` 动词 `link`。 。 。 .

## 隐私

这里没有Descry服务 此工具所撰写的文件在仓库中 `.descry/` 文件夹,加上确认和储存的证书 `~/.descry/` 在这个机器上.

## 许可证

麻省理工学院

## 常见问题

### @descryy/cli 是什么？

德克瑞的指挥线表面\. 第一个命令是 init,它写一个多repo运行需要的宣告——在\.descry/config\.json中的工作空间id,以及当repo是单repo时的包/铺设声明\. 也从未推断过\.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

