wcwplaygitbub/dsh-approve-for-me

wcwplaygitbub★ 0JavaScript最后同步: 2026-08-16

在 GitHub 打开

dsh增加类似替我审批的能力

README 摘要

approve-for-me · 替我审批 (Approve for me) DSH 权限模式插件:仿照 Codex 的「替我审批」——安全操作自动放行,仅检测到的危险操作请求人工审批。 原理 DSH 的沙盒提权( sandbox permissions )会走 approval/request 审批通道。本插件用 prepend: true 注册在该通道最前面(先于 Web 人工审批弹窗),按 真实工具参数 (从会话日志按 callId 取回)做风险评估: - 低风险 (工作区内开发命令、包管理、构建测试、只读命令、写工作区文件)→ 直接返回 allowed-once ,静默放行 - 高风险 / 无法判定 → 调用 next() 转给人工审批弹窗,行为与未安装时完全一致 模式开关 :只有当前会话的权限预设是 approve-for-me (替我审批)时才自动放行; 选 workspace-write / read-only / danger-full-access 时插件完全旁观(全部转人工)。 选择器控制开关,不选中就没有任何行为变化。 安装 DSH 的 profile 由 cordis.yml (空根)+ 各 bundle 补丁 + cordis.patch.yml (用户补丁层)组合而成。 用户自定义永远改 cordis.patch.yml ,不要改 cordis.yml (每次启动会被重写)。 1. 把插件包放进 profile 的 node modules 验证包可从 profile 目录解析: 2. 在 profile 的 cordis.patch.yml 里 INSERT 插件行 ⚠️ 必须用 insert: 。 - id: x / name: y 是「覆盖已有行」的写法:如果该 id 在 base 组合里不存在, 它会被 静默跳过 (loader 报 patch: entry "approve-for-me" not found 但不影响其他行)。 表现为:预设表能看到「替我审批」选项,但审批链里没有自动放行——这正是本插件早期版本踩过的坑。 3. 把「替我审批」加进权限选择器(可选但推荐) permission 行在 base 组合里 已存在 ,所以用覆盖写法。presets 是 整体替换 ,必须把原有三个预设一起写上: 4. 重启 DSH Web 应用 权限预设表和插件行都是 进程级配置 ,补丁在启动时加载(Web profile 的 HMR 已禁用),必须重启才生效。 5. 切换到「替我审批」预设 重启后当前会话默认仍是创建时 pin 的 workspace-write 。在权限选择器(或 /permission 命令)里切到 替我审批 ,自动放行即生效。新会话默认预设由 permission 表的 defaultPreset 决定,…

在 GitHub 查看完整 README →
终端/TUIdsh-plugintui

分类