dsh-llm-approve-for-me:DeepSeek Harness 沙箱權限自動審查插件

前言

在 DeepSeek Harness (DSH) 的開發中,沙箱權限升級(如執行 Shell 命令、修改文件)是必須謹慎處理的環節。通常需要手動審批或編寫複雜的規則邏輯。dsh-llm-approve-for-me 插件通過內置的審查角色,利用 LLM 自動判定這些權限請求,減少人工干預的繁瑣,同時保持決策的靈活性。

插件定位

這是一個 DeepSeek Harness 插件,通過內置審查角色自動判定沙箱權限升級。由用戶 alaxrpg 維護,遵循 MIT 許可證。它解決了“如何在自動化流程中安全地處理沙箱權限請求”的問題,將決策權交給配置的 LLM 模型,而非硬編碼規則。

核心功能

  1. 自動審查權限升級:攔截所有帶 sandbox_permissions 的工具調用,包括 Shell/PowerShell 命令、write/edit 文件寫入等。
  2. 專用審查角色:使用內置的 REVIEWER_ROLE。該角色無工具、無會話、單請求快速裁決,不借用環境中的通用子代理模板。
  3. 輕量級執行:不創建 Agent 或 Session,不污染子代理列表。每次授權僅返回原生的 allowed-once 一次性授權。
  4. 可視化面板:在 DSH Web 會話頂部提供“幫我批准”面板。
    • History:按 session 隔離展示最近 100 條審批記錄(包含請求目標、理由、權限、審查模型、AI 結論與結果)。
    • Settings:可視化調整審查模型參數。
  5. 模型配置:支持配置審查模型的 Provider、Model、Timeout 和 Max tokens。

安裝與啓用

在 DSH profile 中執行以下命令安裝:

dsh plugin --profile web add github:alaxrpg/dsh-llm-approve-for-me

安裝完成後重啓 DSH Web。插件會自動添加“幫我批准”權限預設到會話中(可手動在設置頁覆蓋)。點擊會話頂部的“幫我批准”即可進入審批面板。

典型用法

1. 配置審查模型

安裝並重啓後,進入“幫我批准”面板的 Settings 頁面。建議將審查模型設置爲快速非推理模型以提升響應速度。

設置項 默認值 範圍 說明
Reviewer provider 空(繼承主會話) 任意 provider 名 留空則繼承提出請求的會話配置
Reviewer model 空(繼承主會話) 任意 model 名 推薦指向快速非推理模型
Timeout 300 秒 1–600 秒 推理模型的思考時間計入超時
Max tokens 16384 256–65536 含推理過程

配置保存後會寫入 ~/.dsh/llm-approve-for-me.settings.json,無需重啓立即生效。

2. 審查協議

插件通過 DSH llm 服務向內置角色發起請求,要求其返回嚴格的 JSON 格式:

{"decision":"allow","rationale":"原因"}
  • decision:僅支持 allow、deny 或 ask。
  • rationale:必須使用簡體中文輸出一句話理由。

注意事項與配置

  1. 嚴格 JSON 格式:審查模型必須返回標準 JSON。如果輸出包含 Markdown code fence 或非 JSON 響應,系統會自動回落到人工審批。
  2. 異常處理:審查超時、取消、模型調用異常或輸出無效時,系統會回落人工審批並記錄具體原因(同樣爲中文)。
  3. 目標提取限制:對於無法提取審查目標的請求(如某些帶升級參數的工具),系統會交回人工審批。
  4. 內容截斷:審查摘要會自動截斷至 2000 字符,防止大文件刷屏。
  5. 優先級規則:設置文件 ~/.dsh/llm-approve-for-me.settings. 的優先級高於靜態配置。
  6. 非安全產品:本插件非安全產品,不能替代人工授權、最小權限原則、數據備份或隔離措施。它的作用是將授權判斷交給 LLM,而非作爲防火牆使用。

結語

dsh-llm-approve-for-me 爲 DeepSeek Harness 用戶提供了一個基於 LLM 的沙箱權限審查方案。通過配置和監控審批歷史,可以在自動化與安全性之間找到平衡。更多細節可參考其 GitHub 倉庫。

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

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

小夜