dsh-auto-review-zh:把 Auto review 拒绝理由写成中文 wait-what

前言

DeepSeek Harness(DSH)在权限预设为 Auto review(自动审查) 时,会在每次工具调用前做一次风险判断。若拒绝,审批卡里会显示审查模型返回的 reason。原版审查提示词是英文,拒绝理由往往也是英文短句,例如说明 force push 会改写远端历史。对不熟悉 Git 或英文表述的使用者来说,这类文字既没交代「你刚才要做什么」,也没说清「点允许或拒绝分别意味着什么」。

事后翻译审批卡上的文字,不能改变审查模型生成理由时的约束,还可能和当时的操作上下文脱节。社区插件 dsh-auto-review-zh(维护者 nekorc,分类为模型推理)在审查请求发出时插入中文规则,让模型仍按同一套 JSON 输出风险与决策,只把 reason 改成「背景 → 原因 → 选择」的简体中文,且不增加第二次模型或翻译 API 调用。


这是什么

dsh-auto-review-zh 是 DSH 的 host 插件(MIT 许可,当前版本 0.1.0),挂在 SkillHub 目录 与 GitHub 仓库。项目说明中写明:Community plugin,与 DeepSeek 无隶属关系。

它解决的是 Auto review 拒绝理由的可读性:不改低/中/高风险判定、不改允许/拒绝规则、不改审批按钮行为,也不改返回 JSON 的字段形状;仅在识别到自动审查的 llm/stream 请求时,在原有策略与 JSON 格式段之间插入中文 wait-what 说明要求。


核心功能

资料中已核实的点如下:

  1. 审查模型在生成拒绝理由时直接写 简体中文,结构固定为 背景 → 原因 → 选择,并尽量不用未解释的术语。
  2. 不 fork、不修改 DSH 自带的 @deepseek-ai/dsh-experimental-auto-review,也不改 app.asar;安全规则原文保留,模型仍只输出合法 JSON(risk、decision、reason)。
  3. 不增加额外翻译 provider;增强后的审查仍走宿主已有的同一模型与 provider。
  4. 可通过 profile 配置 enabled: false 临时回到英文理由,或从 bundle 与依赖中移除以完全卸载。
  5. 提供 state/loaded.json、state/last-enhancement.json 两个很小诊断文件,用于确认加载与是否增强过审查请求(仅时间戳、PID、提示词长度,不记用户数据)。
  6. 测试方面:README 记载 12 个单元测试,覆盖提示词插入、递归保护、放行、关闭开关与失败回退;CI 在 GitHub Actions 上运行。

效果对比(README 示例,实际措辞会随操作变化):

改造前:

Auto review 拒绝了此调用:Force push rewrites remote history and requires explicit authorization.

改造后:

Auto review 拒绝了此调用:你让我把本地提交推到远端 main 分支。我准备执行强制推送,这会覆盖远端历史,可能丢掉别人的提交,所以按中风险拦下。若你确认远端只有你的提交,可以点「允许一次」;否则请点「拒绝」,并告诉我改用普通推送或先备份。

审批卡标题里的 Auto review 仍为英文功能名;正文理由为中文。


工作原理(简述)

自动审查请求的特征是 system 以 REVIEW_POLICY 开头。本插件在 llm/stream 上监听,只对这类请求复制并在 JSON 格式段之前插入中文规则,用 WeakSet 避免对同一请求对象重复处理;其他模型调用原样放行。若 DSH 将来改掉 REVIEW_POLICY 前缀,插件会自动不生效,Auto review 仍可用,只是理由回到英文。


安装与启用

前置条件:已安装 DSH 并能使用 Auto review;能编辑 desktop profile(Linux/macOS 为 ~/.dsh/profiles/desktop,Windows 为 %USERPROFILE%\.dsh\profiles\desktop);安装或改配置后需 重启 DSH(host 插件,刷新页面不够)。插件仅在权限预设为 Auto review 时生效。

插件管理器(资料原文规格)

若 DSH 插件管理器支持 GitHub 规格:

github:nekorc/dsh-auto-review-zh

请确认装进 desktop profile 并重启。若管理器无法直接操作 desktop profile,需用手动 link 方式(见仓库 README)。

Web / CLI profile

若使用 dsh CLI 的 web profile:

dsh plugin --profile web add github:nekorc/dsh-auto-review-zh

DSH Desktop 使用 desktop profile,不是 web。

手动 link(README 推荐;Windows Desktop 已验证)

在 profile 的 package.json 的 dependencies 中追加 link: 指向本地插件目录,在 dsh.profile.bundles 中追加 dsh-auto-review-zh(保留原有 @deepseek-ai/dsh-experimental-auto-review 等条目),并在 node_modules 下建立 junction 或符号链接。具体路径与 PowerShell / bash 命令见 GitHub README 安装章节。

重启后,在权限选择器中选择 Auto review(自动审查)。检查 dsh-auto-review-zh/state/loaded.json 是否存在;执行一次会触发审查的工具调用后,若出现 state/last-enhancement.json 即表示已增强过审查请求。


配置、关闭与卸载

在 profile 的 cordis.patch.yml 中可覆盖:

- id: dsh-auto-review-zh
  config:
    enabled: false
键 默认 说明
enabled true 为 false 时理由回到英文,Auto review 逻辑不变
diagnostics true 是否写入上述两个诊断文件

改配置后需重启 DSH。完全卸载时:备份 package.json 与 cordis.patch.yml,从 bundles 与 dependencies 移除本插件,删除 node_modules/dsh-auto-review-zh 链接,再重启。原实验性 Auto review 包未被本插件修改。


兼容性与限制

DSH 版本 状态
0.2.1-rc.5 已验证(Windows DSH Desktop)
0.2.x 预期可用
0.3.x 未验证;package.json 的 engines.dsh 暂不包含

需要 Node >=20(由 DSH 运行时提供)。README 标明状态为 experimental。

已知限制包括:不翻译除拒绝理由外的其他界面;子代理在 never 审批策略下的最终英文错误不由本插件处理;模型偶发仍可能写英文或略超字数;每次审查大约多 400–500 token 的固定提示词成本。本插件 不是安全边界,不能把不安全操作变安全,最终判断仍以原 Auto review 为准。


适用场景与注意

适合谁: 在 DSH Desktop 或 CLI 中长期开启 Auto review、希望审批卡拒绝理由用中文、且希望保持原有风险分级与按钮语义不变的开发者或团队。

安装前建议: 插件以当前 DSH 进程权限运行,会介入发往 llm/stream 的审查请求(仅改提示词插入,资料声明不持久化提示词内容与工具参数)。安装前应阅读仓库中的 lib/index.js、lib/prompt.js 与 MIT 许可证,并确认 DSH 版本落在 >=0.2.1-rc.5 <0.3.0 的声明范围内。

排障速览: 无 loaded.json 多为 bundle 或链接未建好或未重启;理由仍英文可能是模型未遵守规则或 REVIEW_POLICY 前缀变化;无审批弹窗需确认当前为 Auto preset 且审批策略不是 never。


结尾

dsh-auto-review-zh 在不动风险判定的前提下,把 Auto review 的拒绝理由改成中文 wait-what 结构,降低审批卡的理解成本。目录与源码:

羽毛球分组比赛记分
小程序二维码

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

Xiaoye