dsh-session-helix:DSH 会话分叉的分支树与草稿板

前言

在 DeepSeek Harness(DSH)里做长会话时,常见做法是在同一条对话里不断追加提问,或在 DSH 自带能力里从某一轮之后开子会话。前者很难一眼看清「从哪一轮岔出去、各分支走到哪」;后者若缺少按轮次组织的视图,回溯和对比多条探索路径仍偏费劲。若还需要把多轮问答或片段拼成下一次输入,往往要在编辑器与聊天窗口之间来回复制。

下面介绍社区插件 dsh-session-helix(维护者 Analyzer3739,分类:工作流)。它在 Web 端提供按轮次排列的分支树,以及工作区级的草稿板,面向 DSH 会话分叉(session fork)场景,不替代 DSH 存会话,只读投影与事件并在本地保存草稿板数据。

这是什么

插件仓库:Analyzer3739/dsh-session-helix。目录页:skillhub.cn 条目。

一句话定位(与 package.json 描述一致):Turn-level branch tree and draft board for DeepSeek Harness session forks——即「轮次级分支树 + 草稿板」,服务 DSH 会话分叉。

当前版本 0.1.0,许可证 MIT。GitHub 星标为 0(以目录页信息为准)。插件不发起网络请求,不上传内容;界面目前只有中文。

分支树

分支树把分叉关系画成「一条分支一列、一轮一行」:

  • 分叉边从父轮的切点连到子分支的第一个自有轮次;没有产生自有轮次的空分叉显示为虚线节点。
  • 轮次节点展示提问摘要、状态、耗时、工具数与 seq;悬停可看完整问答摘要,点开右侧详情栏看全文。
  • 分叉:对已结束的轮次点 ⑂,从该轮之后创建子会话并自动打开。同一时间只允许一个分叉进行;同一切点若已有未归档的空分叉,会先确认,确认框只列出这些空分叉。
  • 归档 / 恢复:归档只影响侧栏可见性,树上节点仍保留并标「已归档」,可恢复;归档中的会话不能分叉。
  • 过滤:可只看当前分支或显示全部分支;可隐藏空分支;归档会话以暗色显示,不会从树上消失。
  • 导航:左侧目录按根会话定位;拖动画布平移;Ctrl + 滚轮或捏合缩放(0.7–1.4×,围绕指针);方向键在节点间移动;双击分隔条复位。
  • 密度:紧凑 / 标准 / 宽松三档;目录宽度、详情栏宽度、缩放与密度会本地记住。

入口有两处:会话视图页签(Chat / Trajectory 旁),以及工作区主面板侧栏面板列表中的树形图标。

草稿板

草稿板与工作区绑定,多组卡片可并存:

  • 组可新建、重命名、删除(至少保留一组),用搜索式下拉切换;每组有独立的卡片、勾选和手改内容。
  • 卡片来源:把树上的一轮(提问 + 回答)收进当前组,或在详情栏选中一段文字点「摘录」。
  • 卡片操作:勾选后才参与拼装;可拖拽排序、就地编辑、移出;「已改」与「预览」角标标明状态。
  • 拼装:以 ## 参考片段 开头,每张卡带 【标题 · T7】 与正文。未改动的卡片以原生引用 chip 进入输入框,改过的卡片以 > 纯文本进入;两者对模型可见的文本逐字一致。
  • 填入当前会话:把拼装结果追加到当前输入框,保留已有 chip 与草稿;不新建会话、不替换草稿、不跨会话。失败时会说明是无输入框、输入框正忙、内容为空还是会话不属于工作区。
  • 手改与复制:可直接改拼装区(标记「已手改」),也可以「重新拼装」回到自动结果或复制全文;清空组会先确认。

入口:右侧栏页签,或分支树画布右侧的抽屉。

草稿板中卡片的提问 / 回答正文保存在浏览器 localStorage(键名 dsh-dst.drafts.v1);布局、目录宽度与视图开关也在本地。清除站点数据会丢失草稿板。会话本身仍由 DSH 保存;插件不写会话日志。归档不是删除——DSH 没有删除会话的 API,本插件也不提供删除。

安装与启用

要求 DeepSeek Harness >=0.2.2-alpha.2 <0.3.0(README 写明当前只在 0.2.2-alpha.2 上验证过)。Node 引擎要求 >=22.19.0(见 package.json)。

在 Web profile 下安装并启动:

dsh plugin --profile web add github:Analyzer3739/dsh-session-helix
dsh web

安装后需重启该 profile;若只改前端,刷新页面即可。本地开发可 link 到源码目录:

dsh plugin --profile web add link:/absolute/path/to/dsh-session-helix

插件以当前 DSH 进程及 Web 前端权限运行;安装前建议在 GitHub 阅读源码与 MIT 许可证,确认符合你的环境策略。

典型用法

  1. 打开分支树页签或侧栏树形面板,按根会话浏览各列分支;用「当前分支 / 全部分支」与「不显示空分支」控制信息量。
  2. 在某轮已结束后点 ⑂ 分叉;若同切点有空分叉,按确认框处理后再继续。
  3. 需要引用历史轮次时,把一轮收进草稿板当前组,或从详情栏摘录片段;勾选卡片后拼装,再点「填入当前会话」追加到输入框。
  4. 长会话探索完成后,对不再常看的分支做归档(侧栏隐藏,树上仍可恢复),避免侧栏 clutter。

依赖 DSH 公开接口如 sessionProjections、conversation.view、conversation.input.overlay、sidebarRightTabs 等;DSH 小版本升级若改动这些接口,插件可能需要跟随更新。

适用场景与注意

适合:在同一工作区内频繁从某一轮分叉、对比多条 agent 轨迹;需要把多轮问答或摘录片段拼成带引用 chip 的下一次输入的 DSH Web 用户。

限制(来自 README):

  • 分叉会复制父会话的继承前缀(大会话可达数 MB),故同一时间只允许一个分叉;大分支上会有短暂等待。
  • 空分支开关、草稿板内容与分叉确认均为本机浏览器 / 工作区范围,不跨设备同步。
  • 社区目录站点与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本插件是社区工作流类扩展之一。

源码无构建步骤,可用下列命令做语法检查:

node --check index.js
node --check client.js

结尾

dsh-session-helix 把 DSH 会话分叉做成可导航的分支树,并用草稿板把轮次与摘录拼装进当前输入框,且网络侧零上传。若你的 Web 工作流已用到 0.2.2-alpha.2 一带的 DSH,可按上文命令安装试用。

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

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

小夜