dsh-settings-organizer:整理 DSH Web 設置側欄的一級分組插件

前言

在 DSH 這類“一切皆插件”的環境中,設置入口可能來自 DSH 本體,也可能來自不同插件。隨着設置項增多,側欄裏的導航入口也會跟着增加。

baihejiangnan/dsh-settings-organizer 是一個獨立的 DSH Web 設置導航整理插件。它只整理設置側欄的顯示結構,不安裝或修改其他插件,不改變設置頁面本身內容,也不改變插件加載順序。

這是什麼

dsh-settings-organizer 面向 DSH Web profile,在瀏覽器端運行。

它通過 DSH 的 settings.section 插槽添加管理頁面,並使用 MutationObserver 適配設置側欄的動態渲染。插件不會移動、包裹或克隆 DSH 原生導航節點。

核心功能

下面介紹當前版本提供的主要能力:

  • 提供會話、工作區、插件安全、界面擴展等默認一級分組。
  • 首次遷移或安裝時自動識別已存在的設置頁面。
  • 未識別頁面保留,不刪除、不隱藏。
  • 一級分組可新建、重命名、刪除、隱藏和調整順序。
  • 可修改二級導航的一級分組歸屬。
  • 點擊一級分組可隱藏或顯示所屬二級導航。
  • 切換頁面後,選中狀態隨 DSH 原生狀態更新。
  • 支持側欄滾動和安全模式。
  • 設置入口固定爲“導航管理”,默認位於 Agent 預設之後。
  • 在 prefers-reduced-motion 下關閉動畫。
  • 支持導航配置導入/導出和恢復默認佈局。
  • 安全模式可一鍵恢復原始設置導航。

安裝

先確認當前要使用的是 DSH Web profile,再執行下面的安裝命令:

dsh plugin --profile web add github:baihejiangnan/dsh-settings-organizer

這個命令會把插件安裝到指定的 web profile。插件以當前 dsh 進程權限運行,安裝前建議先檢查源碼與許可證。

典型用法

首次安裝

首次打開時,插件會讀取當前已渲染的設置頁面,並按內置規則歸類。用戶後續可以在頁面歸屬中繼續調整。

頁面歸屬

使用頁面歸屬,可以把已發現的設置頁面移動到任意默認分組。

這適合其他插件新增設置入口後,希望把它們納入現有一級分組的情況。

安全模式

使用“顯示原始導航”可以啓用安全模式,並恢復原始 DOM 順序。

安全模式可一鍵恢復原始設置導航,適合需要臨時停止重排時使用。

導入與導出

導入配置會覆蓋當前導航配置,建議先導出備份。

導入舊配置時,歷史嵌套分組會自動提升爲一級分組。

空分組

開啓“顯示空分組”後,可以看到空的一級分組。

本地檢查

如果需要本地開發或檢查腳本,可以先執行:

pnpm install

再執行:

node --check lib/client.js

適用場景與注意

這個插件適合希望在 DSH Web 端整理設置側欄的用戶,尤其是已經安裝了多個插件、設置入口較多、希望按一級分組管理顯示結構的場景。

需要注意以下幾點:

  • 插件只整理設置側欄,不改變設置頁面本身內容或插件加載順序。
  • 自定義分組僅支持一級;二級導航必須由 DSH 或插件實際註冊。
  • 頁面識別依賴設置入口的可見文本;其他插件修改入口文字後,可能需要手動重新歸類。
  • 配置保存在當前 DSH Web profile 中,不自動同步到其他設備或其他 profile。
  • 瀏覽器 localStorage 鍵名 dsh-settings-organizer:v2 僅用於舊版本遷移和服務暫不可用時的回退。
  • peerDependencies 包括 @deepseek-ai/dsh-host-webserver ^0.1.0-rc.6、@deepseek-ai/dsh-settings ^0.1.0-rc.6、schemastery ^3.18.1。
  • 真實 DSH Desktop 的窗口適配、截圖和交互驗收應在目標 profile 中完成。
  • 這是獨立項目,與 dsh-plugin-safety-net 無關。
  • 許可證爲 MIT。

鏈接

  • 插件目錄頁:https://www.skillhub.cn/plugins/baihejiangnan/dsh-settings-organizer
  • GitHub 倉庫:https://github.com/baihejiangnan/dsh-settings-organizer
羽毛球分组比赛记分
小程序二维码

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

小夜