dsh-auto-approval:DeepSeek Harness 的自动审批权限中间层
styxnether/dsh-auto-approval
为 DeepSeek Harness 增加自动审批中间权限层,自动放行无害命令与可信区域操作,其余转人工。
为 DeepSeek Harness 增加 auto-approval 权限预设,自动放行无害命令和可信区域操作,减少人工审批负担。
dsh plugin --profile web add github:styxnether/dsh-auto-approval- 分类
- 工作流与自动化
- 平台
- DSH-Plugin
- 作者
- styxnether
- 分发方式
- 插件
dsh-auto-approval 核心特性
dsh-auto-approval 仓库信息

dsh-auto-approval 仓库简介
dsh-auto-approval 是 DeepSeek Harness(DSH)的一个权限中间层插件(DSH plugin),由 StyxNether 维护,采用 MIT 许可证。它填补了 Workspace Write 与 Full access(danger-full-access)之间的空白,新增一个名为 auto-approval 的权限预设,并配套一个自动审批应答器:对于无害命令以及目标位于已配置可信区域(包括工作区之外的路径)的操作,自动放行;其余请求则照常询问用户。该插件旨在减少人工审批的繁琐,但明确声明它只是范围控制,并非安全边界——DSH 沙箱仍会约束所有未升级的调用,自动放行仅针对单次调用生效。
dsh-auto-approval 这个 DSH plugin 提供了哪些权限预设和审批策略?
该插件在权限设置中新增 auto-approval 预设,其沙箱模式仍为 workspace-write,审批策略为 ask,但针对两类请求自动批准:一是符合规则表的无害命令,二是目标位于可信区域(包括工作区外的路径)的操作。其他所有请求仍会询问用户。安装后,该预设会出现在两个权限界面:常规设置 → 权限(设为未来会话的默认值),以及 /permission 选择器(可立即切换当前会话,如 /permission auto-approval)。
dsh-auto-approval 如何实现自动审批而不影响安全性?
DSH 将所有需要审批的操作路由到 approval/request 瀑布流,本插件通过 prepend 注册监听器,在 Web 审批提示之前运行。它根据 callId 在会话日志中查找对应的 tool/call 事件,读取真实的工具参数(命令文本、file_path、workdir),绝不信任模型编写的理由字符串。核心决策模块 lib/decide.js 将请求分类为 allow 或 defer;路径包含性基于真实身份评估,通过 realpath 解析每个候选路径的最近存在祖先(与 DSH 文件系统沙箱机制相同),因此符号链接或 junction 无法将自动审批走私到可信区域之外的目标。allow 返回 allowed-once,请求不会到达人工 UI,但审计对 approval/asked + approval/decided: allowed-once 仍会写入会话日志;defer 则调用 next(),由部署的人工应答器决定,插件从不拒绝任何请求。
dsh-auto-approval 怎么安装?
可以通过 npm 仓库或 GitHub 安装,建议固定 commit 以保证可复现性:
dsh plugin --profile web add github:styxnether/dsh-auto-approval
或从 npm 安装:
dsh plugin --profile <profile> add dsh-auto-approval-plugin
注意,bundle 补丁会重述完整的权限预设表(DSH 补丁会替换整行配置),升级 DSH 时需与 @deepseek-ai/dsh-base 的表保持同步,若目标行缺失,补丁会警告并跳过。
dsh-auto-approval 如何配置可信区域和规则表?
配置分两层,均实时生效,无需重启:
- Web 设置页(最简单):设置 → Auto Approval(设置侧边栏中的专用页面,类似 Vision Toolkit 页面)。可编辑可信区域(每行一个绝对路径)、无害/危险模式表以及开关。更改会写入
settings.yaml的auto-approval部分并立即生效,页面还会显示最近几次自动审批决策。 - 组合配置(默认基础):在配置文件中设置相关环境变量或选项,具体可参考 README 中的示例。
dsh-auto-approval 兼容哪些 DeepSeek Harness 版本和平台?
该插件基于 DSH 的审批接缝(approval/request 瀑布流)开发,依赖 @deepseek-ai/dsh-settings、@deepseek-ai/dsh-app-boot 和 @deepseek-ai/dsh-permission-presets。它适用于所有使用 DSH 审批机制的会话,包括 Web 界面和命令行。由于补丁机制,升级 DSH 时需注意权限预设表的同步。插件最近更新于 2026-08,当前 Stars 2、Forks 1,Open Issues 0,表明其处于早期但稳定的状态。