在 DSH Web GUI 的长对话记录中,通过滚动查找之前的交互点往往效率低下。dsh-chatflow-rail 插件在左侧提供了一条对话流程导航栏,将对话映射为紧凑的虚线簇,辅助快速定位。
这是什么¶
这是一个由 veritas501 维护的客户端插件。它在 DSH Web 界面左侧添加了导航栏,每条用户消息对应一条虚线,位置与实际内容 1:1 对应;同时顶部停靠了一个“上一消息”卡片,解决了在长对话中快速跳转的问题。
核心功能¶
- 左侧导航栏:为每条用户消息绘制一条虚线,直观展示对话结构。
- 悬停预览:鼠标悬停在导航栏上时,虚线簇会平滑展开(扇形效果),靠近指针的虚线会变宽变暗,显示消息预览。
- 点击跳转:点击虚线或导航栏区域,视图会平滑滚动至对应的聊天消息。
- 顶部卡片:当用户消息滚动超过视口顶部时,显示“上一消息”浮动卡片,包含
#N/M · time和 3 行内容预览。 - 自动扩展:插件会自动扩展 DSH 的历史窗口,确保导航栏覆盖整个对话,而不仅仅是渲染的尾部窗口。
安装与启用¶
该插件是 Git 托管的包,其构建脚本默认被 pnpm 阻塞,因此需要先配置依赖允许。
- 允许构建:编辑
~/.dsh/profiles/web/pnpm-workspace.yaml,添加以下配置:
onlyBuiltDependencies:
- dsh-chatflow-rail
- 安装插件:
dsh plugin --profile web add github:veritas501/dsh-chatflow-rail
这会执行 `prepare` 脚本构建 `lib/`。
- 重启服务:
dsh web
重启后刷新浏览器页面即可生效。
典型用法¶
- 悬停在左侧导航栏上,查看消息预览并点击跳转到特定位置。
- 当对话很长滚动到顶部时,使用浮动的“上一消息”卡片快速返回。
适用场景与注意事项¶
- 适用场景:适用于需要频繁查看或跳转长对话记录的开发者或用户。
- 注意事项:
dsh plugin的行为类似于添加依赖。如果自动添加未生效,需手动将包名添加到dsh.profile.bundles列表中。- 开发:本地开发该插件本身时,需先运行
pnpm build生成lib目录,然后使用本地路径安装。