DeepSeek Harness(DSH)採用“一切皆插件”的架構。在處理長對話時,快速定位用戶消息往往需要手動滾動,效率較低。下面介紹 dsh-chat-history 插件,它爲 DSH 的 Web GUI 添加了類似 ChatGPT 的對話歷史側邊欄,將導航操作轉化爲直觀的視覺交互。
插件定位與功能¶
dsh-chat-history 是一個由維護者 ttmouse 開發的 MIT 許可證插件。它通過一個固定的 Rail 組件,在對話記錄的右側邊緣展示每個用戶消息的導航點,解決了長會話中查找上下文困難的問題。
核心功能如下:
- Rail 導航條:在對話記錄的右側邊緣顯示一系列水平 Bar,每個 Bar 對應一條用戶消息。只要會話中包含兩條以上的用戶消息,該 Rail 始終可見。
- 懸停面板:鼠標懸停在某個 Bar 上時,會彈出一個列表,展示所有用戶消息的編號和單行預覽。點擊列表項可直接跳轉到對應消息。
- 滾動同步:高亮狀態會自動跟隨閱讀進度,定位到滾動視口頂部邊緣之下的第一條用戶消息。點擊跳轉後,高亮狀態會“鎖定”在跳轉的位置。
- 點擊鎖定:當懸停面板處於打開狀態時,自動同步會暫停,允許用戶自由瀏覽列表而不被打斷。關閉面板後,同步恢復。
- Bar 按壓跳轉:直接點擊 Rail 本身,也可以跳轉到最近的 Bar,即使中間有間隔也能完成導航。
- 數據與樣式:插件完全基於會話快照中的
user/steering節點生成數據,並僅使用 Design Tokens 進行樣式渲染。
安裝與啓用¶
使用此插件前,請確保你運行的是 DeepSeek Harness 的 Web Profile(即 GUI)。
- 進入運行 GUI 的 Profile 目錄(例如
~/.dsh/profiles/web)。 - 執行安裝命令:
pnpm add @ttmouse/dsh-chat-history
- 在該 Profile 的配置文件中,將插件名稱添加到
dsh.profile.bundles數組中。DSH 的plugin add流程通常會自動處理此步驟,但也可以手動配置:
{
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"@ttmouse/dsh-chat-history"
]
}
}
}
- 重啓
dsh web服務並刷新瀏覽器,右側邊緣的對話歷史 Rail 即會出現。
適用場景與注意事項¶
此插件適合所有需要在 DeepSeek Harness Web GUI 中管理長對話上下文的開發者。
- 運行環境:插件依賴 Web Profile 環境。它註冊到
conversation.session.header.actions插槽,這意味着它與任何已發佈的@deepseek-ai/dsh-client-ui-conversation兼容,無需上游接口變更。 - 佈局影響:Rail 組件以
position: fixed渲染,依附於對話記錄的滾動視口,不會佔用 Header 的佈局空間。 - 依賴管理:插件通過 npm 依賴管理,安裝前建議檢查源碼與許可證(MIT)。
總結¶
dsh-chat-history 通過極簡的交互設計,將對話歷史導航功能無縫集成到 DSH 界面中。它複用了 ChatGPT 的成熟交互模式,降低了長對話的上下文檢索成本。