在 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目錄,然後使用本地路徑安裝。