前言¶
在 DeepSeek Harness(DSH)裏裝多了 Web 客戶端插件之後,左側欄 sidebar.panellist 上註冊的面板行會一行接一行變長——插件、自動化任務,以及後續插件各自佔一行。宿主默認會把這些入口都攤在側欄主列裏,沒有「只保留常用項、其餘收進菜單」的開關。
若你只想精簡側欄視覺、又不想失去入口,需要一層和宿主側欄機制對齊的顯示控制。下面介紹社區插件 dsh-sidebar-entry-manager(維護者 yanli-nyan,GitHub 3 stars,SkillHub 分類爲客戶端,當前目錄頁標註版本 v1.1.0)。
這是什麼¶
dsh-sidebar-entry-manager 是 DSH Web 客戶端插件:在左側欄各面板入口行上提供顯示開關,界面中文名爲「左側欄入口顯示」(見包內 locale/zh.json)。插件不改動宿主或其他插件源碼,只註冊自己的 slots,樣式類名使用 dsem_ 前綴。
它解決的是:哪些面板行出現在側欄主列、哪些收起來但仍可從「更多」菜單打開,並把選擇寫入瀏覽器 localStorage,刷新與重啓後仍保留(v1.1.0 起首屏即可按偏好渲染,無需先點開「更多」)。
核心功能¶
以下能力來自插件 README(社區目錄 awesome-dsh-plugin.com 中文頁 與倉庫說明一致):
- 按行隱藏:可關閉任意非
plugins的面板行;關閉後該行從側欄主列消失,但仍列在底部「更多」菜單中(隱藏項帶「已隱藏」標記)。 - 偏好持久化:鍵名爲
dsh-sidebar-entry-manager:prefs,存在本機瀏覽器。 - 雙入口管理:左側欄新增的「左側欄入口」圖標行,以及 DSH 設置頁中的「左側欄入口」一節,共用同一份偏好。
- 立即生效:在管理面板切換開關後,側欄行即時更新;「全部顯示」可一鍵清空偏好。
做不到的事(宿主硬編碼,非本插件範圍):
- 無法隱藏「插件」行(管理面板中該行顯示爲只讀「始終顯示」)。
- 無法隱藏「更多」按鈕(本插件會向
sidebar.panellist.actions註冊「管理左側欄入口…」菜單項,因此「更多」會保持可見)。 - 無法把多行合併爲單一入口(需重寫側欄外殼,超出本插件設計)。
左欄最少仍保留「插件 + 更多」兩行形態。
安裝與啓用¶
DSH 生態裏客戶端能力以插件形式掛載;社區目錄 SkillHub(yanli-nyan/dsh-sidebar-entry-manager)與第三方索引 DSH Get 均列出同一安裝方式。安裝前請自行閱讀 GitHub 倉庫 源碼與 MIT 許可證——插件與 DSH 進程同權運行,能訪問本機文件、憑據與網絡。
命令行(Web profile)
DSH Get 頁面給出的命令如下;從 GitHub 源碼安裝時,若 pnpm 攔截構建腳本,需按終端提示在對應 profile 的 pnpm-workspace.yaml 中配置 allowBuilds 後重試(社區目錄安裝說明中有說明)。
dsh plugin --profile web add github:yanli-nyan/dsh-sidebar-entry-manager
其他方式(README 原文)
- DSH 桌面端 → 左側欄「插件」→ 安裝 → 填寫
dsh-sidebar-entry-manager-1.1.0.tgz的絕對路徑(Release 或本地npm pack --pack-destination build產物)。 - 手工掛載:將 tgz 放入 profile 的
.plugin-manager/,在package.json的dependencies與dsh.profile.bundles中登記@local/dsh-sidebar-entry-manager,再在該 profile 目錄執行pnpm install並完全退出後重啓 DSH。
cordis.patch.yml 中 dsh.client.immediately: true 表示 Web 客戶端啓動即加載 client.js;改配置或升級版本後需重啓 DSH。
典型用法¶
經過上面的安裝並重啓後,可按 README 中的步驟自測:
- 點擊左側欄 「左側欄入口」 圖標,打開管理面板。
- 關閉不需要常駐側欄的入口(例如「自動化任務」);當前打開的面板行若被關閉,會立刻從主列消失。
- 需要時再點側欄底部 「更多」 → 選擇帶「已隱藏」標記的項打開;或點 「管理左側欄入口…」 回到管理面板。
- 在 DSH 設置 → 左側欄入口 中可進行相同操作;與側欄面板讀寫同一份偏好。
瀏覽器控制台調試接口(插件提供):
__dshSidebarEntryManager.get()
__dshSidebarEntryManager.set('schedules', false)
__dshSidebarEntryManager.reset()
卸載插件後側欄 UI 由宿主恢復;localStorage 中的 dsh-sidebar-entry-manager:prefs 可能仍存在,可用 localStorage.removeItem('dsh-sidebar-entry-manager:prefs') 清理。
適用場景與注意¶
適合:側欄插件較多、希望主列只留常用面板,又需要保留從「更多」進入隱藏項的能力的 DSH Web/桌面客戶端用戶。
注意:
- 插件依賴宿主側欄實現(README 引用
@deepseek-ai/dsh-client-ui-sidebar等槽位行爲);DSH 大版本升級後若宿主改動setPinned/inject契約,可能需要等待插件適配。 - 安裝等於在本機運行第三方 JavaScript;僅在你信任維護者與源碼時使用,並優先鎖定 commit(如
github:owner/repo#sha)以降低供應鏈風險。 - SkillHub 爲社區獨立目錄站點,與 DeepSeek / 幻方無官方從屬關係;索引頁信息(如星標 3、v1.1.0)以各站點與倉庫當時公示爲準。
結尾¶
dsh-sidebar-entry-manager 把「側欄面板行是否顯示在主列」做成可持久化的開關,並與宿主「更多」菜單機制對齊,適合在插件變多後整理左側欄。進一步瞭解可訪問 SkillHub 目錄頁與 GitHub 倉庫:
- https://www.skillhub.cn/plugins/yanli-nyan/dsh-sidebar-entry-manager
- https://github.com/yanli-nyan/dsh-sidebar-entry-manager