dsh-agent-gate:权限闸 · 按分层权限拦截工具

在 DeepSeek Harness(DSH)的插件化生态中,对智能体(Agent)的权限控制与审计是安全开发的核心需求。当 Agent 需要调用敏感工具或访问特定资源时,往往需要一套可配置、可审批、可追溯的拦截机制。dsh-agent-gate 旨在提供这样的权限闸功能,通过分层拦截与审计日志,帮助开发者精细化管理 Agent 的行为边界。

插件定位

dsh-agent-gate 是一个由 xingyingyuzhui 维护的权限闸插件。它基于 DSH 的钩子机制(tools/pre-execute + tools.guard),按分层权限对工具调用进行拦截,支持官方一次性审批,并记录 Claw 会话的审计日志。

核心功能

  1. 分层拦截
    插件使用 tools/pre-execute 和 tools.guard 机制,按分层权限拦截工具调用。
  2. 审批与审计
    拦截调用时触发官方一次性审批流程。审计日志写入 ~/.dsh/agent-gate/audit.l。
  3. 技能与 MCP 过滤
    从会话的官方技能目录和 / 选单中移除 Agent 技能拒绝名单中的技能。拒绝未授权的 MCP 服务,并在会话开始时从模型可见工具中移除。
  4. 策略复用
    策略计算复用同目录下的 dsh-session-permissions 文件(官方 ∩ Agent ∩ 会话)。
  5. 沙箱隔离
    卸载闸后不再拦截新调用,但官方文件沙箱由权限插件继续钉住,不会因卸闸而变宽。

安装与启用

官方安装

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。

典型用法

  1. 配置权限策略
    确保与插件同目录存在 dsh-session-permissions 文件,用于计算权限策略。
  2. 会话交互
    当 Agent 尝试调用被拦截的工具时,会触发官方审批流程。
  3. 查看审计
    查看 ~/.dsh/agent-gate/audit.l 文件,了解拦截历史和结果。
  4. 管理 MCP
    在设置中配置 MCP 拒绝名单,插件会在会话开始时生效。

适用场景与注意

  • 会话类型
    闸只拦截 Claw 会话;工作区会话仅走官方权限,不受此闸影响。
  • 卸载影响
    卸载插件后,拦截机制会停止,但已钉死的官方文件沙箱权限由权限插件独立维护,不会随之放宽。
  • 运行环境
    插件在当前 dsh 进程权限下运行。安装前应检查源码与许可证。

该插件为 DSH 提供了细粒度的权限控制层。更多细节与源码,请访问 GitHub。

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

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

小夜