zhang-guo-wen/dsh-worktree ↗★ 0

@guowenzhang/dsh-worktree

为 DSH 提供 Git 工作区隔离管理功能 适合需要在独立 Git 工作区中运行 Agent 任务的开发者。支持自动创建工作树、子模块拉取及会话隔离。

包名
@guowenzhang/dsh-worktree
兼容性
待验证
Harness 依赖范围
*
Cordis 依赖范围
*
版本
0.1.0
许可证
Apache-2.0
最近更新
2026年9月24日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:zhang-guo-wen/dsh-worktree

配置

- id: worktree
  name: '@guowenzhang/dsh-worktree'
  config:
    # 设置页的三行(volatile:保存即时生效,不用重启)
    nestedRepositories: none        # none(默认,只建父仓库)| submodules | all —— 设置页上就是「创建子仓库」开关:开 = all,关 = none
    nestedScanDepth: 1              # 递归扫描目录层数(正整数;1 = 只看直接子目录)
    defaultPath: agents             # agents(默认,工作区内的 .agents/worktree/)| sibling(仓库同级)| home(用户目录 ~/.agents/worktree)
    # 以下只在启动时生效,改完要重启 host
    agentsDirectory: .agents/worktree   # defaultPath: agents 时的工作区子目录;缺的层级会自动创建
    gitTimeoutMs: 60000             # 单次 git 调用的上限(子模块拉网络时会用满它)
    createToolName: worktree_create
    listToolName: worktree_list
    removeToolName: worktree_remove
    startSessionRoute: true

设置页只放会改变 checkout 长什么样的三项;agentsDirectory、gitTimeoutMs、工具名是部署形态,留在 profile 的 patch 里。volatile 字段要求 harness 的 schemastery 提供 .volatile()(≥ 3.18.4)——这也是本插件 devDependencies 里那个版本下限的来由;更早的 harness 只支持启动时配置。