
Jiao-XXX/dsh-auto-approve
41最近提交 2026年8月15日
dsh-auto-approve DSH 插件
dsh-auto-approve 在 DSH 的权限预设中插入 Auto 档,介于 workspace-write 和 danger-full-access 之间。它使用分类模型判断沙箱升级请求是否例行安全,自动放行,否则交给人审批。插件旨在减少长任务中的审批打断,同时通过确定性危险清单和人工兜底保持安全网。
如何安装 dsh-auto-approve DSH 插件
dsh plugin --profile web add github:Jiao-XXX/dsh-auto-approve复制不会执行命令。安装 dsh-auto-approve DSH 插件前请核对仓库和版本。
dsh-auto-approve DSH 插件数据来源
dsh-auto-approve DSH 插件快照日期:2026年8月16日
discovered
dsh-auto-approve DSH 插件能做什么
- 使用可配置的分类模型自动批准例行沙箱升级请求(如安装依赖、下载只读资源)。
- 当操作命中内置危险清单(破坏性命令、强制推送保护分支等)或分类器不确定时,回退到人工审批。
- 支持通过 profile 配置自定义分类模型、provider、超时和额外危险模式。
- 提供 /auto-report 命令查看当前会话的自动批准、危险清单拦截和分类器转人工统计。
- 兼容 DSH Web、TUI 和 Desktop 前端,Web 端完整支持。
dsh-auto-approve DSH 插件适合哪些场景
- 长时间开发会话中,频繁的 workspace-write 弹窗令人烦躁;Auto 模式减少打断同时保持安全。
- 使用 DSH 的自动化 CI/CD 流水线中,允许例行依赖安装和 git 操作自动批准。
- 团队希望在安全性和开发效率之间取得平衡,让模型处理安全操作,人审查危险操作。
- 使用较便宜、快速的模型作为分类器,而主力模型是大型推理模型时,减少延迟和成本。
dsh-auto-approve DSH 插件适合谁
- 使用 DeepSeek Harness 的开发者,希望减少长任务中的审批打断。
- 在共享环境中部署 DSH 的团队,需要自动化的例行操作审批层。
dsh-auto-approve DSH 插件的限制
- 仅兼容 DeepSeek Harness(rc.6 或更高版本),需要运行中的 DSH 实例和插件支持。
- Web UI 中 Auto 档的图标兼容层依赖 rc.6 的 DOM 结构和无障碍文案;DSH 更新后可能图标消失(但审批逻辑不受影响)。
- 分类模型必须可通过 DSH API 配置访问;如果默认模型是大型推理模型,可能导致超时(回退到人工审批),需配置更快的模型或增加 timeoutMs。
- 插件无法在 session log 的 'allowed-once' 事件中区分自动批准和人工批准;/auto-report 命令提供独立的内存视图。
dsh-auto-approve DSH 插件的仓库 README 摘录
以下文字摘自 dsh-auto-approve DSH 插件的上游仓库 Jiao-XXX/dsh-auto-approve 的 README,版权归原作者,仅作引用。
中文 | [English](README_EN.md) `dsh-auto-approve` 为 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 增加 `Auto` 权限档。在该档位下,分类模型可以对例行的沙箱升级做一次性批准;命中确定性危险规则、模型拿不准、超时、响应格式错误或插件内部异常时,审批仍会交给正常的人工弹窗。 该 bundle 会把权限预设表重述为四个档位,顺序为 `read-only`、`workspace-write`、`auto`、`danger-full-access`——即在 dsh 原生三档中间插入 `auto` 档,原有档位全部保留。不在 `auto` 档时,插件会原样放行所有审批请求给后续应答者。 ## 定位 `auto` 是 `workspace-write` 之上的低打扰安全层:保留同一沙箱边界,把例行升级交给分类器;命中危险清单、分类器拿不准或分类失败时,才回到人工审批。 直观地说,它类似 [Claude Code 的 **auto mode**](https://code.claude.com/docs/en/permission-modes) 与 [Codex 的 **Auto-review mode**](https://developers.openai.com/codex/agent-approvals-security):把例行审批交给安全评审,危险或拿不准时再交还人工。 | 权限档 | 沙箱范围 | 什么时候弹窗 | 适合场景 | | --- | --- | --- | --- | | `read-only` | 只读工作区,不能修改项目文件 | 需要写入、联网或执行其他越界操作时 | 代码审阅、探索和敏感仓库 | | `workspace-write` | 可读写工作区;工作区外和受限能力仍被隔离 | 需要联网、写工作区外或进行其他沙箱升级时 | 常规开发;每次升级都由人确认 | | **`auto`** | **与 `workspace-write` 相同** | **例行升级自动批;命中删库级危险清单、分类器拿不准或失败时才问人** | **长任务和依赖安装;减少打断且全程保留审计台账** | | `danger-full-access` | 不受工作区沙箱限制,按宿主权限运行 | 不弹窗(`approval: never`) | 仅限隔离、可丢弃且充分信任的环境 | ## 工作原理 收到 `auto` 档的 `approval/request` 后,插件会: 1. 从内存中的会话日志找回对应 `tool/call` 的原始参数,并读取最新一条真人用户消息:只接受 `user/message` 中
阅读完整 README仓库许可: MIT
dsh-auto-approve DSH 插件常见问题
如何安装 dsh-auto-approve?
在 DSH 环境中运行 `dsh plugin --profile web add github:Jiao-XXX/dsh-auto-approve`。安装后重启 `dsh web`,然后在权限下拉框中选择 Auto。也可以从本地副本安装:`dsh plugin --profile web add ./dsh-auto-approve`。
为什么插件设置页面里没有本插件的卡片?
插件设置页面只显示宿主端 api-proxy 白名单里的官方命名空间(如 bash、agent-loop、web-search-deepseek)。第三方插件在不改动宿主代码的情况下无法在此页出现配置卡片,这是 DeepSeek Harness 当前版本对所有第三方插件的共同限制,并非本插件缺陷。请使用 profile patch 方式配置。
如何临时关闭自动批准?
将权限档切换回 Workspace Write 或其他非 Auto 预设。插件对非 auto 档完全透明,无需重启或卸载,这是一个内置的开关。
如何配置分类模型?
默认情况下分类模型跟随 Settings → Models 中的默认模型。若想单独指定,在 profile 补丁文件(如 `$DSH_HOME/profiles/web/cordis.patch.yml`)中覆盖插件配置的 `provider` 和 `model` 字段。注意必须重述全部配置字段,因为 DSH 会整体替换 config 而非深度合并。具体示例见 README 配置章节。
为什么普通 git push 仍然弹窗?
默认分类提示只允许推送到用户自己的 fork 或工作分支时自动批准。推送到 main、master、release、production 等保护分支会被视为危险而转人工。另外,强制推送(--force、-f、--mirror 等)会在分类前被确定性危险清单拦截。如果需要允许推送到这些分支,可以自定义 classifierPrompt,但请注意安全风险。