dsh-approval-explain: 在 DeepSeek Harness 审批卡片中添加解释按钮

前言

DeepSeek Harness (DSH) 在处理智能体任务时,需要用户对特定操作进行审批。当前的审批卡片详情区域仅支持显示 command 类型的工具参数(如 bash、pwsh)。对于 write、edit 等使用 file_path 或 path 参数的工具,该区域始终为空。这导致用户在点击“允许”或“拒绝”前,无法直观了解具体操作的内容和潜在风险。

dsh-approval-explain 插件通过在审批卡片中增加“Explain”按钮,利用一次 LLM 调用生成操作摘要(包含操作内容、涉及文件、安全性评估),解决详情区域为空的问题。

核心功能

  • Explain 按钮:在审批卡片详情区域增加一个解释按钮,点击后生成操作摘要。
  • 全参数支持:支持 command、file_path、path 三种参数形状,不再局限于特定工具。
  • 视觉复用:复用原生按钮样式(轮廓、36px 胶囊形状),并使用 DeepSeek 家族配色方案。
  • 命令行支持:除按钮外,也支持在编辑器中直接使用 /explain <content> 命令。
  • 无需构建授权:插件直接提交构建产物,无需触发 pnpm 的构建提示。
  • 非侵入式:作为增量插件,不会禁用 DSH 的其他功能。

安装与启用

该插件需要 DSH 版本 0.1.5-rc.1 或更高版本,且仅支持 Web GUI。

  1. 确保已安装 pnpm:
    corepack enable pnpm
  1. 执行安装命令:
    dsh plugin --profile web add github:Martlet-Tech/dsh-approval-explain
  1. 安装后需重启 DSH 进程,配置文件才会重新加载。

如果安装后未生效,检查 $DSH_HOME/profiles/web/package.json,确认 dsh.profile.bundles 中是否包含 dsh-approval-explain。

使用方式

安装并重启 DSH 后,在审批卡片中会出现“Explain”按钮。点击按钮,系统会调用 LLM 分析当前待审批操作,并返回三行摘要:
* What: 操作的具体内容
* Touches: 涉及的文件路径
* Safety: 安全性评估

也可以直接在消息编辑器中使用以下命令:

/explain <content>

注意事项

  • Web GUI 限制:该插件目前仅支持 Web 界面。
  • 日志留痕:每次点击解释都会在会话日志中留下 command/run 和 command/done 的记录,便于审计,但也意味着每次操作都有痕迹。
  • Token 消耗:解释功能会产生 LLM 调用,输出长度被限制在约 700 个 token。
  • 卡片覆盖:该插件会接管整个审批卡片的显示,而非仅增加一个按钮。
  • 底层耦合:插件内部逻辑依赖于 DSH 的 StreamChunk 字段名(text-delta、block-end、finish),如果 DSH 更新这些字段,插件可能需要适配。
  • 不影响结果:解释功能仅提供参考,不会改变审批的实际结果,也不会缓存判断。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜