23aisfvb
dsh-plan-preset
DSH plugin: read-only permission shown as Plan + permission escalation forbidden (approval never). Web search keeps working. 把只读权限显示为 Plan,并禁止申请权限升级。
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 15, 2026
- Updated
- Aug 15, 2026
Introduction
dsh-plan-preset
把 DSH Web UI 的 read-only 权限预设映射为 opencode 风格的 Plan 模式。
效果
| 项 | 值 |
|---|---|
| 显示名 | 访问模式控件显示 "Plan"(原 "Read Only";图标仍为盾牌) |
| 文件 | 只读 — 读取全盘放行,写/删/改全部拒绝 |
| 网络搜索 | 可用 — web_search 与文件沙箱解耦,不受模式影响 |
| 权限申请 | 禁止 — 审批策略 never,任何权限升级请求自动拒绝(denial is final) |
| 工作流 | 只能问答调研 → 产出计划(exit_plan_mode 呈现)→ 用户批准后手动切换权限模式再开工 |
实现
纯组合补丁,零运行时代码:
cordis.patch.ymltargetpermission行(dsh-base),覆盖read-only预设:sandbox: read-only+approval: never+name: Plan- 其余预设(workspace-write / danger-full-access)原样重述,不受影响
安装 / 生效
profiles/web/package.json:dependencies加"dsh-plan-preset": "file:E:/agent/deepseek_harness/Plugins/dsh-plan-preset",dsh.profile.bundles加"dsh-plan-preset"cd profiles/web && pnpm install- 重启
dsh web
⚠️ 升级核对
Cordis patch 整行覆盖 config。若 dsh 升级后 permission 行的默认预设
发生变化(新增预设、字段调整),本文件会遮蔽新配置——升级后请运行
dsh --profile web --dump-config 核对 permission 行。
验证
dsh --profile web --dump-config # permission 行应含 read-only.name=Plan / approval=never