miqian-nomad/dsh-new-workdir ↗★ 0
dsh-new-workdir
新目录会话:一键在根目录下领一个时间戳工作目录,注册成工作区并开一个干净会话。全程只调用官方 Remote,零官方文件改动。 适合需要快速隔离环境、频繁创建临时干净工作区的开发者。
설치
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:miqian-nomad/dsh-new-workdir配置
D:\dsh-plugins\dsh-new-workdir\cordis.patch.yml:
- insert:
- id: new-workdir
name: dsh-new-workdir
config:
enabled: true # false = mkdir 接口 403,只保留只读展示
root: D:/work-harness # 主根 = 默认根(不带 root 参数的建目录落这里)
roots: # 可选:额外的根,按顺序排在面板里
- D:/work-sandbox
- E:/tmp/workdirs
# recent: 8 # 每个根回显的最近目录条数
root 不写时的后备:DSH_WORKDIRS 环境变量 → 再没有就 ~/.dsh/workdirs
(0.4.0 起不再写死 D:/work-harness)。
多个根到底会怎样(root + roots,见表里每一行):
| 行为 | 单根 | 多根 |
|---|---|---|
| 建目录 | 都落在 root | 默认根是 root(第一个);面板每个根一行、各自一个「在这里新建」 |
| 顶部「新对话」/ ⌘N | 领新目录(root 下) | 同上,落在默认根 |
| 面板的「已建 N 个」 | 一个数 | 每个根一个数 |
| 清理空目录 | 只扫 root | 每个根都扫一遍(白名单路径命中任何一个根都算合格) |
| 请求里传了清单外的 root | — | 直接拒(HTTP 400 ROOT),不会往任何地方写 |
| 复用(刚建的那个) | root 内校验 | 清单内任意一个根都行 |
注意:“根”是这个插件的概念,DSH 本身不分区。换根之后,旧根下的目录仍然是
DSH 的工作区(照旧显示在侧栏),但只有清单里的根会被清理扫到 —— 所以要把旧根
也收进去(写成 roots 的一项),而不是只改 root。
包名已在 profile 的 bundles 里,所以不要再往 profile 自己的
cordis.patch.yml 里插一条同样的 id(会变成重复 loader entry)。