DeepSeek Harness 插件

Jason-skd/dsh-session-fork

Star 数 ★ 6 分类 会话与消息 收录于 2026-08-23

Git 式会话分支,模拟真实程序员协作的并行开发:根分支充当秘书维持调度,子分支持有各自上下文并行工作,任务完成后仅以压缩摘要 squash/rebase 合并回来;提供 /branch 命令、分支页签、send_message_by_branch 跨分支消息,并附一份把会话分支绑定到 git worktree 的治理基线。

安装

# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)

dsh plugin --profile web add github:Jason-skd/dsh-session-fork

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。

README

English | 简体中文

Sub agent 与 并行开发在当前 agent 应用上表现总是不尽人意。本项目以 git 的 branch 式管理 dsh 原生的离散的 会话,通过提供 fork 会话继承和 squash、 rebased 会话合并,极大提升了在 dsh 上并行开发和提示词管理的体验。

本项目是 Deepseek Harness 的插件,无法独立运行。

branch_tab

解决痛点

  • 高效的单人并行开发:branch 模型模拟了真实程序员协作。并行开发时,所有 agent 持有独立的仓库快照。用解决合并时冲突替代必须线性的开发历史。
  • 干净的上下文管理:主 branch(e.g. main)充当秘书角色,维持调度者身份。所有调研/代码任务派分给 child branch 完成。任务完成后仅将压缩后的上下文回报给主分支。
  • 强化的会话管理:依据引入的 branch 模型,强化了 dsh 原生的 fork 和跨会话 send_message 体验。

一分钟体验

安装(需要基于 web 应用的 dsh profile):

dsh plugin --profile web add dsh-session-fork

之后,您可以直接让 agent 自由使用该插件——我们的所有命令都提供了 agent 可调用的 tool 形态!

核心功能

  • branch 操作让每个会话具名,有祖先,易索引,可通过命令管理。
  • fork 强化原生体验并提供祖先源语。
  • squash, rebase 提供跨分支合并的两种形态。
  • send_message_by_branch 强化了会话间交流。
  • “分支”页对 branch 的可视化管理。

加入我们

我们想继续提供的功能:

  1. 基于 branch 的项目记忆管理。现有的长期记忆模型都以项目为粒度,对 branch 模型是灾难——记忆跨 branch 泄漏,直接污染上下文。branch 粒度的记忆管理是让模型更健壮的必经之路。
  2. 持续维护。点开 Issues,还有很多 Long Term 强化和 bug。

我们对 AI 协作持开放态度:欢迎自由地用 AI 贡献代码、撰写 commit message 和 PR。但我们希望您对自己的代码负责,亲自 review,并在沟通中把 AI 当作您的工具,而不是让 AI 直接代表您与我们对话。

License

MIT

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →

社区评论

评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。