DSH 的默認權限模型通常比較極端:要麼過於保守,頻繁要求確認導致流程阻塞;要麼過於激進,允許危險操作直接執行。dsh-perm-guard 旨在作爲這兩者之間的“中間層”,通過自動審批常見操作並攔截危險指令,平衡開發效率與安全性。
插件簡介¶
dsh-perm-guard 是 DeepSeek Harness (DSH) Web 端的權限自動審批插件,由社區開發者 a903067276-rgb 維護。
該插件攔截 DSH 代理在執行命令(如 bash、pwsh)或文件操作(write/edit)時的權限請求。在默認配置下,文件編輯、Git 提交、構建測試等常規操作會自動放行;而刪除文件、提權、網絡下載執行等破壞性操作則會強制要求人工確認。
核心功能¶
- 雙模式策略:提供“標準”和“激進”兩種模式。
- 標準模式:僅在信任目錄內自動放行操作,跨目錄或危險操作需確認。
- 激進模式:取消位置限制,僅對破壞性操作(如刪除、提權)強制確認。
- 細粒度控制:支持 11 個類別的三態開關(自動/詢問/拒絕),可自定義各類操作的默認行爲。
- 審計與持久化:記錄每一次審批決策的時間戳和命令摘要,配置保存在
~/.dsh/perm-guard.json,重啓後自動加載。 - 全入口覆蓋:攔截 DSH 所有審批入口點,包括
bash、pwsh以及write/edit文件工具。
安裝與啓用¶
在終端中執行以下命令安裝插件,然後重啓 dsh web。
dsh plugin --profile web add "github:a903067276-rgb/dsh-perm-guard#main"
安裝完成後,在瀏覽器中刷新 DSH Web 頁面即可生效。
使用方法¶
- 全局開關:在 Composer 工具欄(輸入框左側)點擊“Auto 按鈕”。按鈕變綠表示自動審批功能已開啓。
- 模式配置:進入 Settings 頁面,找到“Auto 權限”選項。在這裏可以切換標準/激進模式,調整 11 個類別的開關,或編輯信任目錄列表。
- 生效範圍:規則在插件開啓期間對所有會話生效,包括子代理。
注意事項與兼容性¶
- 版本兼容性:
- DSH 版本
0.1.5及以上與插件版本v0.2.8不兼容。安裝 v0.2.8 會導致整個插件樹加載失敗,Web 應用無法啓動。請使用main分支或v0.2.9及以上版本。 - DSH
0.1.0-rc.6至0.1.5系列已測試兼容。
- DSH 版本
- 安全邊界:
- DSH 的沙箱沒有 OS 級別的網絡隔離能力。插件僅能通過檢測命令文本中的
curl|sh等模式來識別網絡下載執行行爲,無法阻斷其他網絡流量。 - 終端會話、MCP 工具調用、模型調用目前不在此審批系統覆蓋範圍內。
- DSH 的沙箱沒有 OS 級別的網絡隔離能力。插件僅能通過檢測命令文本中的
- 命令兜底:
- 對於未知的命令,系統總是回退到“詢問”模式,不做自動放行。
- 項目性質:
- 這是一個非官方社區項目,源碼託管在 GitHub。安裝前請確認源碼與許可證符合你的使用需求。
總結¶
dsh-perm-guard 通過持久化的配置和攔截機制,解決了 DSH 中頻繁彈窗與操作失控的矛盾。對於需要自動化執行大量常規指令但又要防止誤刪或提權的場景,該插件提供了實用的中間層防護。