dsh-session-flow
跨会话档案柜:总览工作台、折叠时间线、子代理血缘、全文检索、双模式摘要、ZIP 导出、实时跟踪。会话流标签页嵌入原生会话页:轮次悬浮条、详情并入右栏(实时模式,切换会话可钉住原会话直播)、会话重命名(对齐官方即时同步)、结论摘要行、健康监控与常驻头部胶囊(空闲 / 活跃 / 工具执行 / 疑似卡死四态)。dsh v0.1.2+ 与官方轮次导航融合:官方预览卡内嵌矢量图标信息段(耗时 / 工具调用 / 错误 / 思考 + 工具分布懒加载),右键唤起会话流工作台;经典钢琴键悬浮条默认开启并存,点击未载入轮次委托官方引擎自动加载跳转;可设置隐藏官方导航只留钢琴键。设置弹窗独立分节,10 项行为参数可
安装
dsh plugin --profile web add dsh-session-flow
沙箱测试结果
| 阶段 | 结果 |
|---|---|
| 1 安装 | ✗ |
| 2 列装 | — |
| 3 挂载 | — |
| 4 启动 | — |
dsh: initialized profile web at /home/node/.dsh/profiles/web四阶段在隔离沙箱里跑:安装(有网)→ 列装 → 挂载 → 启动(后三步断网)。
README
dsh-session-flow — DSH 会话回顾与归档插件
中文 | [English](README.en.md)
把 DSH 会话的原始消息流重构成「可折叠的信息流 + 会话级汇总」:每个会话变成一张档案卡,跨工作区回顾、检索、导出。官方会话视图(Trajectory / Chat)长于正在发生的微观检查,本插件补足事后回顾 / 归档 / 洞察这一层。
界面一览
总览工作台 · 会话流标签页
 · 
会话卡片墙:标题、状态、结论摘要行、首个任务;hover ✎ 行内重命名 · 原生会话页内嵌「会话流」标签:当前会话直接回顾
轮次悬浮条 · 跨会话全文检索
 · 
对话页左侧轮次导航:收拢短横条 ⇄ 展开条目卡,一键跳转任意轮次 · 总览自由文本搜索触发全文模式:跨工作区召回,命中直达定位
详情并入右栏 · 折叠详情页
 · 
详情并入官方右侧面板:主对话与会话流并行,拖拽调宽 · 回合默认折叠,展开按真实时间序;右侧四标签导航
功能
能力 · 说明
总览工作台 · 会话卡片(状态/错误/耗时)+ 结论摘要行;排序、筛选、工作区 tabs
结构化搜索 · tool: file: err: 前缀 + 自由文本
折叠详情页 · 回合折叠成「用户发言+结论」,展开按真实时间序;按需加载
四标签导航 · 用户发言 / 工具 / 错误 / 检索,点击定位高亮
血缘树 · 子代理派生关系树(离线档案 + 运行时实时双通道)
双模式摘要 · 规则摘要(零开销实时组装)+ LLM 摘要(落盘复用、新对话提示重生成)
实时跟踪 · 运行中会话 3 秒轮询,呼吸高亮 + 生成标志
ZIP 导出 · 概览 + 时间线分卷 Markdown 报告
会话重命名 · 与官方标题同一数据源(log-backed),双向实时同步,随时改名
健康监控 · 活跃 / 工具执行中 / 静默中 / 疑似卡死四级分类;总览徽标 + 详情实时条
头部健康芯片 · 会话页顶栏模式标识右侧,竖条收拢 ⇄ 悬浮展开状态卡,点击直达详情
会话流标签页 · 原生会话页内嵌标签,与工作台互跳
轮次悬浮条 · 对话页左侧轮次跳转(仅对话页显示)
跨会话全文检索 · 内容级召回,命中直达会话流标签页定位
详情并入右栏 · 与主对话双视角并行
缓存管理 · 索引/时间线缓存查看与清理(不影响 DSH 数据)
安装
# 插件市场搜索 dsh-session-flow,或: dsh plugin add dsh-session-flow dsh plugin add github:YeqingTang/dsh-session-flow
安装后重启 DSH Web 服务并硬刷新浏览器(Ctrl+Shift+R),侧边栏出现「会话流」入口即成功。
环境要求:DSH Web GUI(最新稳定版);Node.js ≥ 22.19(内置 zstd 解码,零第三方依赖)。
使用
- 总览:侧边栏「会话流」→ 全部会话卡片。搜索支持
tool:/file:/err:前缀;自由文本 ≥2 字符自动追加跨会话全文检索结果。 - 详情:点卡片进入。回合默认折叠,点回合头展开;右侧四标签导航定位;顶部可生成 LLM 摘要、导出 ZIP、并入右栏、查看血缘。
- 原生会话页:会话顶部「会话流」标签直接回顾当前会话;对话页左侧轮次悬浮条跳转任意轮次;标题 hover ✎ 重命名(与官方标题实时同步)。
- 健康状态:顶栏模式标识右侧的健康芯片(竖条:绿=活跃 / 黄=工具执行中 / 红=疑似卡死),悬浮展开看详情,点击直达会话流详情页;总览卡片与详情实时条同步显示徽标。
- 实时:运行中会话点「实时」,3 秒自动刷新。
外部依赖与运行条件
- 运行环境:DSH Web GUI(0.1.2-rc.1 ~ 0.2.1-rc.2,逐版本兼容声明见
package.json的dsh.compatibility.dshReleases);Node.js ≥ 22.19(使用 Node 内置 zstd 解码,无第三方解码库)。 - 运行依赖:仅
@deepseek-ai/schemastery(DSH 官方同源 schema 库;用于设置表单 schema 与.volatile()热更新)。 - 无生命周期脚本:不声明
preinstall/install/postinstall/prepare,安装过程不执行任何脚本。 - 以 Bundle Patch 方式挂载:
cordis.patch.yml只插入本插件自身条目,不禁用、替换或遮蔽任何官方组件。 - 独立第三方项目,非 DeepSeek 官方组件;包名不使用
@deepseek-ai/*命名空间。
权限与数据边界
访问范围 · 用途 · 边界
读 ~/.dsh/sessions/** · 解析会话存档(zstd/JSONL)生成索引与时间线 · 只读,不修改、不删除会话文件
写 ~/.dsh/session-flow/** · 插件私有索引、时间线缓存、重命名映射 · 只写此目录;缓存管理面板只清理这里
本机 POST /api/session-flow · 索引 / 详情 / 检索 / 导出 / 健康检查 · 注册在 DSH 自带 webServer 上,沿用宿主登录鉴权;服务端不主动对外发起网络请求
读官方会话列表投影(sessions.list) · 列表标题、重命名同步 · 只读;不修改官方状态
宿主 llm 服务(可选) · LLM 摘要 · 只经宿主已配置的模型调用,不引入额外供应商
- 不收集遥测、不上报使用数据;ZIP 导出为本地文件。
- 设置保存写入 DSH profile patch(
~/.dsh/profiles/<profile>/cordis.patch.yml),与官方设置同一存储。
已知限制与风险
- 会话存档是宿主实现细节:dsh 每次存档代际迁移(v1→v2→v3→v4)都可能改变读取口径。本插件按「代际号最大」自适应,并为 v4 的
isError变化做了双口径兼容,但不保证未来全新格式零改动。 - 索引为增量缓存:首次安装 / 升级后首次打开会全量扫描一次;数百 MB 的超大会话首扫较慢,不影响宿主数据。
- 「详情并入右栏」依赖官方右栏标签页体系(dsh ≥ 0.1.5)或旧 details 列(≤ 0.1.4);自定义外壳两者都没有时,按钮会禁用并提示原因。
- LLM 摘要需要你已在 DSH 中配置可用模型;未配置时仅规则摘要可用。
- DOM 级增强(轮次悬浮条 / 官方 rail 增强 / 健康芯片)通过 DOM 观察实现(官方未提供扩展槽位);宿主大版本若调整 DOM 结构可能静默失效,需随版本适配。
- 不接管、不修改任何官方 UI 行为;与第三方皮肤 / 布局插件共存时,可能因布局差异需要额外适配。
致谢
- DeepSeek Harness (dsh) —— 运行基础。
- @deepseek-ai/dsh-session-persistence-jsonl —— zstd 多帧扫描算法(
lib/archive.js借鉴,MIT 许可)。 - dsh-web-ui(@linxin666 全家桶) —— 侧边栏入口与面板挂载模式参照,未复制代码。
- dsh-webui-market-plugin —— 插件市场机制与分发渠道。
本插件遵循 Apache-2.0 许可,使用第三方代码时保留其原始许可声明。
许可
[Apache-2.0](LICENSE)
以上内容来自 npm 上的 README,我们只做格式化,不改内容。
版本
npm 上共发布:16,最后更新 2026-10-18