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 結構,降低審批卡的理解成本。目錄與源碼:

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

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

小夜