dsh-milestone:DeepSeek Harness 会话里程碑导航条

前言

在 DeepSeek Harness(DSH)里跑长对话,几十轮之后想回到「第 17 轮那个提问」,通常只能不停往上翻,在代码块和思考过程里逐段找。Harness 原生会话视图没有按提问维度的快速索引,翻找成本随轮次线性上升。

dsh-milestone 是社区维护的客户端插件,在会话视图右侧挂一条圆点时间线:一个提问一个圆点,悬停看内容与元信息,点击即跳转。下面介绍它的定位、功能、安装方式与使用注意。

这是什么

dsh-milestone 由 SnowCrescenter-tech 维护,分类为客户端插件,通过 Harness 官方 slot 机制挂载,不修改 harness 源码。当前 npm 版本为 0.6.6,许可证 MIT。

一句话定位:像 Git 提交图一样,一眼定位每一次提问,一键跳转到会话内任意位置。

核心功能

圆点时间线

每个用户提问对应一个圆点,等距排列、不随对话长度变形,颜色由浅入深标出先后。点击圆点平滑跳转到对应消息;悬停显示消息预览与元信息(时间、轮次、用时、TTFT、tok/s、模型、token 用量等)。滚轮可在里程碑条上直接滑动选点,视口内最近的提问会亮起白环。

全部提问列表

一键打开面板,按序号、轮次、预览一次看全,点击任意一条直接跳转。打开时会自动加载整个会话的历史,不必手动翻页——对藏在最早期的消息,比在小圆点上逐个找快得多。

站内搜索与跨会话搜索

站内搜索框过滤圆点,匹配的是完整消息内容(不是 80 字摘要),实时显示命中数 N/M。Enter 跳到下一个匹配,Esc 一键清空。

跨会话搜索调用 harness 原生索引,可搜索所有会话的消息内容,点击命中结果直接打开对应会话(结果片段 ≤240 字符,最多 20 条)。

收藏书签与深链接

悬停圆点点星收藏,刷新后仍在(按会话持久化到 localStorage)。顶部「★」一键只看收藏。跳转时 URL 自动带上 #msg= 锚点,刷新或分享后仍回到同一条消息。

效率辅助

  • 键盘导航↑↓ 移动 · Enter 跳转 · Home/End 首尾。
  • turn 分组折叠:长轮次折成一条,汇总圆点带 ×N 徽标。
  • 复制与 fork:一键复制提问全文,或从此处分支。
  • 聚焦模式:淡化 / 折叠思考与工具调用,强度可调。
  • 个性化:强调色、圆点大小、距侧边距离、左右位置即调即存;中文 / English 一键切换。

安装与启用

要求 Node.js >= 24(harness 官方要求)。插件声明的支持线为 @deepseek-ai/dsh 0.1.1-rc.2

从 npm 安装(推荐):

dsh plugin --profile demo add dsh-milestone

或从 GitHub 源码安装:

dsh plugin --profile demo add "github:SnowCrescenter-tech/dsh-milestone#main"

启动 Web UI:

npx @deepseek-ai/dsh web    # → http://127.0.0.1:3080

打开一个至少包含 2 条提问的多轮对话,会话视图右侧即出现里程碑条。

典型用法

  1. 快速回看某轮提问:在右侧圆点时间线上悬停,看预览与元信息卡片,点击跳转。
  2. 浏览整段会话结构:打开「全部提问」面板,按序号扫一遍,点任意条目直达。
  3. 在当前会话内搜关键词:打开站内搜索,输入关键词,用 Enter 在命中项间跳转。
  4. 跨会话找回旧讨论:用跨会话搜索,从命中结果打开目标会话。
  5. 标记重要提问:悬停圆点点星收藏,之后用顶部「★」筛选。
  6. 分享定位:跳转后 URL 带 #msg= 锚点,复制链接即可让他人直达同一条消息。

工作原理

插件采用双半边结构(空 node half + 挂载在 shell.overlay slot 的 client half),零侵入现有 UI:

shell.overlay (root scope)
  └─ milestone.rail (session scope, 自声明子槽)
       └─ useSession 读取会话快照 → 圆点列表 + 悬停 + 跳转

数据源来自 harness 原生会话快照(消息列表、turn 元数据、分页与运行状态),跳转以消息锚点做 DOM 定位,scrollIntoView 平滑滚动。书签与工具栏偏好经 store.persist 按会话写入 localStorage。

适用场景与注意

适合谁:在 DSH 里经常跑多轮、长对话的开发者——调试智能体、反复改 prompt、对比不同轮次输出时,需要按提问维度快速定位。

已知限制(摘自官方 README):

  • 站内搜索只覆盖当前已加载的消息窗口(初始 50 条);更早历史需先点顶部「···」加载后才能被搜到。「全部提问」列表不受此限。
  • TTFT / tok/s 依赖 turn 位置数据,窗口外或未完成的 turn 不显示。
  • 书签按会话隔离,不跨会话共享。
  • fork 从选中消息所在轮次开始分支,不会自动打开子会话。
  • 深链接目标若早于已加载窗口,会先自动加载更早历史再定位;极端深的历史可能定位失败。

安全提示:插件以当前 dsh 进程权限运行,安装前应检查 GitHub 源码 与 MIT 许可证,确认符合你的使用环境。SkillHub 社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-milestone 把长对话的「导航地图」挂在会话右侧:圆点时间线、全部提问列表、站内与跨会话搜索、书签深链接,装完即用。若你在 Harness 里经常翻找某轮提问,可以按上面的命令装上试一轮。

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

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

小夜