← 返回列表
需源码安装
面向 DeepSeek-Harness…
暂不能直接安装(需源码编译或环境不满足):缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。 · 最近上游提交 2026/9/14 · 已提供中文文档
dsh-session-tree-extension 为 DeepSeek-Harness 提供仅追加、多分支的对话树——一种 PI-Agent 风格的 SessionTree。智能体的历史记录变成一棵由不可变节点组成的树,可在任意历史节点分叉,支持标准 LLM 消息重建、带版本的 JSON 快照,以及嵌入现有聊天输入框的 WebUI 树面板(无 sta
综合分
41
GitHub 分
41
用户评分
—
★ Stars
20
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add robiteame/dsh-session-tree-extension缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装,改用 GitHub 源安装
数据截至 2026/9/18(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查需源码安装
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-session-tree-extension(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/18 07:09:20
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-api-remotes@deepseek-ai/dsh-api-session-controller@deepseek-ai/dsh-attachment@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-store@deepseek-ai/dsh-client-ui-chat@deepseek-ai/dsh-client-ui-conversation@deepseek-ai/dsh-client-ui-layout@deepseek-ai/dsh-client-ui-renderer@deepseek-ai/dsh-client-ui-session用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
dsh-session-tree npm CI license Harness 面向 DeepSeek-Harness 的仅追加、多分支对话树——可对任意历史节点进行分叉、将分支克隆为新会话,并将整条谱系作为一个合并的 WebUI 图进行浏览。旧历史记录永远不会被编辑或删除。 三个命令: | 命令 | 功能 | |---|---| | /tree | 打开合并的谱系图:每个非子代理会话和节点,均可点击和绑定 | | /fork | 从任意历史节点分叉——分叉会出现在图中,并作为其源会话下的内联菜单显示 | | /clone | 将当前对话复制为同一项目下的一个独立新会话 | 截图 树面板(浅色和深色)以及侧边栏的内联分叉分支菜单: 会话树面板,浅色主题 会话树面板,深色主题 其源会话下方的内联 /fork 分支菜单: 内联分叉分支菜单 以 @robiteame 作用域下的四个 npm 包发布: | 包 | 作用 | |---|---| | @robiteame/dsh-session-tree | 载体 Bundle:一次安装即可通过其组合层挂载以下所有内容 | | @robiteame/dsh-pi-agent-session-tree | 宿主域服务:SessionTree/SessionTreeStore 域模型以及 sessionTree Remote | | @robiteame/dsh-tool-session-tree | 命令界面:/tree /fork /clone 命令 | | @robiteame/dsh-client-ui-session-tree | WebUI 树面板:在官方构建上为附加式右侧覆盖层,在已打补丁的构建上为原生详情停靠区 | 安装(用户) 一条命令——从插件市场 UI,或从 Harness 检出目录的 CLI: dsh plugin --profile add @robiteame/dsh-session-tree 预构建的 tarball 安装方式相同,且无需构建脚本: dsh plugin --profile add robiteame-dsh-session-tree-0.3.0.tgz 安装后,重启该 profile。组合中会新增三行 (pi-agent-session-tree、tool-session-tree、ui-session-tree),分别加载 宿主服务、命令和浏览器面板。验证组合后的层: dsh --profile --dump-config # should list the three session-tree rows 需要 DeepSeek-Harness 0.1.5-rc.2(或兼容的 0.1.5 构建)以及 Cordis ^4.0.2;目标安装会提供这些对等依赖。不会运行安装 脚本——压缩包中已附带预构建的 lib/ 产物。 三个命令 /tree — 打开树面板 /tree 会打开右侧面板,将当前会话的血缘关系显示为一个合并图: 祖先、分叉和克隆会出现在同一个 git 风格的视图中,用户消息、 助手回复、工具调用和模型切换都会显示为相连的节点。共享的复制前缀会去重, 分叉点带有会话徽章,当前会话的路径保持高亮。点击 节点即可绑定;点击属于另一个会话的节点会先打开该会话。 可以折叠单个子树或整个会话分支,以便专注于 图。 /fork — 从任意历史节点分支 /fork 会选择一条更早的用户提示,并从那里生长出一个新分支: 对话会沿着新路径继续,而原始路径保持完整。 分叉通过官方原生 fork API 创建,因此它会以真实的父级关联 出现在会话列表中。该插件会将新分支添加到 合并图中,还会将其渲染为内联可折叠菜单,直接位于 其源会话行下方。两个视图都遵循官方响应式会话列表, 因此新分支无需刷新即可出现。 /clone — 复制到新会话 /clone 会将当前对话——沿其根路径——复制到同一项目下的 一个独立 Session 中。源历史保持 只读;克隆会话由你单独继续。 分支切换与优雅降级 该插件从不修改 Harness 核心文件。它会在运行时 对可选的分支选择引擎 API 进行能力检测: - 原生模式 — 在带有 dev/session-branch-surface.patch (Session.selectMessageSurface())的检出上,跳转/分叉会直接切换模型可见的 历史:下一轮会真正从新分支开始。 - 原版模式 — 在未修改的官方 Harness 上,该插件通过官方追加 API (一个空的 replace surface 事件)以及位于 $DSH_HOME/storages/session-tree/ 下、由插件拥有的 sidecar 来模拟 切换,以实现持久的分支状态。日志保持可恢复有效。 - 投影模式 — 如果连模拟也不可用,导航只会移动 树投影和面板,下一轮仍会保留规范 历史。 每种模式都会如实说明自身:当 会话以非原生模式运行时,Host 日志会打印一次性通知。在机器之间移动原始 session.jsonl.zstd 时, 请连同匹配的 sidecar 文件一起移动。 工作原理 - 仅追加 — 每个节点都是不可变的;分支和跳转只会移动 光标。旧分支永远不会被编辑或删除。 - 每个条目都是一个节点 — 消息、工具调用、模型切换、压缩 记录和分支摘要都会变成带类型的节点;每个节点都有一个唯一的 nodeId 和一个 parentId(根节点为 null)。一个节点可以有多个 子节点——这就是分叉。 - 光标导航——跳转会将活动叶子移动到历史节点; 下一次追加会从那里长出一个新分支。兄弟分支保持完整。 - LLM 上下文——模型始终只接收根节点→光标路径的 标准 messages 数组。 开发(贡献者) 该仓库是一个 pnpm 工作区,独立构建三个实现包 (无需检出 Harness): pnpm install pnpm verify # build + typecheck (host & client) + pack dry-run + vitest pnpm pack:all # produce the four tarballs 测试针对已发布的 Harness 包(0.1.5-rc.2)运行——即 stock 模式路径——并从仓库根目录使用 vitest。packages/client/ui-session-tree 中的浏览器测试规范需要 Harness 客户端测试运行时,并且 在源码集成的检出环境中运行。 针对 Harness 检出的源码集成 用于针对 Harness 源码进行调试(原生模式、原生详情停靠栏): dev/install.sh /path/to/deepseek-harness # applies both dev patches + copies packages cd /path/to/deepseek-harness && pnpm install && pnpm run build 每个补丁的作用请参见 dev/README.md。此流程 仅供贡献者使用——用户安装永远不会触及 Harness 检出。 许可证 MIT。
扫码进群