dsh-sidebar-panel-collapse:側邊欄面板列表一鍵摺疊,把工作區高度還給會話列表

前言

DeepSeek Harness(DSH)Web 客戶端左側欄在「新會話」下方通常掛着一長串面板入口:MUV 表格、插件、插件市場、技能、歸檔會話、自動化任務、上下文洞察、記憶系統、更多等。工作區列表在同一條側欄裏排在這些入口下面。面板區塊佔用的縱向空間是固定的,工作區能展開的行數就被擠在剩餘高度裏。若你更常在工作區之間切換、較少點這些面板,默認佈局會一直佔着那塊區域。

社區插件 dsh-sidebar-panel-collapse(維護者 Sunday530,分類:客戶端)在面板列表上方增加一個 chevron 摺疊按鈕:點一次隱藏整塊面板入口行,下方工作區向上佔滿多出來的高度;再點一次恢復。側欄本身仍在,摺疊狀態按瀏覽器記住,不涉及改 DSH 服務端邏輯。

這是什麼

dsh-sidebar-panel-collapse 是面向 DSH Web 客戶端的 UI 插件:在側邊欄面板 <nav> 上方插入約 20px 高的摺疊控件,通過 CSS 與 html 上的數據屬性隱藏面板入口區塊(含部分不走 sidebar.panellist 插槽、直接掛進側欄的插件行)。Node 側 lib/index.js 僅爲滿足 dsh.bundle 包結構的空 cordis 插件;實際行爲在瀏覽器端 lib/client.js 註冊的客戶段 bundle 裏完成。

核心功能

下面介紹 README 中已寫明的行爲,不擴展未在資料出現的能力。

  1. 摺疊範圍:一次操作隱藏整塊面板列表相關 UI(資料列舉包括 MUV 表格 / 插件 / 插件市場 / 技能 / 歸檔會話 / 自動化任務 / 上下文洞察 / 記憶系統 / 更多等入口行)。工作區列表獲得多出來的縱向空間。
  2. 側欄與殼層狀態不變:插件不修改 DSH 自帶的側欄收窄(56px rail)或寬度邏輯;僅在展開側欄時顯示摺疊按鈕——側欄處於 rail 模式時按鈕會隱藏,因爲殼層本身已隱藏面板列表。
  3. 狀態持久化:摺疊選擇寫入 localStorage,鍵名爲 dsh-sidebar-panel-collapse:collapsed;會一次性從舊鍵 dsh-panel-collapse:collapsed 遷移。
  4. DOM 穩定性:摺疊按鈕作爲面板 <nav> 的兄弟節點注入,不在 React 樹內;側欄重渲染時用 MutationObserver 重新掛載。樣式通過注入 dsh-sidebar-panel-collapse/toggle.css,以 html[data-dsh-sidebar-panel-collapsed="1"] 統一控制顯示/隱藏。
  5. 非插槽插件行:對標記爲 dshpc-extra 或直接掛載的入口,以及帶 [data-dsh-muv-entry]、[data-dsh-mnemon-entry]、[data-dsh-vr-entry]、[data-dsh-ctx-entry] 等屬性的行一併納入隱藏規則,避免「只藏插槽行、漏掉直掛行」。

安裝與啓用

DSH 採用「一切皆插件」的擴展方式;社區目錄站點 skillhub.cn 與 DeepSeek / 幻方無官方從屬關係,安裝前建議自行查看倉庫源碼與 MIT 許可證。插件以當前 DSH 進程及其 Web 配置所允許的權限運行,請按組織安全要求評估後再裝。

官方 README 給出的安裝方式如下。安裝後需重啓 DeepSeek Harness 一次,以便 bundle 行寫入 profile;之後在插件市場卡片裏可隨時開關該插件。

從插件名安裝:

dsh plugin --profile web add dsh-sidebar-panel-collapse

若本地已有該倉庫檢出,也可指定 GitHub 源(命令原文如下):

dsh plugin --profile web add github:Sunday530/dsh-sidebar-panel-collapse

package.json 中聲明客戶段平臺爲 web,與 --profile web 一致。

典型用法

無需額外配置文件或環境變量。完成安裝並重啓後:

  1. 打開 DSH Web 客戶端,在左側欄找到「新會話」按鈕。
  2. 在其正下方、「MUV 表格」等面板入口之上,會出現 chevron 摺疊按鈕(README 截圖路徑:assets/expanded.png / assets/collapsed.png)。
  3. 單擊按鈕:面板入口行全部隱藏,工作區列表佔滿下方高度(摺疊態見 README 說明)。
  4. 再次單擊:恢復面板列表。同一瀏覽器下次打開仍保持上次選擇。

除上述點擊交互外,資料未描述 CLI 或 API 用法。

適用場景與注意

適合誰:長期在工作區列表裏切換、希望側欄縱向空間優先給會話/工作區,又偶爾需要展開面板入口的用戶。

實現層面(便於排查問題):

  • 選擇器通過 CSS Modules 類名穩定後綴(如 _panelList、_newSession、_collapsed)匹配,降低殼層 rebuild 後類名哈希變化帶來的影響。
  • 插件只隱藏「面板入口區塊」,不替代 DSH 自帶的側欄摺疊。

安裝前請自行確認:閱讀 GitHub 倉庫 源碼;peer 依賴爲 @deepseek-ai/cordis 的若干 RC 區間(見 package.json),需與當前 DSH 自帶的 cordis 版本兼容。README 測試版本爲 0.2.1-rc.5,更高或更低版本行爲以實際爲準。

結尾

dsh-sidebar-panel-collapse 用側欄頂部一個 chevron,把面板列表整塊讓位給工作區高度,狀態本地記住、側欄殼層邏輯不動。若你需要在 Web 客戶端裏壓縮面板區、放大工作區列表,可按 README 命令裝入 web profile 試用。

  • 目錄頁:https://www.skillhub.cn/plugins/Sunday530/dsh-sidebar-panel-collapse
  • GitHub:https://github.com/Sunday530/dsh-sidebar-panel-collapse
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜