前言¶
在 DSH 的智能體會話中,會話從當前沙箱模式升級到更高權限時,通常需要人工審批。若每次都由人確認,流程會被頻繁打斷;若直接放開,又缺少判斷依據。dsh-yolo-mode 是面向這個場景的 DeepSeek Harness 插件:在審批策略爲 ask 且會話處於可介入的沙箱模式時,用大模型對升權申請做自動裁決,並把不確定或異常路徑回退爲拒絕或轉人工。
這是什麼¶
dsh-yolo-mode 由 SeverusZh 維護,許可證爲 MIT。
它的定位是:在 DSH 的 ask 審批環節加入一個 LLM-powered auto-approval 層,對 workspace-write 會話中的 danger-full-access / workspace-write 升權申請進行裁決,降低重複審批的人工成本,同時保留拒絕與轉人工路徑。
核心功能¶
下面按能力介紹。
在特定審批場景介入¶
插件只在以下條件下介入:
- 審批策略爲
ask - 會話沙箱模式位於
modes中,默認modes爲['workspace-write']
在這個範圍內,插件會對 danger-full-access / workspace-write 升權申請調用裁判模型。
內置預設¶
內置預設包括:
offstrictbalancedpermissiveyolocustom
默認預設爲 balanced。插件不默認啓用 permissive 或 yolo。
自定義權限層級¶
levels 支持按目標模式設置策略,也支持通過 tools.<toolName> 對具體工具設置策略,並可配置 error 與 unsure 回退。
一個示例如下:
levels:
workspace-write: judge
danger-full-access: judge
error: delegate
unsure: delegate
tools.pwsh: delegate
tools.write: allow
這段配置把 workspace-write 和 danger-full-access 都交給裁判模型處理;當裁判出錯或不確定時轉人工;pwsh 工具轉人工;write 工具允許。
裁判提示詞¶
每個預設都有默認裁判提示詞。judge.systemPrompt 留空時,會按當前預設自動選用。
設置面板¶
插件提供設置面板「YOLO 審批」頁,可以在線修改:
- 預設
- 生效模式
- 裁判模型
- 層級表
審計日誌¶
每次裁決都會落一條 JSONL 審計日誌。狀態彈窗支持打開日誌,方便查看具體裁決記錄。
fail-closed¶
以下異常路徑不會直接放行:
- 超時
- 非法輸出
- 模型不可用
- 併發溢出
這些情況會回退爲拒絕或轉人工。
安裝與啓用¶
先安裝插件包。若從 npm 安裝,運行:
dsh plugin --profile web add dsh-yolo-mode
若從本地路徑安裝,運行:
dsh plugin --profile web add <項目絕對路徑>
插件聲明 Node.js 版本要求爲:
>=20
安裝後,如需覆蓋配置,先打開:
$DSH_HOME/profiles/web/cordis.patch.yml
然後按 id 覆蓋 yolo-mode 的 config。例如指定預設和裁判模型:
- id: yolo-mode
name: dsh-yolo-mode
config:
preset: balanced
judge:
provider: <provider>
model: <model>
這裏 judge.provider 與 judge.model 需要同時非空,裁判模型纔會啓用。
經過上面的步驟,重啓 DSH 並刷新瀏覽器後生效。
安裝注意事項¶
- 不要再用
- insert:添加yolo-mode或yolo-mode-bridge,否則啓動會報duplicate loader entry id: yolo-mode。 - 本地
link:開發時,checkout 需位於$DSH_HOME/profiles/下,或倉庫自帶node_modules,否則可能報ERR_MODULE_NOT_FOUND。
典型用法¶
使用默認預設¶
安裝後默認使用 balanced。如果只想先觀察審計日誌,可以暫不調整 preset。
指定裁判模型¶
在 cordis.patch.yml 中填入 provider 和 model。示例中的 <provider> 和 <model> 需要替換爲你當前 DSH 可使用的模型配置值:
- id: yolo-mode
name: dsh-yolo-mode
config:
preset: balanced
judge:
provider: <provider>
model: <model>
按目標模式和工具細分策略¶
如果希望按目標模式和工具細分策略,可以在 yolo-mode 的 config 中提供 levels:
- id: yolo-mode
name: dsh-yolo-mode
config:
levels:
workspace-write: judge
danger-full-access: judge
error: delegate
unsure: delegate
tools.pwsh: delegate
tools.write: allow
這段配置把 workspace-write 和 danger-full-access 交給裁判模型,把 pwsh 轉人工,把 write 允許;裁判出錯或不確定時也轉人工。
適用場景與注意¶
適合:
- DSH 會話中頻繁出現沙箱升權審批,希望用模型判斷替代部分人工確認
- 需要保留拒絕、轉人工和審計日誌,而不是無審計地全部放行
- 使用
webprofile,並願意按cordis.patch.yml覆蓋插件配置
注意:
- 插件作爲 DSH 插件在本地運行,會以當前
dsh進程可獲得的權限工作。安裝前建議先檢查源碼、依賴和MIT許可證。 - 它只在
ask審批策略和指定modes下介入。 judge.provider與judge.model需要同時配置,否則裁判能力不會啓用。- 本地
link:開發路徑要滿足 Node 模塊解析要求,否則可能遇到ERR_MODULE_NOT_FOUND。
鏈接¶
GitHub 倉庫:
https://github.com/SeverusZh/dsh-yolo-mode
社區目錄頁未列出具體 URL;如需檢索,可在 DSH 社區插件目錄中搜索:
dsh-yolo-mode