在开发 DeepSeek Harness (DSH) 插件时,智能体往往需要调用外部命令行工具(如 gh, jq, ffmpeg)。直接在代码中拼接 Shell 脚本进行安装存在注入风险且难以验证。dsh-cli-store 提供了一个经过审查的注册表和安装器,专门用于管理这些外部 CLI 工具。
这是什么¶
dsh-cli-store 是由 Harzva 维护的 DSH 插件,旨在解决外部 CLI 工具的安装与验证问题。它不替代 DSH 插件市场,而是作为注册表,描述运行在 DSH 之外的二进制工具,并通过 DSH Bundle 将其集成到代理中。
核心功能¶
安装后,插件注册了以下工具:
dsh_cli_search:在本地注册表中搜索。dsh_cli_list:列出当前平台的所有注册表项。dsh_cli_discover:通过适配器搜索公共源并保存结果。dsh_cli_saved:读取本地保存的发现结果。dsh_cli_install_discovered:安装已保存且经源验证的条目。dsh_cli_doctor:检查已注册 CLI 的版本响应。dsh_cli_install:显示安装计划并执行。
安装与启用¶
安装插件需要使用 DSH 的 profile web 模式:
dsh plugin --profile web add https://github.com/Harzva/dsh-cli-store/releases/latest/download/dsh-cli-store-0.3.0.tgz
典型用法¶
- 搜索工具:
dsh-cli-store search workbench
- 列出注册表:
dsh-cli-store list --
- 网络发现并保存:
dsh-cli-store discover "image cli" --source github --limit 10 --save
- 查看已保存项:
dsh-cli-store saved image --
- 安装已发现的项:
dsh-cli-store install-discovered homebrew:ffmpeg --confirm --no-dry-run
- 诊断 CLI:
dsh-cli-store doctor gh
- 查看安装计划:
dsh-cli-store plan install gh
- 执行安装:
dsh-cli-store install gh --confirm --no-dry-run
安全与限制¶
插件采用安全优先的设计:
- 注册表条目和安装参数是经过审查的数据,而非原始 Shell 片段。
- 子进程使用
shell: false,禁止任意 Shell 字符串评估。 - 可执行安装程序仅限于代码允许的包管理器命令(如 brew install, winget install 等),手动安装器仅提供文档。
- DSH 默认为干运行模式,必须同时设置
confirm=true和dryRun=false才能执行写入操作。 - 医生模式仅调用声明的 CLI 及其版本参数。
- 发现功能在未显式请求时是只读的,且发现结果被视为不受信任的元数据,仅作为数据展示。
适用场景与注意¶
适合需要管理大量外部 CLI 工具的 DSH 插件开发者。使用时需注意,该插件以当前 DSH 进程的权限运行,安装前应审查源码与许可证。
总结¶
dsh-cli-store 通过严格的权限控制和验证机制,为 DSH 生态提供了可控的外部工具管理方案。
- 项目主页:https://github.com/Harzva/dsh-cli-store
- 插件目录:https://www.skillhub.cn/plugins/Harzva/dsh-cli-store