DeepSeek Harness 插件

dsh-session-tree

Git-like immutable session lineage for DeepSeek Harness(英文原文)

跳到安装方式

来源信息

GitHub 仓库
ZhengQingJing/dsh-session-tree
最近更新
2026年8月20日
分类
记忆
GitHub stars
3
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/ZhengQingJing/dsh-session-tree
插件名:dsh-session-tree
作者:ZhengQingJing

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器4 个文件
README.md来源说明 · 只读预览
README 语言

dsh-session-tree

中文 | English

dsh-session-tree 为 DeepSeek Harness(DSH)补充一个轻量、只读的会话谱系视图:查看当前对话的原生 fork 树,并在父会话、兄弟分支和子会话之间跳转。

> [!IMPORTANT] > 非官方社区插件。 本项目不隶属于 DeepSeek,也未经 DeepSeek 背书。DSH 与本插件仍处于预发布阶段,升级前请备份重要的 profile 和 Session 数据。

当前版本面向:

  • DeepSeek Harness 0.1.0-rc.7
  • Node.js ^22.19.0 || >=24.0.0

安装

npm 包已经预编译,不需要运行本地构建脚本,也不会为 profile 再安装一整套 DSH Client 依赖:

前置条件只有 dshpnpm 已在 PATH 中;dsh plugin 会把依赖操作转交给 profile 内的 pnpm。

pnpm 11 默认对发布不足 24 小时的版本应用 minimumReleaseAge 保护;固定当前已验证版本可避免 @next 在这段时间内回退到旧版:

dsh plugin --profile web add dsh-session-tree@0.2.0-beta.1
dsh --profile web

安装后打开任意对话,页面会新增 版本树 / Branches 标签。如果刚安装或更新过插件,请重启 DSH 并重新加载浏览器页面。

可在启动前检查组合结果:

dsh --profile web --dump-config

输出中应包含一条 dsh-session-tree 配置行。

使用

1. 在 Chat 中找到一个已完成的 assistant 回复。 2. 使用回复操作区里 DSH 原生的 在新对话中分支 / Branch into a new conversation 按钮。 3. 打开 版本树 / Branches 标签,新建的子 Session 会自动出现在当前会话家族中。 4. 点击树中的节点即可切换到对应 Session。

分支创建由 DSH 自己完成;本插件不复制 fork 协议,也不维护另一份分支数据库。

核心边界

  • 只读取 DSH 原生 SessionSummary.parentId 谱系并执行客户端导航。
  • 不追加 Session 事件,不修改 parent pointer,不创建 side store。
  • 对缺失父节点、循环谱系和超大谱系进行有界、只读的降级展示。
  • 卸载插件不会删除或改变任何原生 Session。
  • 对话分支只改变后续模型上下文;它不会撤销文件修改、命令、Git 状态、进程、网络请求或其他工具副作用。

更新与卸载

更新到当前已验证版本:

dsh plugin --profile web update dsh-session-tree@0.2.0-beta.1

卸载:

dsh plugin --profile web remove dsh-session-tree

完成后重启 DSH。卸载只移除视图与配置层,现有分支仍是普通的 DSH Session。

已知限制

  • 公开 Session summary 暂不包含解析后的 fork 边界,因此树边不能标注精确源 seq
  • 不提供命名 ref、HEAD、merge、rebase、cherry-pick、分支删除或文件系统快照。
  • 当前 DSH 浏览器端插件 roster 在安装、更新或移除后仍需要重启。
  • 树只展示当前客户端已经知道的 Session;尚未加载或已失联的 subagent 可能不可导航。

开发

pnpm install --frozen-lockfile --ignore-scripts
pnpm run verify
pnpm pack --dry-run

浏览器产物必须使用 DSH 的 lazy CommonJS factory 格式,并共享宿主的 React、Cordis 与 Client services。项目保留 bundle、循环谱系、深链和大型树门禁,避免为追求代码行数而削弱加载与故障安全。

维护者与贡献者

简要设计和安全不变量见 DSH_SESSION_TREE_DESIGN.md