前言¶
在 DSH Web UI 中,会话运行到需要审批的操作时,通常需要用户逐项确认。对重复性或低风险操作,人工确认会成为流程中的额外步骤。simon300000/dsh-auto 为此提供一个 Auto Approve 权限预设:在每个需要审批的操作被插件允许或拒绝前,先由一个新的受限 DSH 子 Agent 审查。
当前发布仅支持 Web UI。
这是什么¶
dsh-auto 是仓库所有者为 simon300000 的 DSH 插件,许可证为 MIT。它为 DeepSeek Harness Web UI 增加一个权限预设,让审批不再只依赖人工点击,而是经过一个受限 Reviewer 子会话审查后,再由宿主做最终允许或拒绝。
核心功能¶
- 仅当会话选择
Auto Approve时处理approval/request。 - 每次审批启动一个受限 DSH 子 Reviewer 会话。
- Reviewer 在只读沙箱中运行,并设置
approval/policy = never。 - 执行守卫只允许
read、glob、grep和 scoped structured-output tool,拒绝其他工具,不允许进一步 subagent,并最多允许四步调查加最终响应步骤。 - Reviewer 只做有界只读调查,敏感文件仅在最小只读检查能改变决策时才可检查。
- 结构化结果只要求
outcome,可包含risk_level、user_authorization和rationale。 - 宿主对
criticalrisk 一律拒绝;对没有至少mediumuser authorization 的highrisk 也拒绝。 - 无效输出、缺少 action 数据、超时、与取消无关的基础设施故障和工具故障都按失败关闭处理。
- 模型拒绝不会重试,也不会回退到用户提示。
- 同一父 turn 连续三次拒绝会中断该 turn;任何允许动作会重置计数。
- 默认 90 秒期限覆盖子会话创建、所有模型步骤、本地只读调查和最终结构化输出。
安装与启用¶
先安装插件:
dsh plugin --profile web add github:simon300000/dsh-auto
重启 Web UI 后,在会话 Permissions 选择器或 General Settings 的默认权限预设中选择 Auto Approve。
典型用法¶
- 紧凑结果
{"outcome":"allow"}默认低风险且授权未知。 reviewerProvider和reviewerModel必须同时设置;若两者都省略,Reviewer 使用父会话当前 provider 和 model。- 捆绑默认使用
deepseek-official/deepseek-v4-flash和highreasoning。 - 修改 configuration、policy 或 plugin code 后重启 DSH。
适用场景与注意¶
适合在 DSH Web UI 中使用插件审批、希望减少人工确认但仍保留受限审查的场景。需要注意:
- 当前发布仅支持 Web UI。
- Reviewer 的权限是受限的:只读沙箱、
approval/policy = never、工具白名单、无进一步 subagent、步骤上限。 - 高/关键风险操作不会因 Reviewer 宽松而直接通过;宿主会对
criticalrisk 和未满足授权条件的highrisk 做拒绝。 - 插件会改变 DSH 审批链路的实际行为,并以当前 dsh 进程权限运行。安装前应检查源码、配置与 MIT 许可证。
结尾¶
dsh-auto 的价值在于把 Auto Approve 从“直接放行”变成“受限 Reviewer 先审查,宿主再按规则裁决”。当前资料未提供目录页链接,仓库地址为:
https://github.com/simon300000/dsh-auto