dsh-branchman:DeepSeek Harness 的树状分支工程管理插件

前言

DeepSeek Harness (DSH) 的理念是“一切皆插件”。在智能体开发与工程化过程中,会话的分支管理常与代码仓库的分支管理脱节。dsh-branchman 解决了这个问题,它将一个分支动作映射为一个 git worktree、一个继承对话历史的子会话,以及一个可视化的树状结构边。

核心功能

该插件提供树状分支工作区管理。一个动作包含 git worktree + 子会话 + 可视化树边。每个主树拥有独立分区,子树布局按真实父子关系排列。开发者可以在侧栏的“走向总览”中查看所有会话,包括尚未创建分支的节点。

功能详情

  1. 会话继承与创建
    创建分支时,子会话可继承最新已完成轮次,或从特定助手消息开始继承。每个分支使用 UUID,生成独立的 branchman/<UUID> 分支和 .branches/<UUID> 工作树。交接说明保存在详情中,不会自动发送给模型。

  2. 可视化与筛选
    提供层级列表,支持展开、收起、按仓库或主树筛选。图形视图支持搜索、分页(保留祖先)、刷新、相机控制(拖动、缩放、选中定位)及可缩放图形。

  3. 文件携带与操作校验
    支持携带未提交文件(包括中文路径和二进制),但不携带符号链接、子模块及 .branches 内容。合并、同步、移除操作会检查实际工作树身份。未提交改动、未合入提交或冲突会阻止对应操作。

  4. 中断恢复
    操作中断时会保留工作树和日志,使用“继续恢复”进行对账。

安装与启用

npm 发布完成后,可直接使用 dsh-branchman@0.3.2。

典型用法

  1. 创建分支:在侧栏底部“走向总览”处创建分支。
  2. 选择历史:从输入框创建时继承最新已完成轮次;从助手消息创建时继承该消息及之前的历史。
  3. 处理冲突:冲突处理后使用“检查工作树”。
  4. 恢复中断:中断后使用“继续恢复”对账。

注意事项

  • 宿主兼容性:已验证宿主为 @deepseek-ai/dsh-desktop@0.2.0-rc.2,运行时版本为 Electron 44。运行依赖由宿主提供。
  • 数据迁移:v1 数据迁移为独立 tree-v2.,原 tree. 保留。旧记录若缺少可信基点会标记为恢复;降级需考虑状态版本。
  • CLI 限制:CLI scripts/branchman.ps1 需显式提供 -BaseUrl,写操作通过 -BodyFile 提交,不绕过操作日志。
  • 权限风险:插件以当前 DSH 进程权限运行。安装前应检查源码与许可证。

总结

dsh-branchman 通过将 Git worktree 与子会话结合,提供了一种可视化的工程方向管理方式。它适合需要清晰管理多分支会话与代码状态的 DeepSeek Harness 用户。

插件目录 | GitHub 仓库

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜