在权限下拉框旁增加「审批模式」开关:默认审批保留逐次确认,绕过审批自动放行所有工具调用,同时保持 Workspace Write 权限。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:NEVSTOP-LAB/dsh-approval-mode
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DSH 审批模式插件。在 DSH 窗口的权限下拉框(Read Only / Workspace Write / Full Access)旁边加一个「审批模式」按钮,权限可以保持 Workspace Write,审批模式选「绕过审批(提权除外)」——工具调用自动放行,但文件操作仍被沙箱限制在工作区内,比切到 Full Access 更安全、更方便。
[!IMPORTANT] 两种「绕过审批」都会自动批准工具调用,普通操作全程没有确认提示。
- 绕过审批(提权除外):普通工具调用自动放行;工作区外的写文件、命令提权仍会弹窗,由你决定是否放行这一次。
- 绕过审批:连提权也自动批准,沙箱边界一起放开(高风险)。
只在完全信任当前任务时使用,用完记得切回「默认审批」。 当会话权限为 Full Access 时,DSH 本身不会发起审批请求,此模式不生效。
功能
- 按钮在输入框工具栏、权限选择旁边,样式和权限控件一致
- 默认审批:和 DSH 原有行为一样,工具调用需要点击批准
- 绕过审批(提权除外):工具调用自动批准;工作区外写文件、执行命令所需的提权仍会弹窗,由你决定
- 绕过审批:所有工具调用自动批准,含提权,不弹任何提示(高风险)
- 切换立即生效,并按会话持久保存
- 绕过模式下按钮显示为橙色;提权除外用空心盾牌,全部绕过用闪电
- 权限为 Full Access 时,按钮置灰并显示「绕过审批」:DSH 不再发起审批请求,模式不可切换
- 切换模式会通知该会话的代理
- 「设置 → 插件」中有本插件的默认审批模式配置项(DSH 0.1.7+ 由宿主按插件 Config 自动渲染;更早版本是「插件配置」里的独立卡片),可设置打开会话时使用的默认审批模式
配置
审批模式分两个值,各有一个入口:
| 入口 | 位置 | 作用范围 |
|---|---|---|
| 审批模式按钮 | 输入框工具栏,权限下拉框旁边 | 当前会话:只改这个会话,其他会话不受影响 |
| 默认审批模式 | 设置 → 插件(0.1.7+)/ 插件配置卡片(0.1.6 及更早) | 默认值:没有自己模式的会话(含正在运行的)立即跟随;已用按钮单独设过模式的会话不受影响 |
工具栏按钮不会改写默认值;默认值只对没有自己模式的会话生效。想改默认就动设置,想单独放行某个会话就动按钮。
存储位置:默认模式是本插件的配置项(DSH 0.1.7+ 由宿主写在 profile patch 里);
按会话的模式写在 $DSH_HOME/approval-mode/sessions.json(插件自有目录,原子写入)。
两者都立即生效并持久保存。
[!IMPORTANT] 从 DSH 0.1.6 及更早升级到 0.1.7+ 时:0.1.7 换掉了旧的 settings 存储通道 (
settings.yaml会被改名成settings.yaml.imported),旧版本写入的默认模式在新宿主上 读不到了,请在「设置 → 插件 → dsh-approval-mode」里重新选一次。按会话的模式由插件首次 启动时自动迁移,无需手动处理。
安装
需要 dsh CLI(下界 0.1.1-rc.2,实测 0.1.5-rc.2、0.1.7-rc.1 与 0.2.0-rc.1,见下方版本说明)。
从 GitHub 仓库安装:
dsh plugin --profile web add github:NEVSTOP-LAB/dsh-approval-mode
[!NOTE]
--profile web是默认 profile。桌面版(DSH Desktop)用--profile desktop;其他 profile 把web换成对应名字即可。
[!NOTE] 版本要求:DSH
0.1.1-rc.2及以上(无上界);已在 DSH0.1.5-rc.2(DSH Desktop 2.0.11)、0.1.7-rc.1(DSH Desktop 2.0.14)与0.2.0-rc.1(DSH Desktop 2.0.16)上验证。低于0.1.1-rc.2的宿主会被 dsh-market 标记为 「低于声明下界」,请先升级 DSH。 0.1.7 更换了 settings 服务的契约(插件 Config 取代命名空间),本插件两代都支持; 升级后默认模式需要重设一次,见上文「配置」。 0.2.0 起宿主不再声明任何@deepseek-ai/dsh-*peer:插件不 import 带版本号的宿主包 (通知消息在插件内构造),因此 0.2 的 DSH 不会再把本插件判为不兼容。 开发、版本声明的判定依据与兼容性校验方法见 CONTRIBUTING.md。
建议锁定提交,避免后续更新改变实际内容:
dsh plugin --profile web add github:NEVSTOP-LAB/dsh-approval-mode#<commit-sha>
也可以从 Releases 下载 tarball 安装:
dsh plugin --profile web add ./dsh-approval-mode-0.2.0.tgz
安装后确认组合层里出现该插件:
dsh --profile web --dump-config
启动后,输入框工具栏权限下拉框旁边会出现「默认审批」按钮。
卸载:
dsh plugin --profile web remove dsh-approval-mode
License
MIT
链接
同类插件
toby-bridges/api-relay-audit★ 868
从 DeepSeek Harness 对 AI API 中转站和 LLM 代理运行本地安全审计,生成 Markdown 报告,覆盖提示词注入、模型替换信号、工具调用改写、错误泄漏、流完整性和按 profile 启用的 Web3 风险。
SeaOf0/dsh-redteam-model★ 666
面向授权安全研究的 DSH 合集:九个工作模式(redteam 总控、渗透测试、代码审计、二进制分析、攻防评估、免杀对抗、应急溯源、云安全攻防、CTF 解题)与十五个运行时插件,设置页管理台支持一键部署、安装、更新与卸载。
howmp/dsh-pentest★ 595
面向 DeepSeek Harness 的授权渗透模式:以探索链路记录目标、线索、资产与漏洞,并在 Web 中可视化展示。
PerryLink/dsh-auto-review★ 233
审批链上的第二模型自动审查:只读审查子代理返回带理由的 allow/deny 结构化裁决,默认 fail-closed。
NanmiCoder/dsh-auto-mode★ 164
在 Workspace Write 与 Full access 之间增加 Auto 权限档:日常操作留在官方 workspace-write 沙箱内,由当前会话模型复核升权与破坏性调用,精确的越界访问按次放行一次,意图不明时询问,命中关键路径则拒绝。
PerryLink/dsh-permission-rules★ 119
Claude Code 风格的声明式权限规则:按序 allow/deny/ask 的 YAML 规则,在 tools/pre-execute 瀑布上匹配工具名、参数、工作区路径与 agent 身份,带完整会话日志审计、干跑模式与热重载。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。