@deepdockai/cli

中文文档
1.5.0发布于 2026/11/12MITES Module零依赖构建来源已验证近 30 天下载 6525

Deepdock partner CLI: 配对设备, 查看系统和动作, 创建您的代码所运行的 API 密钥 .

中文使用文档
文档目录12 节
  1. 在你开始之前
  2. 快开始
  3. 图标
  4. 批准流程
  5. 代理和脚本的 JSON 模式
  6. 编码代理人的技能
  7. 窗口
  8. 警卫
  9. 发展
  10. 尝试本地更改
  11. 许可证
  12. 释放

深达克CLI

深渊 使客户的商业系统能够到达 一个API。 一个小的Deepdock客户端在客户的电脑上运行在他们的系统旁边;您的代码调用 Deepdock的REST API,而Deepdock在设备上运行动作. 顾客什么也没有 网络向互联网开放 每一个动作都由Deepdock构建和验证 是给你的.

此寄存器持有合作伙伴 CLI, 发布为 @deepdockai/cli 带有命令 deepdock,以及它为编码代理安装的技能.

npx @deepdockai/cli auth login

CLI 管理: 组织、 设备配对和 API 密钥, 它列出 设备提供的系统和动作。 它从不运行动作,从不保存或使用API 键。 动作从您自己的代码中运行,其中键为 CLI 写入您的 env 文件 .

节点22.13或更新. 在全球安装npm install -g @deepdockai/cli命令为 deepdock;以下示例使用该表.

在你开始之前

您需要一个 Deepdock 伙伴组织以及其中的一个成员账户; Deepdock 设置 与您一起组织(联系 深渊.ai) (中文(简体) ). 试试看 您需要一个演示设备: 由您自己运行的 Windows 机器与您的客户运行相同的系统, 并安装了 Deepdock 客户端 https://api.deepdock.ai/public/client/download 财务报告和审定财务报表 仅持有被发明,标记的数据. 客户端在未发作时会在其屏幕上显示一对编码.

快开始

签字 CLI 打印链接并在您的浏览器中打开( 不是在 CI 中, 没有显示, 用 --no-browser 或者说 DEEPDOCK_NO_BROWSER=1) (中文(简体) ). 请检查date=中的日期值 (帮助) 页面名称为您的计算机和CLI版本, 并单击批准。 没有输入终端密码 .

$ deepdock auth login
Opening the approval page in your browser (it expires in 10 minutes):
  https://dash.deepdock.ai/cli?request=rq_...
The page shows this computer's name and the CLI version: check them before you approve.
Opened in your browser.
Waiting for approval in the browser.

Signed in as [email protected].

选择工作组织,然后四处看看:

deepdock orgs select muster-it           # the default for every later command
deepdock devices list                   # paired devices, their status and systems
deepdock systems list                   # the systems and actions assigned to you
deepdock systems openapi example-erp > example-erp.openapi.json

用屏幕上的代码对齐您的演示设备 :

deepdock devices pair K7Q-4MX --label "Demo PC"

创建您的代码运行动作的 API 密钥 。 您需要组织中的管理角色; a 人类批准浏览器中的密钥, CLI 直接将其写入env文件, 保存 没有复制并显示值给任何人。 文件必须被 git 忽略, 以及 CLI 的 临时文件: a .gitignore 线条 .env* 两者都涵盖在内,如果Git能分辨出,则CLI拒绝另作选择.

deepdock keys create "myapp dev" --expires 30d --write-env .env.local

从这里你的代码读 DEEPDOCK_API_KEY 从 .env.local,以 Authorization: Bearer 每次请求 https://api.deepdock.ai/v1 并打电话给 openAPI 文档中描述的动作。 API本身(付费、写作) Idempotency-Key,每个错误代码、暂停和事件)由每个系统描述 deepdock systems openapi <system> 并显示在仪表板上;以下技能带有相同的 知识进入你的编码代理.

图标

deepdock auth      login | status | logout
deepdock org       list | select [slug]
deepdock systems   list | openapi <system>
deepdock devices   list | pair <code> | rename <deviceId> <label> | release <deviceId> | systems <deviceId>
deepdock actions   list <deviceId> <system>
deepdock keys      list | create <name> | revoke <id>
deepdock incidents list
deepdock skill
命令它会做什么
auth login在浏览器中签名和批准; 登录持续90天
auth status由谁签名, 组织, 以及创建的 CLI 密钥( id, name, prefix, external, 文件; 从不包含值); 未签名时退出 5, 如 gh auth status
auth logout [--keep-keys]取消登录和创建的每个 CLI 密钥(--keep-keys:只有登录)
orgs list, (中文(简体) ), orgs select [slug]您的组织; 设置默认的组织
systems list分配给贵组织的系统与行动
systems openapi <system>系统在 stdout 上的 OpenAPI 文档, 重定向时赤裸; 保存到文件
devices list配对设备,包括id、标签、状态、系统以及上次看到的设备
devices pair <code> [--label <text>]按屏幕上的代码对一设备
devices rename <deviceId> <label>, (中文(简体) ), devices release <deviceId>重命名设备; 从组织中解开它( admin)
devices systems <deviceId>设备的活系统与动作状态, 包括暂停的原因
actions list <deviceId> <system>设备提供的每一个动作, 及其操作和领域
keys list, (中文(简体) ), keys create <name>, (中文(简体) ), keys revoke <id>该组织的 API 密钥( 创建并撤销: 管理员)
incidents list公开事件和过去30天内结案事件
skill [--agent claude|codex|cursor|all]将代理技能安装到当前目录

全球旗帜 : --org <slug> 财务报告和审定财务报表 --json 每个命令, --yes 以确认 devices release 财务报告和审定财务报表 keys revoke 没有问题, -h, --help 无处不在 -v, --version 在根头. deepdock <command> --help 有细节, deepdock help exit-codes 出口密码.

二事从来猜. 设备总是以其全名命名: 无默认设备, 无 通过标签搜索。 这个组织来自 --org,则 DEEPDOCK_ORG默认值 选择方式 deepdock orgs select完全由一个组织使用,无需询问(和 以 stderr 命名 ; 没有选择命令停止并列出它们.

批准流程

auth login 财务报告和审定财务报表 keys create 从不要求密码或密钥。 他们打印了一个链接,一个人类 在Deepdock仪表板中打开并点击批准,CLI收集结果. 页面 显示请求的计算机名称和 CLI 版本,这样您就可以告诉请求属于您. 批准不会给批准人任何好处:只有启动申请的CLI才能收取 结果。 请求停留10分钟.

没有终端(一个编码代理的外壳,一个脚本),两个命令都会打印请求并退出; 人类批准, 请求将在后面完成:

deepdock auth login --no-wait --json      # data.pending.request and data.pending.url
deepdock auth login --wait <request>
deepdock keys create "myapp dev" --expires 30d --write-env .env.local --no-wait --json
deepdock keys create --wait <request>

Ctrl-C在等待期间将请求搁置; --wait <request> 还原它.

代理和脚本的 JSON 模式

在终端上,你得到的桌子和普通句子。 当Stdout不是终点站时,或者与 --json,每个命令都会在 stdout 上打印出一个文档:

{
  "data": { "...": "the API's data, unchanged" },
  "meta": { "org": { "slug": "muster-it", "name": "Muster IT" }, "requestId": "..." }
}

systems openapi 是终端上唯一的例外: 它会打印 OpenAPI 文档本身, 所以 deepdock systems openapi <system> > openapi.json 保存生成器可以读取的文档(--json 给信封。 列表和显示命令 data aPI的答案没有改变 所以CLI显示的是 您的代码会收到; auth, (中文(简体) ), orgs select 财务报告和审定财务报表 keys create 从命名的地上建起 。 A 类 失败是 stderr 上的一份文件, { "error": { "code", "message" }, "meta": { "hint" } }, (中文(简体) ), ,而API的错误对象不变。 打开 code 或者在退出代码上,永远不要 message。 。 。 .

退出含义
0 个已执行
1个命令行中要修正的( )invalid_usage, (中文(简体) ), org_required(中文(简体) )
2个aPI拒绝了请求;不重复不变(invalid_request, (中文(简体) ), not_found, (中文(简体) ), forbidden, (中文(简体) ), rate_limited 和其他拒绝)
3个稍后重试( r)device_offline, (中文(简体) ), device_timeout, (中文(简体) ), device_syncing, (中文(简体) ), device_outdated, (中文(简体) ), action_paused, (中文(简体) ), access_outdated, (中文(简体) ), access_missing, (中文(简体) ), credentials_rejected, (中文(简体) ), certificate_changed, (中文(简体) ), system_unavailable, (中文(简体) ), target_busy, (中文(简体) ), temporarily_unavailable, (中文(简体) ), internal_error, (中文(简体) ), outcome_unknown, (中文(简体) ), connection_lost(中文(简体) )
页:1cLI对API来说太老了(cli_outdated: 运行 npx @deepdockai/cli@latest
页:1需要登录( e)sign_in_needed, (中文(简体) ), approval_denied, (中文(简体) ), approval_expired(三); auth status 当没有人签名时

CLI从不自行复试:出道口3表示复试,由你决定何时复试. deepdock commands --json 打印整个命令树.

编码代理人的技能

skill/ 是克洛德密码 密码和克塞尔的技巧 它教一个特工 Deepdock 模型(组织、 API 密钥、 设备、 系统、 动作), 食谱从登录到 a 测试集成, 如何读取 OpenAPI 文档而不是猜测字段名称, 写 与 Idempotency-Key,每一个错误代码,是否要重试, 和规则它永远不会 请求、读取或打印 API 密钥值。 它在TypeScript和 彼菩萨. 通话速度最快于一次再利用的HTTP连接(keep-alive),因为一新连接可以打出一个冷开.

deepdock skill                      # all three agents
deepdock skill --agent claude       # .claude/skills/deepdock/
deepdock skill --agent codex        # a marked section in AGENTS.md
deepdock skill --agent cursor       # .cursor/rules/deepdock.mdc

Codex 和 Cursor 共享下面的参考文件 .deepdock/references/做它写的, 所以每个克隆人和特工都看到了同样的技能 更新 CLI; 后再次运行命令 重写它安装的文件 .

该技能坚持用发明的,有标记的数据对演示设备进行测试: 您的代码设置了一个 TEST-DEEPDOCK-<6 random characters> 在它创建的每一个记录中标记,没有真正的客户数据到达固定,日志或提示.

窗口

macOS和Linux不需要什么特别的。 在视窗上 :

  • npx @deepdockai/cli 需要节点22.13或更新.
  • 用于 Windows 的 Git 必须安装用于忽略检查 --write-env没有它,关键是 仍然写着,在stderr上警告说CLI无法用git检查.
  • 文件设置在 %APPDATA%\deepdock\config.json 和嵌入文件,无论您在哪里 点 --write-env。Windows没有 POSIX 文件模式:两个文件都保留其权限 文件夹。 下 C:\Users\<you> 只有您可以读取它们; 在其它文件夹中, PC 的其他用户 也许可以。 因此,每一次写Env文件的运行都会印出一行这样写的字. 这个 设置文件保存您的签名和生活 %APPDATA%,只有您可以读取 默认.
  • 在"PowerShell"中,引用一条带有空格的路径,并对整个论据使用相同的引用: deepdock keys create "myapp dev" --expires 30d --write-env ".\my app\.env.local"后鞭打 和前锋鞭打两个工作.

警卫

  • 没有显示任何密钥 . CLI 既不打印 CLI 签名,也不打印 API 密钥值 任何旗帜,任何溪流. auth status 财务报告和审定财务报表 keys list 显示标识、前缀和过期。 报告 键值达到 stdout, stderr, 设置文件或日志是安全报告.
  • 钥匙直接写到你的文件. keys create 写入 DEEPDOCK_API_KEY=<key> 输入 文件名称 --write-env 并且没有副本。 在 git 仓库内必须忽略文件 ;拒绝象征性链接。 在寄存器之外, 密钥被写入 警告; 如果 git 无法回答( 未安装, 权限或所有权错误, 其他任何错误 ) 失败)键仍然被写入,并在stderr上发出警告,命名文件和原因,以及 你一定要保证它不是 承诺。 现有 DEEPDOCK_API_KEY= 替换行并设置文件为模式 600. 键被写入时,它坐落在目标旁边的600模式临时文件(用于 .env.local, (中文(简体) ), .env.local.deepdock-tmp-<random>页:1 .gitignore 线条 .env* 或者说 *.deepdock-tmp* 覆盖它;当 git 答案和名称不被忽略时, CLI 拒绝在任何事情之前 创建.
  • 批准链接不是证书. 它命名请求;结果以 一个CLI生成并保存的秘密.
  • 密钥已过期, 可以被撤销 . 钥匙到达组织的所有设备直到它 过期(最长为90天,离《民事责任法》)或被撤销. deepdock keys revoke <id> 撤销它 删除 CLI 所写的行; deepdock auth logout 取消登录和每个密钥 创建 CLI, 除非你通过 --keep-keys。在一个终端上,它列出密钥并先问 (默认:保留);与 --json 或者没有终点站,它就会取消他们,除非 --keep-keys 通过。 单位 --json, (中文(简体) ), data.removed 说到底发生了什么 null 用于此密钥 CLI从来不写,不然 { file, name, removal } 与 removal done, (中文(简体) ), absent (行 )或 failed (带有 reason) (中文(简体) ). 如果文件被打开 通过另一个程序(一个Dev服务器在Windows上观看),密钥仍然被吊销,并且 命令退出 0,同时警告该行仍在文件中,必须手取删除. keys revoke 然后保持它的分类账条目, 所以运行 keys revoke <id> 文件再次出现 免费删除行( API 的“ 未找到” , 用于键本身的组织计数 ) 撤销,和 data.alreadyRevoked 说吧. auth logout 报告失败 apiKeysRevoked[].removed 内 meta.hint,并清除其本地记录 无论是哪种方式.
  • 当地州 住在这里 $XDG_CONFIG_HOME/deepdock/config.json,则 ~/.config/deepdock/config.json (单位:千美元)%APPDATA%\deepdock\config.json 在窗口上,或者在 $DEEPDOCK_CONFIG_DIR/config.json 当设定绝对路径时; 模式 600, 在目录中 CLI在不存在时创建了模式700. 它持有登录、默认组织、 密钥的代号 创建了CLI(绝不是其价值),并提出了等待批准的申请. 其它用户可以读取的文件 与 chmod 运行.
  • 环境: DEEPDOCK_ORG, (中文(简体) ), DEEPDOCK_BASE_URL (仅供本地主机使用), DEEPDOCK_CONFIG_DIR, (中文(简体) ), NO_COLOR, (中文(简体) ), FORCE_COLOR (在不是终端的流上显示颜色;); NO_COLOR ) (中文(简体). 签名或待决请求从不会发送到与其不同的基址 被提出反对.

以电子邮件报告易被 托尔本@deepdock.ai,而不是公开问题: 警卫。 。 。 .

发展

bun install
bun run build         # dist/deepdock.js, one ESM file with no runtime dependencies
bun run test          # builds, then runs vitest under Bun
bun run test:node     # the same tests under Node (needs dist/ from the build)
bun run format && bun run lint && bun run typecheck && bun run check:public

尝试本地更改

bun run dev 从源头运行 CLI 。 每个 API 在下方获得自己的设置目录 <config dir>/deepdock-dev/<api host>/因此,一个对一个API的签注 从来没有坐在旁边 ; 只有 CLI 自己的设置移动(DEEPDOCK_CONFIG_DIR),机器上没有其它内容:

bun run dev -- auth status                                      # the production API
DEEPDOCK_BASE_URL=http://localhost:3000 bun run dev -- auth login --no-wait

脚本不依赖于当前目录: 从其它地方, 按其路径称呼它 (单位:千美元)bun /path/to/devkit/scripts/dev.ts ...),或放进 DEEPDOCK_BASE_URL=... bun .../dev.ts 线条 每个API的外壳别名。 要运行精确的柏油球 npm 会发布,从任何目录:

bun run pack:try -- auth status      # builds, packs, prints the one-line command to run it

它印着 DEEPDOCK_BASE_URL=... DEEPDOCK_CONFIG_DIR=... npx -y --package=/path/to/deepdockai-cli-<version>.tgz deepdock auth status, (中文(简体) ), 用于相同的 API 和设置目录 bun run dev 将使用(npx <tarball> 一个人会尝试 以执行归档). tests/fakeApi.ts 本地站点,可按 一次:

bun scripts/fakeServer.ts &              # prints its URL
DEEPDOCK_BASE_URL=http://127.0.0.1:<port> bun run dev -- auth login

许可证

麻省理工学院。 。 。 .

释放

更改合并后自动发布; 没有人运行 npm publish来运送一个变化,起伏 version 内 package.json 并添加匹配 ## <version> 条目为 CHANGELOG.md 在你的拉动请求。 检查拉动请求需要 当已发布文件更改时, 凸起值。 当拉动请求合并到 main,释放 工作流程测试代码,扫描准确的柏油球,发布到 npm 与出处,然后标记 v<version> 并创建一个 GitHub 发布,以更改日志条目作为注释.

版本与发布记录

@deepdockai/cli 共发布 36 个版本,首次发布于 2026/10/24;过去 12 个月发布了 36 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.5.0latest2026/11/12今天
1.4.12026/11/102 天前
1.4.02026/11/092 天前
1.2.02026/11/074 天前
1.1.22026/11/074 天前
1.1.12026/11/075 天前

关于 @deepdockai/cli 的常见问题

@deepdockai/cli 是什么?

Deepdock partner CLI: 配对设备, 查看系统和动作, 创建您的代码所运行的 API 密钥 .

如何安装 @deepdockai/cli?

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

@deepdockai/cli 支持 TypeScript 吗?

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

@deepdockai/cli 支持 ESM 还是 CommonJS?

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

@deepdockai/cli 需要什么版本的 Node.js?

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

@deepdockai/cli 可以商用吗?

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

@deepdockai/cli 的下载量有多少?

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

@deepdockai/cli 还在维护吗?

最新版本 1.5.0 发布于 2026/11/12(今天);至今共发布 36 个版本,其中过去 12 个月发布了 36 个;首次发布于 2026/10/24。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。