前言¶
在 DSH Web UI 中,會話運行到需要審批的操作時,通常需要用戶逐項確認。對重複性或低風險操作,人工確認會成爲流程中的額外步驟。simon300000/dsh-auto 爲此提供一個 Auto Approve 權限預設:在每個需要審批的操作被插件允許或拒絕前,先由一個新的受限 DSH 子 Agent 審查。
當前發佈僅支持 Web UI。
這是什麼¶
dsh-auto 是倉庫所有者爲 simon300000 的 DSH 插件,許可證爲 MIT。它爲 DeepSeek Harness Web UI 增加一個權限預設,讓審批不再只依賴人工點擊,而是經過一個受限 Reviewer 子會話審查後,再由宿主做最終允許或拒絕。
核心功能¶
- 僅當會話選擇
Auto Approve時處理approval/request。 - 每次審批啓動一個受限 DSH 子 Reviewer 會話。
- Reviewer 在只讀沙箱中運行,並設置
approval/policy = never。 - 執行守衛只允許
read、glob、grep和 scoped structured-output tool,拒絕其他工具,不允許進一步 subagent,並最多允許四步調查加最終響應步驟。 - Reviewer 只做有界只讀調查,敏感文件僅在最小隻讀檢查能改變決策時纔可檢查。
- 結構化結果只要求
outcome,可包含risk_level、user_authorization和rationale。 - 宿主對
criticalrisk 一律拒絕;對沒有至少mediumuser authorization 的highrisk 也拒絕。 - 無效輸出、缺少 action 數據、超時、與取消無關的基礎設施故障和工具故障都按失敗關閉處理。
- 模型拒絕不會重試,也不會回退到用戶提示。
- 同一父 turn 連續三次拒絕會中斷該 turn;任何允許動作會重置計數。
- 默認 90 秒期限覆蓋子會話創建、所有模型步驟、本地只讀調查和最終結構化輸出。
安裝與啓用¶
先安裝插件:
dsh plugin --profile web add github:simon300000/dsh-auto
重啓 Web UI 後,在會話 Permissions 選擇器或 General Settings 的默認權限預設中選擇 Auto Approve。
典型用法¶
- 緊湊結果
{"outcome":"allow"}默認低風險且授權未知。 reviewerProvider和reviewerModel必須同時設置;若兩者都省略,Reviewer 使用父會話當前 provider 和 model。- 捆綁默認使用
deepseek-official/deepseek-v4-flash和highreasoning。 - 修改 configuration、policy 或 plugin code 後重啓 DSH。
適用場景與注意¶
適合在 DSH Web UI 中使用插件審批、希望減少人工確認但仍保留受限審查的場景。需要注意:
- 當前發佈僅支持 Web UI。
- Reviewer 的權限是受限的:只讀沙箱、
approval/policy = never、工具白名單、無進一步 subagent、步驟上限。 - 高/關鍵風險操作不會因 Reviewer 寬鬆而直接通過;宿主會對
criticalrisk 和未滿足授權條件的highrisk 做拒絕。 - 插件會改變 DSH 審批鏈路的實際行爲,並以當前 dsh 進程權限運行。安裝前應檢查源碼、配置與 MIT 許可證。
結尾¶
dsh-auto 的價值在於把 Auto Approve 從“直接放行”變成“受限 Reviewer 先審查,宿主再按規則裁決”。當前資料未提供目錄頁鏈接,倉庫地址爲:
https://github.com/simon300000/dsh-auto