dsh-worktree-studio: DeepSeek Harness 人工操作 Git 工作树任务看板

前言

DeepSeek Harness(DSH)的核心理念是“一切皆插件”。在智能体开发或代码编写流程中,经常需要将代码修改隔离在独立的环境中,并在最终交付前进行验证。dsh-worktree-studio 插件解决了人工管理多个 Git 工作树与 DSH 会话的痛点,它将 Git 分支、工作树与 DSH 的 Workspace 和 Session 建立了一一对应的映射关系。

插件定位

  • 名称: palaiologos1453/dsh-worktree-studio
  • 定位: 专为 DeepSeek Harness 设计的人工操作 Git 工作树任务看板
  • 维护者: Palaiologos1453
  • 许可证: MIT

核心功能

本插件主要提供以下能力:

  1. 隔离分支与工作树: 创建独立的分支并关联对应的工作树。
  2. 原生会话集成: 将工作树检出为原生的 DSH Workspace 和 Session。
  3. 状态验证: 记录验证结果时,基于确切的 Git 内容状态生成令牌(SHA-256),确保验证结果与当前代码一致。
  4. 合并预览: 使用 git merge-tree 预览合并可行性,不改变目标检出目录。
  5. 交付守门: 在合并前重新检查所有交付条件。
  6. 非侵入式设计: 不会注册模型工具、修改系统提示词或添加工具模式。看板和命令位于模型上下文之外,不会增加提示词 Token 消耗。

安装与启用

安装前请确保满足环境要求(见下方“注意事项”)。

  1. 安装预构建的 npm 包:
dsh plugin --profile web add dsh-worktree-studio
dsh web
  1. 安装后,Worktree tasks 按钮会出现在 Web 侧边栏的底部。

典型用法

插件通过 Web 看板和本地命令共同管理任务流程。

命令列表

所有命令由本地处理,不会发送给模型:

/worktree-studio list
/worktree-studio create <title>
/worktree-studio inspect <id>
/worktree-studio validate <id> <command...>
/worktree-studio preview <id>
/worktree-studio deliver <id>
/worktree-studio archive <id>
/worktree-studio recover

基本工作流

  1. 创建任务: 在 Web 看板中注册仓库并创建任务。
  2. 开发: 插件创建 dsh/<task>-<id> 目录,注册为 Workspace 并开启 Session。在此 Session 中提交代码。
  3. 验证: 在看板中运行“Validate”,执行指定的命令(如 pnpm test)。
  4. 预览: 使用“Review”查看变更,使用“Merge check”测试当前提交与目标分支的合并情况。
  5. 交付: 执行“Deliver”,系统会再次检查内容令牌、验证结果和合并可行性,确认无误后才执行非快进合并。
  6. 归档: 归档会移除干净的工作树但保留记录;丢弃需要确认任务 ID。

注意事项

环境要求

  • DeepSeek Harness: 0.1.0-rc.7 或兼容的 0.1.x 版本。
  • Node.js: 22.19.0 或更高版本。
  • Git: 2.38 或更高版本(需支持 merge-tree --write-tree)。
  • 本地仓库: 插件仅管理本地仓库,不涉及推送到远程或创建 Pull Request。

功能限制

  • 交付机制: 交付仅合并已提交的更改,不会将未提交的工作树内容复制到目标检出目录。
  • 数据清理: 归档和丢弃的记录仍保留在 tasks.json 中,插件目前不提供自动清理功能。
  • 安全性: 插件通过回环连接和同源标记提供 Host 路由,但执行边界不等于认证,本地同权限进程仍可调用。

总结

dsh-worktree-studio 为 DeepSeek Harness 提供了一个以人工决策为核心的代码交付流程。它通过 Git Worktree 和状态令牌机制,在不增加模型上下文负担的前提下,实现了对代码修改的隔离验证与安全合并。

更多细节和源码请参考:GitHub | 社区目录

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

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

小夜