前言¶
DeepSeek Harness (DSH) 0.1.5-rc.1 引入了架構變動,原有的 dsh-session-pin 插件因插槽(slot)限制和渲染邏輯差異,無法在當前版本正常工作(如無法在瀏覽器側邊欄體現會話重排)。dsh-sidebar-pins 旨在完全替代舊版插件,提供一個自包含的側邊欄固定會話塊。
插件簡介¶
名稱:andreytepaykin/dsh-sidebar-pins
定位:爲 DeepSeek Harness 左側邊欄提供獨立的固定會話管理面板。
作者:Andrey Tepaykin
許可證:MIT
核心價值:
- 將固定會話從彈窗改爲側邊欄內的固定區塊。
- 解決了舊插件在 DSH 0.1.5-rc.1 中因核心 API 變更導致的失效問題。
- 使用獨立的設置命名空間,並支持從舊插件一次性遷移數據。
核心功能¶
-
側邊欄固定面板
在側邊欄底部的 “Settings” 行上方顯示 “📌 PINNED” 區塊。面板高度最高可達 30vh,內容可滾動;在 Rail 模式下僅顯示圖標和數量。 -
多種固定方式
- 點擊固定會話行:點擊面板內的會話項打開會話;右側的
×按鈕用於取消固定(默認隱藏,懸停顯示)。 - 會話行懸停:鼠標懸停在普通會話列表的行上時,顯示
📌按鈕進行固定/取消。 - 會話頭部切換:在當前打開的會話頭部欄中提供固定開關。
- 點擊固定會話行:點擊面板內的會話項打開會話;右側的
-
數據存儲與遷移
- 固定狀態存儲在插件自身的設置命名空間
sidebar-pins中(持久化到~/.dsh/settings.yaml)。 - 首次安裝時,會自動從
session-pin命名空間遷移一次數據,無需手動操作。
- 固定狀態存儲在插件自身的設置命名空間
安裝與啓用¶
在終端執行以下命令安裝插件:
dsh plugin --profile web add github:AndreyTepaykin/dsh-sidebar-pins
安裝後需要重啓 DSH 客戶端並刷新 GUI 頁面才能生效。
使用方式¶
- 管理固定會話:
在側邊欄底部,點擊 “📌 PINNED” 頭部即可手動摺疊/展開面板。 - 操作會話:
- 在固定面板中,點擊會話條目直接打開。
- 在普通會話列表中,將鼠標懸停在任意行上,點擊出現的
📌按鈕將其固定到上方面板。 - 在當前打開的會話頭部,使用操作欄中的按鈕進行固定。
- Rail 模式:
當側邊欄處於 Rail 模式(僅顯示圖標)時,固定面板會自動適應,僅保留圖標和固定會話數量顯示。
限制與注意事項¶
-
主列表不重排
插件不會修改主會話列表的順序。固定的會話會保留在常規列表中,僅通過上方面板進行管理。這是受限於 DSH 核心架構,插件無法訪問瀏覽器渲染層的數據。 -
會話行識別依賴
在會話行懸停固定功能中,會話行的識別依賴於 React Fiber (__reactFiber$...),並回退到具有唯一title的嵌套span。如果存在標題重複的會話,該按鈕可能不會顯示。 -
Rail 模式下的行按鈕
在 Rail 模式下,側邊欄 DOM 中不存在會話行元素,因此行內的懸停固定按鈕不會出現。固定功能僅通過固定面板和頭部按鈕可用。 -
面板高度與位置
面板高度是動態的(最高 30vh),不會擠壓 “Settings” 行。位置由錨點標記自動計算,不再支持用戶手動配置位置。
結尾¶
該插件完全兼容 DSH 0.1.5-rc.1,並作爲 dsh-session-pin 的繼任者提供穩定的固定會話管理能力。如需查看源碼或提交問題,可訪問:GitHub | SkillHub 目錄