前言¶
對需要頻繁調整插件組合的 DSH 用戶來說,手工改配置和重啓服務並不方便。plugin-switch 把“啓用 / 停用插件”做成頁面上的滑塊操作。
它給 DeepSeek Harness (DSH) 的插件清單頁加上滑塊開關:點一下即可啓用/停用任何插件,立即生效、不用重啓服務端,重啓後狀態保持。
這是什麼¶
plugin-switch 由 cynch18 維護,包名爲 dsh-profile-plugin-switch,包版本爲 0.5.1,許可證爲 MIT。
它是 DSH 的一個本地 web profile 插件,主要入口是設置裏的“插件清單”頁。
核心功能¶
- 即時啓停:通過主動重放通道生效,繞開平臺
watcher死鎖,確定性生效。 - 列表管理:支持按系統 / 第三方 / 本地分組,並提供狀態篩選、排序、搜索。
- 批量操作:支持批量啓用/停用;批量動作按單事務處理,一次備份,撤銷一步全回。
- 撤銷與備份:提供“↺ 撤銷”按鈕;每次開關前自動備份,保留最近 20 份。
- 風險提示:關鍵條目強確認、被依賴提示、停用確認警告、停用來源分層、
config預覽、失敗診斷。 - 其他能力:多標籤頁即時同步、CLI 恢復工具、雙語界面與動畫。
安裝與啓用¶
前提¶
需要以 web profile 運行 DSH,並且 Node ≥ 22。以 web profile 運行可用:
npx @deepseek-ai/dsh web
推薦安裝方式¶
使用 dsh plugin 命令安裝:
dsh plugin --profile web add github:cynch18/plugin-switch
安裝後重啓 dsh web,按 Ctrl+Shift+R 強制刷新瀏覽器,然後打開:
設置 → 插件 → 插件清單
插件右側會出現滑塊開關。
其他安裝方式¶
如果使用 PowerShell 環境,也可以使用下面的方式。三種安裝方式任選其一,不要重複安裝;同一 profile 裝兩次會產生重複條目,重啓會報錯。
直接下載 plugin-switch.zip 後運行:
powershell -ExecutionPolicy Bypass -File .\install.ps1
或通過 git clone 後運行:
git clone https://github.com/cynch18/plugin-switch.git
cd plugin-switch
powershell -ExecutionPolicy Bypass -File .\scripts\install.ps1
方式二和方式三的 PowerShell 腳本支持以下參數:
-KeepOriginal:保留原只讀清單,僅啓用 HTTP API。-Dev:建立junction指向源碼,改代碼直接生效。
典型用法¶
臨時啓用或停用插件¶
進入:
設置 → 插件 → 插件清單
找到目標插件,點擊右側滑塊即可啓用或停用。狀態立即生效,不需要重啓 dsh web。
批量調整¶
可以批量啓用或停用多個插件。批量動作使用單事務:一次備份,撤銷時一步全回。
誤操作後撤銷¶
如果點錯,可以使用頁面上的“↺ 撤銷”按鈕,恢復到上一次開關前的配置。每次開關前都會自動備份,保留最近 20 份。
開關頁消失後的恢復¶
如果關閉“插件開關”自身,開關頁會消失。可以打開:
%USERPROFILE%\.dsh\profiles\web\cordis.patch.yml
找到 plugin-switch 條目,把 disabled: true 改回 false,保存後恢復開關頁。
用 CLI 恢復¶
如果 GUI 無法打開,可以運行 CLI 恢復工具:
node scripts/dsh-plugin-fix.mjs list
node scripts/dsh-plugin-fix.mjs enable <id>
node scripts/dsh-plugin-fix.mjs disable <id>
node scripts/dsh-plugin-fix.mjs undo
node scripts/dsh-plugin-fix.mjs backups
恢復原只讀清單¶
如果希望回到 DSH 原來的只讀插件清單,把 %USERPROFILE%\.dsh\profiles\web\cordis.patch.yml 中 ui-settings-plugin-inventory、plugin-inventory 的 disabled: true 改回 false,同時刪除 plugin-switch 條目。
徹底卸載¶
刪除插件目錄:
%USERPROFILE%\.dsh\profiles\web\node_modules\dsh-profile-plugin-switch
並移除:
%USERPROFILE%\.dsh\profiles\web\cordis.patch.yml
中的相關條目。
適用場景與注意¶
適合在本機使用 DSH web profile、需要頻繁調整插件組合、希望減少重啓和手工改配置的人。
使用前注意:
plugin-switch會作爲本地webprofile 插件運行。/plugin-switch是無鑑權的本地 HTTP 路由,與 DSH 自帶/plugins/...同級信任,僅限個人本機使用。- 插件會以當前
dsh進程權限運行,安裝前建議檢查源碼與MIT許可證。 - 三種安裝方式不要重複執行。
- 如果改包內
index.js,需要重啓dsh;如果只改client.js,刷新頁面即可。 - 批量操作和關鍵條目會有確認或風險提示,啓用/停用前可先看
config預覽。
獲取¶
GitHub 倉庫:https://github.com/cynch18/plugin-switch
目錄頁:請以你使用的 DSH 社區目錄檢索結果爲準。DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係。