← 返回列表
✓ 可直接安装
为 DeepSeek Harness 提供完整的 Git worktree 能力。
自动检查通过:npm 包已发布且 engines 声明满足基线(声明 Node >=20);该结论来自程序自动检查,未经人工实机验证。 · 最近上游提交 2026/9/8 · 已提供中文文档
为 DeepSeek Harness 完成 Git worktree 支持:在各自分支上实现任务范围的隔离检出,记录在按仓库划分的清单中,可在会话和重启后保留
综合分
34.3
GitHub 分
34.3
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add dsh-task-worktreenpm 包 dsh-task-worktree 已校验归属本仓库,走 npm 安装最省事
信任档位:已验证本站已于 3 天前真实安装成功(L4 · 真实安装)
- 是什么
- dsh 原生插件 · tool
- 装得上吗
- 本站已真实安装成功(L4 · 真实安装,非静态推断)
- 安全吗
- 本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
- 还在维护吗
- 活跃:最近一次提交在 17 天前
档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →
🟢实装验证通过· 2026/9/23
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/22(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查✓ 自动检查通过
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-task-worktree @ 0.4.2
✓Node 引擎要求 >=20 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/22 13:27:16
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-api-remotes@deepseek-ai/dsh-api-session-controller@deepseek-ai/dsh-api-workspace-controller@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-ui-conversation@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-session@deepseek-ai/dsh-subprocess@deepseek-ai/dsh-tools@deepseek-ai/cordis@deepseek-ai/dsh-llm用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
由 DeepSeek 最新模型翻译生成dsh-task-worktree
release
downloads
stars
license
docs
Awesome DSH Plugin
为 DeepSeek Harness 提供完整的 Git worktree 能力。
一个社区插件:给 DSH 带来 Qoder / Codex / Claude Code 同款的任务级 worktree 工作流。每个任务拥有一个独立的 git worktree checkout(独立分支),记录在 per-repo manifest 中,跨会话、跨重启永久保存。主工作区保持干净;使用 worktree 的对话会在会话头部显示分支徽标(不再注册工作区、不打乱侧边栏),干完后带回到主目录(Move to local)或直接提交在 worktree 分支上——一切收尾都由你(人)显式决定。
设计参考:Qoder 的 Worktree 执行环境、Codex 的 codex worktree create --permanent、Claude Code 的 --worktree 会话,并适配 DSH 的会话/工作区模型。
设计对照
| 本插件概念 | Qoder | Codex | Claude Code |
| --- | --- | --- | --- |
| 任务级隔离 checkout | Worktree 执行环境 | codex worktree create --permanent | claude --worktree |
| worktree 位于 /.dsh-worktrees/ | 后台 worktree checkout | .codex/worktrees/ | .claude/worktrees/ |
| 注册表跨重启持久 | 按会话 | 全局索引 | 会话绑定 |
| 每任务独立分支 | 分支选择器 | — | worktree- |
| 从 GUI 打开(注册为 DSH 工作区) | 面板选择器 | codex worktree open | 直接进入 worktree |
| 会话头部徽标标识对话所用 worktree | 会话标识 | — | — |
| 把改动带回主目录 | Move to local | — | 退出/清理询问 |
| 直接在 worktree 分支提交 | Review & commit 面板 | worktree 会话内提交 | worktree 内提交 |
| 携带主目录未提交改动 | Include uncommitted changes | — | .worktreeinclude |
| 自动忽略 worktree 目录 | — | — | .gitignore 建议 |
工作流
空白对话:发送前在下拉框选「Worktree模式」(分支名可选,自动加 worktree/ 前缀)
│ 发送第一条消息 → 宿主注入一条「上下文注入」instructions 块
▼ 模型在同一轮调用 worktree_create
│ git worktree add -b worktree/ /.dsh-worktrees/worktree/worktree/
│ 不注册工作区、不切换对话;会话头部徽标标记该对话使用的 worktree
▼ 对话原地继续,模型在 checkout 路径(绝对路径)内干活;完成后模型提醒收尾
│
├─ /worktree bring-back worktree/ → 合并分支回主分支(要求主目录干净)
├─ /worktree finish worktree/ → 提交到 worktree 分支并保留
└─ /worktree remove worktree/ --force → 删除 worktree 与分支
(--force 连未提交改动一起删)
1. 以 Worktree 模式开始:空白对话、发送前,dock 选择器显示「分支名:」——选「Worktree模式」即武装会话;分支名可选(输入的会自动加 worktree/ 前缀,留空由模型拟定)。对话开始后选择器自动隐藏,由会话头部徽标接管指示。
2. 发送第一条消息 → 宿主在你消息前注入一条 instructions 上下文块(界面显示为「上下文注入」):创建 worktree/ 前缀分支、在 checkout 路径内干活、任务结束时给出可复制的收尾命令(bring-back 或 remove --force)。
3. 或跳过模式,直接让 agent 隔离任务:"用 worktree 隔离干活,任务叫 xxx" —— 模型调用 worktree_create,name 同时作分支名与路径(支持斜杠)。
4. 不注册任何工作区,侧边栏保持干净;worktree 模式下会话头部显示分支徽标。
5. 干完后收尾:bring-back / finish / remove(均仅人工可触发);/worktree list / status / prune 查看与清理(prune 顺带清理已消失 checkout 的工作区注册)。
安装
dsh plugin --profile web add dsh-task-worktree
要求:DeepSeek Harness 0.1.0-rc.7 包线、Git 2.31+、Node 20+。
模型工具
| 工具 | 作用 |
| --- | --- |
| worktree_create {name, baseCommit?, includeUncommitted?} | 创建任务 worktree(name=分支名与相对路径,支持斜杠分层);可选把主工作区未提交改动带进去 |
| worktree_list | 列出当前仓库所有受管理 worktree(状态 / dirty / 分支) |
| worktree_status {name?} | 查看单个 worktree 或当前会话所在 worktree 的状态 |
收尾与清理动作(finish / bring-back / remove)只有人工可触发,模型永远够不到。
人工命令
/worktree mode-on [] 武装 worktree 模式(下条消息随之注入指引)
/worktree mode-off 关闭 worktree 模式
/worktree create [] [--carry]
/worktree list
/worktree status []
/worktree finish
/worktree bring-back []
/worktree remove [--force]
/worktree prune
安全模型
- @deepseek-ai/* 只作为 peerDependencies——由宿主提供;插件绝不向 profile 安装基础设施副本(双实例会破坏 TOOL_RUNTIME_SCHEDULER 的 unique symbol,导致工具全部失效)。
- bring-back 要求主工作区干净(MAIN_DIRTY),且拒绝在 worktree 内执行。
- remove 拒绝删除当前会话所在的 worktree(IN_USE)。
- 所有 git 操作经 ctx.subprocess(harness-managed);测试路径用 child_process runner。
- Manifest 原子写入(tmp + rename);prune 清理 checkout 已不存在的记录。
本地开发
npm test # 冒烟测试:临时仓库全生命周期
npm pack --dry-run # 发布前检查包内容
License
MIT — see LICENSE