拒绝审批时附上意见,让模型据此调整并继续
24.9/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/15 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add MaYiFei1995/dsh-approval-comment该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:待复验
是什么
dsh 原生插件 · security
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 78 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DSHWeb 审批增强插件:无感替代内置审批窗口,支持「拒绝并附言」,并在拒绝后终止当前回合、让模型重新结合附言思考
README
由 DeepSeek 最新模型翻译生成dsh-approval-comment
dsh-approval-comment
DSH(DeepSeek Harness)Web 审批增强插件:无感替代内置审批窗口,支持「拒绝并附言」,并在拒绝后终止当前回合、让模型重新结合附言思考。
- 纯 host + client 双半区插件,零第三方依赖、零构建步骤(纯 JS)。
- 不修改任何 @deepseek-ai/dsh 核心包;核心升级不会覆盖本插件。
- 安装进 web profile 即生效(下次 dsh web 启动自动加载)。
解决的问题
默认审批流程有两个不符合真实工作场景的行为:
1. 点「拒绝」后,模型不会停下,而是继续下一轮思考、猜测你拒绝的原因并换其他方案:
点「拒绝」后模型继续下一轮思考的演示
2. 手动停止后,拒绝这件事不进模型上下文,下一次请求就"丢了上下文"。
本插件改为:
- 审批窗保持原样(警示条 + 工具名 + 允许一次/拒绝),并新增一个附言(say some)输入框。
展开完整文档(README 剩余 1 节)
dsh-approval-comment
dsh-approval-comment
DSH(DeepSeek Harness)Web 审批增强插件:无感替代内置审批窗口,支持「拒绝并附言」,并在拒绝后终止当前回合、让模型重新结合附言思考。
- 纯 host + client 双半区插件,零第三方依赖、零构建步骤(纯 JS)。
- 不修改任何 @deepseek-ai/dsh 核心包;核心升级不会覆盖本插件。
- 安装进 web profile 即生效(下次 dsh web 启动自动加载)。
解决的问题
默认审批流程有两个不符合真实工作场景的行为:
1. 点「拒绝」后,模型不会停下,而是继续下一轮思考、猜测你拒绝的原因并换其他方案:
点「拒绝」后模型继续下一轮思考的演示
2. 手动停止后,拒绝这件事不进模型上下文,下一次请求就"丢了上下文"。
本插件改为:
- 审批窗保持原样(警示条 + 工具名 + 允许一次/拒绝),并新增一个附言(say some)输入框。
- 四种组合行为:
| | 允许一次 | 拒绝 |
| 无附言 | 继续执行 | 中断任务(停止,等待下一条指令) |
| 有附言 | 附言一并生效,继续执行 | 据附言调整并自动继续(不停止) |
- 附言通过「插话(steer)」注入当前回合,模型在下一步立即读到并据此行动;拒绝与附言都留在 transcript 中,手动停止后也不丢上下文。
审批窗口:附言框 + 允许一次 / 拒绝
拒绝并附言后,模型据附言调整(改写到工作目录)
安装与卸载
方式一:GitHub Release(远程,推荐)
1. 在仓库 Releases 发布 dsh-approval-comment-0.1.0.tgz(npm pack 产物)后,目标设备执行:
dsh plugin --profile web add https://github.com/MaYiFei1995/dsh-approval-comment/releases/download/v0.1.0/dsh-approval-comment-0.1.0.tgz
方式二:tgz 本地文件
先从 GitHub Release 下载 .tgz(或本机 npm pack 生成),再用本地路径安装:
绝对路径
dsh plugin --profile web add C:\path\to\dsh-approval-comment-0.1.0.tgz
相对路径(锚定到执行命令的目录)
dsh plugin --profile web add ./dsh-approval-comment-0.1.0.tgz
方式三:git 源
dsh plugin --profile web add git+https://github.com/MaYiFei1995/dsh-approval-comment.git
git 源会运行 prepare 脚本,pnpm 默认拦截;需按 pnpm 提示把包名加入 profile 的
pnpm-workspace.yaml 的 allowBuilds。Release tarball 是预构建产物,无需此步。
安装后重启 dsh web(Ctrl+C 后重新 dsh web)即可生效。验证:
dsh --profile web --dump-config # 应能看到 approval-comment 行
卸载
dsh plugin --profile web remove dsh-approval-comment
卸载后重启 dsh web 生效;可用 dsh --profile web --dump-config 确认 approval-comment 行已移除。若曾从 GitHub Release / tgz 安装,删除 profile 里 package.json 对应的依赖条目即可(dsh plugin remove 会一并清理)。
工作原理
| 半区 | 文件 | 作用 |
| host | lib/index.js | approval/request 前置监听:观察拒绝结果 + grant-next 一次性放行(附言后模型据附言调整的越权调用不再弹窗);agent/pre-step 守卫:纯拒绝 → { kind: 'reject' } 终止回合,拒绝+附言 → 放行 |
| client | lib/client.js | 以 conversation.composer 链 priority: 0 顶替内置审批面板,新增附言框;允许/拒绝时若有附言,先经 session.prompt(…, 'steer') 注入附言再应答 |
时序(拒绝并附言):
模型调用需越权的工具 → 审批面板(本插件版)弹出,附言框可用 → 用户填写说明并点「拒绝」 a) 附言经 session.prompt(…, 'steer') 注入当前回合(插话) b) 应答 rejected → 工具结果 = the user rejected tool "X"(核心文本,不可改) → agent/pre-step 守卫:检测到刚被拒绝,且本步消息里有附言 → 放行(不终止) → 模型读到「拒绝 + 附言」→ 据附言调整并自动继续 → 调整的越权调用命中 grant-next → 自动放行,不再弹第二次审批窗
允许并附言:附言同样以 steer 注入,工具照常执行,模型在下一步读到附言并据此调整;调整调用由 grant-next 自动放行,全程只弹一次审批窗。
无附言的纯「拒绝」:守卫返回 { kind: 'reject' } 终止当前回合;模型停止并等待你的下一条指令。
approval/policy = 'never' 的自动拒绝(无人值守/CI)在应答链之前短路,不受停止守卫影响。
构建与分发
npm run check # 契约校验(host/client 半区、package.json、cordis.patch.yml 的挂载契约)
npm run build # 别名:同 check(本插件纯 JS,无需转译)
npm pack # 产出 dsh-approval-comment-<version>.tgz(上传到 GitHub Release 即可)
仓库自带 GitHub Actions:push 时跑语法+契约校验并产出 tarball;推 v tag 时自动把 tarball 作为 Release 资产发布。
目录结构
├── lib/index.js # host 插件(ESM,零依赖) ├── lib/client.js # client 插件(__ModuleLoader__ bundle,零依赖) ├── cordis.patch.yml # bundle 层:insert 挂载 host 半区 ├── package.json # dsh.bundle.patch + dsh.client 声明 ├── scripts/check.mjs # 契约校验脚本 ├── .github/workflows/ci.yml └── docs/DESIGN.md # 设计文档
已知边界
- 审批面板以 reason(或"工具 X 请求越权执行")为标题;内置面板额外显示的命令原文未复刻(需复用会话内部 helper,属于非必要)。
- grant-next 是一次性授权,回合作用域:只放行附言后紧接着的那一次越权调用;turn/end 或离开附言调整步即作废,不跨回合残留。源于用户主动附言,风险可控。
- 允许+附言时原命令先执行:审批语义是"批准本次调用",附言无法改写已定参数,故旧参数命令先执行,模型再据附言自动修正(grant-next 放行)。要完全跳过旧参数需上游支持改参执行。
- 若目标设备无可用审批 UI(非 web 场景),应答链回退为 unavailable,行为与现状一致。
- 客户端半区改动后需浏览器硬刷新(非 dev 模式无热更新)。
声明
本项目代码及文档由 deepseek-v4-pro 模型生成。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
MaYiFei1995/dsh-approval-comment
拒绝审批时附上意见,让模型据此调整并继续
相关插件 · 安全 / 权限
智能体逆向工程morluto/rea
用智能体逆向工程任何东西,从应用行为到原生二进制。
★ 415,267已汉化DSH
73.3
智能体集群框架ruvnet/ruflo
面向 Claude Code 与 Codex 的智能体元基座meta-harness。
★ 80,414已汉化MCP
71.9
WorkBuddy 模型接入corrinehu/dsh-workbuddy-connect
2026 年 10 月 20 日起,WorkBuddy…
★ 1,604已汉化DSH
71.7
破甲一键通z91772524-ai/pojia-next
十五个 AI…
★ 967已汉化DSH
71.6
AI 代理虚拟终端strukto-ai/mirage
Mirage 是给 AI 智能体用的虚拟终端:一层 shell,统管数据、命令行和运行时。Unix…
★ 3,756已汉化DSH
70.8
Agent 操作层agentic-os-org/ANOLISA
ANOLISA(Agentic Nexus Operating Layer & Interface System Architecture)|智能体操作系统,带运行时、安全、可观测性,以及 Tokenless 响应压缩,降低 token 用量与成本。
★ 649已汉化DSH
70.7