在 DeepSeek Harness(DSH)的插件化生態中,對智能體(Agent)的權限控制與審計是安全開發的核心需求。當 Agent 需要調用敏感工具或訪問特定資源時,往往需要一套可配置、可審批、可追溯的攔截機制。dsh-agent-gate 旨在提供這樣的權限閘功能,通過分層攔截與審計日誌,幫助開發者精細化管理 Agent 的行爲邊界。
插件定位¶
dsh-agent-gate 是一個由 xingyingyuzhui 維護的權限閘插件。它基於 DSH 的鉤子機制(tools/pre-execute + tools.guard),按分層權限對工具調用進行攔截,支持官方一次性審批,並記錄 Claw 會話的審計日誌。
核心功能¶
- 分層攔截
插件使用tools/pre-execute和tools.guard機制,按分層權限攔截工具調用。 - 審批與審計
攔截調用時觸發官方一次性審批流程。審計日誌寫入~/.dsh/agent-gate/audit.l。 - 技能與 MCP 過濾
從會話的官方技能目錄和/選單中移除 Agent 技能拒絕名單中的技能。拒絕未授權的 MCP 服務,並在會話開始時從模型可見工具中移除。 - 策略複用
策略計算複用同目錄下的dsh-session-permissions文件(官方 ∩ Agent ∩ 會話)。 - 沙箱隔離
卸載閘後不再攔截新調用,但官方文件沙箱由權限插件繼續釘住,不會因卸閘而變寬。
安裝與啓用¶
官方安裝
dsh plugin --profile web add github:xingyingyuzhui/dsh-agent-gate
本地開發
dsh plugin --profile web add link:/abs/path/to/dsh-agent-gate
注意事項
建議同時安裝 dsh-session-permissions 插件。安裝完成後,重啓 dsh web。
典型用法¶
- 配置權限策略
確保與插件同目錄存在dsh-session-permissions文件,用於計算權限策略。 - 會話交互
當 Agent 嘗試調用被攔截的工具時,會觸發官方審批流程。 - 查看審計
查看~/.dsh/agent-gate/audit.l文件,瞭解攔截歷史和結果。 - 管理 MCP
在設置中配置 MCP 拒絕名單,插件會在會話開始時生效。
適用場景與注意¶
- 會話類型
閘只攔截 Claw 會話;工作區會話僅走官方權限,不受此閘影響。 - 卸載影響
卸載插件後,攔截機制會停止,但已釘死的官方文件沙箱權限由權限插件獨立維護,不會隨之放寬。 - 運行環境
插件在當前 dsh 進程權限下運行。安裝前應檢查源碼與許可證。
該插件爲 DSH 提供了細粒度的權限控制層。更多細節與源碼,請訪問 GitHub。