前言¶
用 DeepSeek Harness(DSH)做智能體開發時,Web 端的會話往往會越聊越長。想回到前面某一輪對話,只能靠滾動條一點點往上翻,turn 一多,定位就很費時間。
DSH 的理念是「一切皆插件」,客戶端 UI 的這類問題同樣可以交給插件解決。下面介紹的 dsh-turn-rail 就是這樣一個客戶端插件:它在頁面右緣加一條對話時間軸,樣式模仿 DeepSeek 官網聊天頁,用來在長會話中定位和跳轉歷史 turn。
這是什麼¶
dsh-turn-rail 由 Luoji-Yuli 維護,倉庫爲 luoji-yuli/dsh-turn-rail,當前版本 0.3.0,許可證爲 MIT,屬於客戶端類插件。它解決的問題很具體:長會話裏快速找到歷史 turn,而不用手動滾動。
核心功能¶
- 摺疊態導航欄:頁面右緣一條 34px 的導航欄,每個用戶 turn 對應一個灰色小標記,當前 turn 顯示爲藍色並拉伸;
- 展開面板:懸停或鍵盤聚焦時展開爲 240px 的浮動面板,每條用戶消息一行;
- scrollspy:滾動時保持活動標記同步;
- 歷史自動加載:打開會話時自動翻頁加載更早歷史,所有歷史 turn 無需手動滾動即可出現在導航欄;
- 毛玻璃背景可選:毛玻璃圓角背景爲可選開關,默認關閉,亮/暗主題均支持;
- 免構建:倉庫內置預編譯的
lib/client.js,常規安裝無需構建步驟。
安裝與啓用¶
前置條件:已安裝並運行 DeepSeek Harness Web(npx @deepseek-ai/dsh web 或 pnpm dsh web),且 dsh 與 pnpm 都在 PATH 中。
先執行安裝命令:
dsh plugin --profile web add github:Luoji-Yuli/dsh-turn-rail
安裝成功會輸出 + @deepseek-ai/dsh-turn-rail ...。如果執行時 dsh web 正在運行,需要重啓並刷新頁面。
再啓動並驗證:
dsh web
打開 http://127.0.0.1:3080,用 Ctrl + F5 強制刷新,然後打開一個包含至少 2 條用戶消息的會話,導航欄會出現在頁面右緣。注意:會話至少要包含 2 條用戶消息,導航欄纔會顯示。
典型用法¶
開啓毛玻璃背景¶
毛玻璃圓角背景默認關閉,需要在設置中手動開啓:
- 打開 DeepSeek Harness Web,進入 Settings → General;
- 找到 Turn rail frosted background 一行;
- 打開開關,亮色和暗色主題下都會顯示毛玻璃圓角背景;關閉後兩種主題下都只顯示標記,不帶背景。
本地目錄安裝(開發場景)¶
dsh plugin --profile web add link:./dsh-turn-rail
從源碼構建¶
常規安裝不需要構建,但如果你想修改 src/ 下的源碼,先把改動鏡像到 deepseek-harness monorepo 的 packages/client/ui-turn-rail/ 目錄,然後運行:
pnpm install
pnpm --filter @deepseek-ai/dsh-turn-rail run bundle
構建完成後,把新生成的 lib/client.js 提交回本倉庫。
卸載¶
dsh plugin --profile web remove @deepseek-ai/dsh-turn-rail
適用場景與注意事項¶
適合經常在 DSH Web 裏進行長會話、需要來回查看歷史 turn 的開發者,也適合希望客戶端界面貼近 DeepSeek 官網樣式的人。
使用前有幾點需要留意:
- 插件以當前 dsh 進程的權限運行,安裝前建議先檢查源碼與許可證(本項目爲 MIT);
- 會話至少包含 2 條用戶消息,導航欄纔會顯示;
- 毛玻璃背景默認關閉,需要手動開啓;
- 安裝時如果
dsh web正在運行,裝完要重啓並刷新頁面。
小結¶
dsh-turn-rail 做的事情不復雜,但切中的是長會話裏高頻的痛點:快速定位歷史 turn。一條命令安裝,打開會話即可使用。經過上面的步驟,你可以在自己的 DSH Web 環境裏直接驗證效果。
- GitHub:https://github.com/Luoji-Yuli/dsh-turn-rail
- 社區目錄:https://www.skillhub.cn/plugins/Luoji-Yuli/dsh-turn-rail
需要說明的是,上述目錄爲社區維護的獨立站點,與 DeepSeek、幻方無官方從屬關係。