同一会话内自动放行已批准过的同类操作
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/20 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add washengru/dsh-remember-approval该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · security
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 12 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DSH 插件 (beta):同一会话内记住已批准过的审批请求,不再重复询问。
README
由 DeepSeek 最新模型翻译生成dsh-remember-approval
同一会话里,已经人工批准过的审批请求不再重复询问。
状态:v0.1.0 · beta —— 目前只在 DSH 桌面版(Windows、desktop profile)上做过真机验证;核心逻辑有单元测试覆盖,但其他平台/版本是否完全一致尚未验证,遇到问题请开 issue。
EN — 一个 DeepSeek Harness 插件:在会话里手动批准过一次请求之后,后续匹配同一 tool + action prefix 的请求直接放行,不再弹窗(作用范围限于本会话)。DSH 原生没有 allow-always;本插件在 approval/request 瀑布前面补上这层记忆。安装方式:把本目录拷到 ~/.dsh/profiles/<profile>/node_modules/,在该 profile 的 cordis.patch.yml 里挂载,然后重启客户端。
DSH 原生只支持一次性授权:审批 outcome 只有 allowed-once / rejected / cancelled / unavailable,官方 README 写明“没有 allow-always、没有记忆规则、没有授权存储;会话策略只有 ask / never”。所以只要沙箱拦一次,同类操作之后仍会逐个弹窗。
展开完整文档(README 剩余 1 节)
dsh-remember-approval 同一会话里,已经人工批准过的审批请求不再重复询问。 状态:v0.1.0 · beta —— 目前只在 DSH 桌面版(Windows、desktop profile)上做过真机验证;核心逻辑有单元测试覆盖,但其他平台/版本是否完全一致尚未验证,遇到问题请开 issue。 EN — 一个 DeepSeek Harness 插件:在会话里手动批准过一次请求之后,后续匹配同一 tool + action prefix 的请求直接放行,不再弹窗(作用范围限于本会话)。DSH 原生没有 allow-always;本插件在 approval/request 瀑布前面补上这层记忆。安装方式:把本目录拷到 ~/.dsh/profiles/<profile>/node_modules/,在该 profile 的 cordis.patch.yml 里挂载,然后重启客户端。 DSH 原生只支持一次性授权:审批 outcome 只有 allowed-once / rejected / cancelled / unavailable,官方 README 写明“没有 allow-always、没有记忆规则、没有授权存储;会话策略只有 ask / never”。所以只要沙箱拦一次,同类操作之后仍会逐个弹窗。 本插件补上这一层:在 approval/request 应答者瀑布的最前面挂一个 listener。 审批请求 ──▶ [remember-approval] ──命中──▶ 直接 allowed-once(不弹窗) │ └──未命中──▶ next() → 人工 UI / IM / auto-review │ └─ 结果为 allowed-once → 记入本会话 行为 | 情形 | 结果 | | 本会话内批准过「同工具 + 同动作前缀」 | 直接放行,不再询问 | | 本会话内批准过,但工具或动作前缀不同 | 仍然会问(这是安全边界) | | 拒绝过 / 超时 / 取消 / 无应答者 | 不记忆,下次仍然问 | | 下游秒批(< minHumanDelayMs,如 Auto 档) | 判定为自动批准,不记忆 | | reason 为空的请求 | 默认不记忆(无法区分同类请求) | | 命中 skipTools 或 neverRemember | 永远人工确认 | 粒度局限(官方限制):审批请求只带工具名、reason、callId,不带工具参数。 而且 reason 的真实形态是「动作前缀: 模型每次现写的理由」,例如 escalate sandbox to danger-full-access: 第三次探针写入……——冒号后的正文每次都不一样。所以记忆键只取冒号前的动作前缀,正文不参与;否则同类请求永远命中不了(真机验证时最初的版本正是栽在这里)。 这意味着一次批准会让「同工具 + 同动作前缀」的后续请求一起放行,也意味着一次误批会让同类请求一路通行,请配合 neverRemember 给自己留安全阀。 安装 方式 A:插件管理器(若你的 DSH 版本支持) 先确认你的 DSH 有插件管理子命令(dsh plugin --help 能看到 add),然后: 从 GitHub 直装: dsh plugin --profile desktop add https://github.com/washengru/dsh-remember-approval 或从包名装(发布到 npm 之后): dsh plugin --profile desktop add dsh-remember-approval 从本地目录安装也可以: dsh plugin --profile desktop add ./dsh-remember-approval 这条路径依赖具体 DSH 版本的插件管理命令,作者只在方式 B 上做过真机验证;方式 A 失败时请直接用方式 B。手动挂载不需要 package.json 里的 dsh.bundle.patch 字段,删掉它也不影响方式 B。 方式 B:手工挂载 1. 把整个目录拷到 %USERPROFILE%\.dsh\profiles\<profile>\node_modules\dsh-remember-approval\ (<profile> 默认是 desktop;Windows 上可以直接双击本目录的 install.cmd 一步完成) 2. 在 %USERPROFILE%\.dsh\profiles\<profile>\cordis.patch.yml 末尾追加: - insert: - id: remember-approval name: dsh-remember-approval 3. 重启 DSH 客户端(host 插件在启动时装配,热重载不会加载新包)。 配置 在 profile 的 cordis.patch.yml 里该 insert 行下加 config:: - insert: - id: remember-approval name: dsh-remember-approval config: enabled: true rememberEmptyReason: false # 无理由的请求是否也记忆(默认否) minHumanDelayMs: 200 # 下游耗时低于此值视为自动批准,不记忆 maxKeysPerSession: 200 # 单会话最多记多少条 maxSessions: 64 # 最多跟踪多少会话 skipTools: [pwsh] # 这些工具不记忆 neverRemember: # reason 命中即永不记忆 - 'danger-full-access' - '删除|rm -rf|format' log: true # 控制台打印命中/记忆日志 debug: false # 把每次审批的调用/reason/命中写到 debugLogPath debugLogPath: '' # 调试日志路径;默认系统临时目录下的 dsh-remember-approval.debug.log 卸载 从 cordis.patch.yml 删掉该 insert 条目并重启即可;没有落盘状态,记忆只存在于内存中,随会话结束消失。 验证 重启后做两次同类操作(理由文字可以完全不同):第一次会问,批准后第二次应直接通过。打开 debug: true 时,debugLogPath(默认系统临时目录下的 dsh-remember-approval.debug.log)里能看到: IN tool=write scope="escalate sandbox to danger-full-access" reason="...第一次的理由" OUT tool=write outcome=allowed-once elapsed=6308ms HIT tool=write scope="escalate sandbox to danger-full-access" reason="...完全不同的理由" 注意 - 只影响 approval/request;「沙箱拒绝(denial)」是另一条接缝,不受影响。 - 记忆作用域是会话:同一会话内有效,跨会话不继承。 - 本插件只是减少重复确认,不改任何权限默认值;如果想让模型在越界时随时 “再做一次”,需要下游应答者(人工 UI)仍然在第一次出现时明确批准。 - 建议给自己设一道安全阀:把最敏感的动作放进 neverRemember,让它们永远人工确认,即使你之前批准过。例如: neverRemember: - 'escalate sandbox' - 'danger-full-access' - '删除|rm -rf|format|drop' 这样升权、删除类操作不会被“记住”,只有其余高频的温和操作才享受免重复询问。 代价是这几类仍然每次弹窗——但它们本来就应该每次由人看一眼。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
washengru/dsh-remember-approval
同一会话内自动放行已批准过的同类操作
相关插件 · 安全 / 权限
智能体逆向工程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