前言¶
DSH Web 中进行多轮问答时,消息列表会不断变长,想回到某一次用户提问、查看对应模型回复,或核对发送时间、用时与 Token/吞吐率,往往需要反复滚动。dsh-history-tree 是一个用于 DSH Web 界面的插件,提供与 Codex 1:1 一致的对话轮次时间线点阵,并附带悬浮历史概览卡片。下面介绍它的能力、安装方式和启动查看方法。
这是什么¶
dsh-history-tree 的项目仓库为 z953218350/dsh-history-tree。package.json 中版本为 1.0.3,许可证为 MIT,author 字段为 DSH Harness Agent。
它的定位很直接:在 DSH Web 对话界面左侧提供一个垂直居中的时间线点阵,按真实用户提问生成刻度点,并让悬浮卡片展示每一轮的用户提问、模型最终回复和底部元数据。
核心功能¶
左侧时间线点阵¶
时间线点阵固定在视口垂直居中位置,紧贴工作区/侧边栏右分界线,不随消息滚动位移。刻度点按右侧真实用户提问生成,排除产物、工具执行与系统占位节点。
当对话轮次过多时,点阵会应用自适应最大高度限制,并支持鼠标滚轮平滑滚动。
悬浮概览卡片¶
鼠标滑过时间线点阵时,会出现阶梯波浪扩散放大动效。悬浮卡片以毛玻璃样式展示内容,包括:
- 用户提问文本
- 模型最终回复与说明正文
- 底部单行元数据:发送时间、用时、Token/吞吐率
卡片内容会过滤 Think、Bash 工具执行与文件产物。
点击定位与向上加载历史¶
点击任意刻度点或悬浮卡片,会平滑滚动到对应对话轮次。
当鼠标悬停在顶部刻度,或向上滚动触顶时,插件会自动加载更早历史会话,并动态向上延长刻度点阵。
安装与启用¶
在 DSH 的插件化安装方式下,可以先用 DSH CLI 安装。
使用 DSH CLI 安装¶
dsh plugin --profile web add -w dsh-history-tree
在 Web Profile 目录下安装¶
也可以进入 Web Profile 目录后使用 npm 或 pnpm:
cd ~/.dsh/profiles/web
npm i dsh-history-tree
或:
pnpm add -w dsh-history-tree
经过上面的步骤,确认 ~/.dsh/profiles/web/package.json 中的 dsh.profile.bundles 数组包含 dsh-history-tree。
使用本地源码目录安装¶
如果本地正在开发该插件,可以用 link 方式添加:
dsh plugin --profile web add -w "link:/path/to/dsh/plugin/dsh-history-tree"
这里将 /path/to/dsh/plugin/dsh-history-tree 替换为本地插件目录。
启动与查看¶
启动 DSH Web 服务:
dsh --profile web
或:
dsh web
打开浏览器访问:
http://127.0.0.1:3080/
打开任意包含多轮问答的对话,即可在左侧看到垂直居中的时间线点阵。
适用场景与注意事项¶
适合在 DSH Web 中频繁查看多轮问答历史、需要快速定位某一次用户提问或模型回复的开发者。
安装前注意以下几点:
- 插件以当前
dsh进程权限运行,安装前应检查源码与许可证。 - DSH 社区目录是独立站点,不等同于官方应用商店,第三方插件需要自行审查。
- 如果
add后启动报错提示子包重复声明,检查~/.dsh/profiles/web/package.json中的dsh.profile.bundles数组,确保仅包含根包,避免包含子组件包。 package.json中client.inject声明依赖@deepseek-ai/dsh-client-runtime与@deepseek-ai/dsh-client-locale,platform为web。package.json中dependencies为空对象,publishConfig.registry为https://registry.npmjs.org/。
小结¶
dsh-history-tree 的价值在于把 DSH Web 的多轮对话历史变成左侧可见的时间线点阵,并通过悬浮卡片提供上下文概览。它适合需要快速回溯问答轮次、查看最终回复和基础元数据的场景。
仓库地址:https://github.com/z953218350/dsh-history-tree