Skip to content
dsh.fish
Bundle

dsh-plan-preset

Plan 模式心智映射:read-only 权限显示为 "Plan",审批策略 never(拒绝即最终,不准申请权限),文件只读 + 网络搜索可用。

Source
23aisfvb
License
MIT
Updated
Updated 3 days ago

Readme

# dsh-plan-preset

把 DSH Web UI 的 read-only 权限预设映射为 opencode 风格的 **Plan 模式**。

## 效果

| 项 | 值 |
|---|---|
| 显示名 | 访问模式控件显示 **"Plan"**(原 "Read Only";图标仍为盾牌) |
| 文件 | **只读** — 读取全盘放行,写/删/改全部拒绝 |
| 网络搜索 | **可用** — `web_search` 与文件沙箱解耦,不受模式影响 |
| 权限申请 | **禁止** — 审批策略 `never`,任何权限升级请求自动拒绝(denial is final) |
| 工作流 | 只能问答调研 → 产出计划(`exit_plan_mode` 呈现)→ 用户批准后手动切换权限模式再开工 |

## 实现

纯组合补丁,零运行时代码:

- `cordis.patch.yml` target `permission` 行(dsh-base),覆盖 `read-only` 预设:
  `sandbox: read-only` + `approval: never` + `name: Plan`
- 其余预设(workspace-write / danger-full-access)原样重述,不受影响

## 安装 / 生效

1. `profiles/web/package.json`:`dependencies` 加 `"dsh-plan-preset": "file:E:/agent/deepseek_harness/Plugins/dsh-plan-preset"`,`dsh.profile.bundles` 加 `"dsh-plan-preset"`
2. `cd profiles/web && pnpm install`
3. 重启 `dsh web`

## ⚠️ 升级核对

Cordis patch **整行覆盖** config。若 dsh 升级后 `permission` 行的默认预设
发生变化(新增预设、字段调整),本文件会遮蔽新配置——升级后请运行
`dsh --profile web --dump-config` 核对 `permission` 行。

## 验证

```bash
dsh --profile web --dump-config   # permission 行应含 read-only.name=Plan / approval=never
```

Install

dsh plugin --profile web add github:23aisfvb/dsh-plan-preset#9b8ba46b00247baaeaf6019911861d712ee86c29

Profile: web

Source