dsh-sidebar-toggle:DSH Web 側邊欄分組一鍵切換

前言

DeepSeek Harness(DSH)的 Web GUI 側邊欄支持兩種會話展示方式:按工作區分組(workspace)與平鋪會話列表(flat)。默認路徑通常要經過視圖選項菜單才能切換。若你經常在多工作區與平鋪列表之間來回看會話,多幾次菜單操作會打斷節奏。下面介紹的 dsh-sidebar-toggle 是維護者 john-walks-slow 發佈的客戶端插件:用全局快捷鍵或點擊側邊欄分組標題,直接調用宿主原生 setGroupBy,與菜單切換保持同一套狀態。

這是什麼

dsh-sidebar-toggle 面向 DSH Web 界面,解決「側邊欄分組模式切換路徑偏長」的問題。插件不新增分組邏輯,只複用 Cordis 槽位 sidebar.workspaces 上的 WorkspaceViewStoreHandle,在 workspace 與 flat 之間來回切換。Host 側 apply 爲空實現,交互全部在瀏覽器端 lib/client.js 完成;npm 包當前版本爲 0.1.0,許可證 MIT。

核心功能

快捷鍵 Alt+R

在頁面任意位置按下 Alt+R 即可切換分組模式(workspace ↔ flat)。插件會檢測輸入法組合輸入狀態(e.isComposing || e.keyCode === 229),避免在中文等 IME 選詞時誤觸發。

點擊分組標題

側邊欄頂部標題(中文「會話」/「工作區」,英文 Sessions / Workspaces,對應選擇器 [class*="sectionHeader"] [class*="sectionLabel"])會顯示手型指針,懸停時透明度變爲 0.8。單擊標題文本即可切換;若標題處於隱藏態 sectionLabelHidden,則忽略點擊。

狀態與日誌

每次切換調用宿主 actions.setGroupBy(),並在瀏覽器控制台輸出一行日誌,例如:

[dsh-sidebar-toggle] groupBy: workspace -> flat
[dsh-sidebar-toggle] groupBy: flat -> workspace

安裝與啓用

推薦從 npm 安裝預構建包,無需額外改配置;自帶的 cordis.patch.yml 會自動掛載,刷新 Web 頁面即可使用:

dsh plugin --profile web add dsh-sidebar-toggle

若要從 GitHub 源碼安裝(包內含 prepare 構建,pnpm ≥ 10 首次安裝可能需要放行構建腳本):

dsh plugin --profile web add github:john-walks-slow/dsh-sidebar-toggle
# 若 pnpm 攔截構建腳本,按提示執行 pnpm approve-builds 或將 dsh-sidebar-toggle
# 加入 ~/.dsh/profiles/web/pnpm-workspace.yaml 的 allowBuilds / onlyBuiltDependencies 後重跑

典型用法

  1. 安裝並刷新 DSH Web 頁面。
  2. 需要平鋪看全部會話時,按 Alt+R,或點擊側邊欄「會話」/「Sessions」等分組標題。
  3. 需要按工作區分組時,再按一次 Alt+R 或再次點擊同一標題。
  4. 打開開發者工具控制台,可覈對 [dsh-sidebar-toggle] groupBy: ... 日誌是否與界面一致。

本地調試可將插件以 link: 接入 web profile:

dsh plugin --profile web add link:/path/to/dsh-sidebar-toggle

適用場景與注意

適合誰:長期在 DSH Web GUI 中管理多工作區、又需要快速在平鋪列表與分組視圖之間切換的開發者。

權限與兼容:純客戶端插件,零 npm 運行時依賴;無外部服務、無網絡請求、無本地文件讀寫、不讀取會話內容。Store 解析帶 try/catch;側邊欄未掛載或 DOM 結構變化時操作靜默空轉,不阻斷頁面。停用或熱重載時通過 ctx.effect 與 window.__dshSidebarToggle.dispose() 移除監聽與注入樣式。

安裝前建議:插件隨當前 DSH 進程與 Web 環境加載,安裝前應自行查看 GitHub 倉庫 源碼與 MIT 許可證,確認符合你的使用習慣。DSH 社區插件目錄(SkillHub 插件頁)由社區維護,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-sidebar-toggle 把側邊欄 workspace / flat 切換收成 Alt+R 或一次標題點擊,並與宿主視圖菜單共用同一狀態。更多信息見目錄頁 skillhub.cn/plugins/john-walks-slow/dsh-sidebar-toggle 與源碼 github.com/john-walks-slow/dsh-sidebar-toggle。

羽毛球分组比赛记分
小程序二维码

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

小夜