dsh-plugin-model-switcher:用快捷鍵在 DSH 裏切換模型與推理等級

前言

做智能體開發時,經常需要在幾個模型之間來回比較:同一個任務先用當前模型跑一遍,再換個模型對照結果;或者按任務複雜度調整推理等級。如果每次都要手動點開模型選擇器、選模型、再調等級,重複幾次就比較繁瑣。

DSH 的理念是「一切皆插件」,這類高頻小操作正適合做成插件。下面介紹的 dsh-plugin-model-switcher 就是這樣一個插件:它給 DSH 的 web 客戶端加了兩組鍵盤快捷鍵,一組切換模型,一組切換推理等級,每次切換後有 toast 通知確認。

這是什麼

dsh-plugin-model-switcher 由 Mrlilili 維護,當前版本 0.1.0,許可證爲 MIT(README 與 package.json 均有標明)。它解決的問題很單一:讓模型與推理等級的切換不離開鍵盤。

插件由 Host 與 Client 兩部分組成:

  • Host(src/index.ts)負責實際的切換邏輯與持久化;
  • Client(src/client/index.ts)負責快捷鍵監聽、toast 展示和更新模型選擇器 UI。

package.json 中 client bundle 的 platform 爲 web,注入的依賴有四個:@deepseek-ai/dsh-client-runtime、@deepseek-ai/dsh-client-ui-slots、@deepseek-ai/dsh-client-ui-conversation、@deepseek-ai/dsh-client-modules;peerDependencies 爲 @deepseek-ai/cordis。

核心功能

兩組快捷鍵

快捷鍵 作用
Ctrl+Shift+M / Cmd+Shift+M 在當前 Provider 的模型列表中循環切換
Ctrl+Shift+R / Cmd+Shift+R 循環切換推理等級:off → low → high → max → off

每次切換後,右下角會彈出 toast 通知,確認當前切換到的模型或推理等級。

切換在內部怎麼完成

Host 側(src/index.ts)做三件事:

  1. 從 agentDefaultModel 讀取當前模型選擇;
  2. 通過 llm.listModels() 在當前 Provider 的模型列表中循環,或通過 llm.resolveModelInfo() 循環推理等級;
  3. 用 agentDefaultModel.saveSelection() 持久化新選擇。

Client 側(src/client/index.ts)負責交互層:

  1. 在 shell.overlay 槽位註冊 toast 覆蓋層;
  2. 在 document 的捕獲階段監聽 Ctrl/Cmd+Shift+M 和 Ctrl/Cmd+Shift+R;
  3. 通過 host.call() 調用 Host 處理器,拿到結果後通過 modelDirectories.directoryFor(sessionId).select() 更新模型選擇器 UI。

也就是說,快捷鍵切換和界面上的模型選擇器共享同一份狀態:用快捷鍵切換後,選擇器 UI 會同步更新。

安裝與啓用

先確認本機已安裝 DSH,然後執行:

dsh plugin --profile web add https://github.com/Mrlilili/dsh-plugin-model-switcher.git

注意命令裏帶 --profile web:該插件的 client bundle 面向 web 平臺。安裝完成後需要重啓 DSH,插件纔會生效。

典型用法

重啓 DSH 後無需額外配置,直接使用快捷鍵:

  1. 按 Ctrl+Shift+M(macOS 上是 Cmd+Shift+M),在當前 Provider 的模型列表中切到下一個模型,右下角 toast 會提示當前選擇;
  2. 按 Ctrl+Shift+R(macOS 上是 Cmd+Shift+R),推理等級按 off → low → high → max → off 的順序循環切換,每次切換同樣有 toast 確認;
  3. 切換結果由插件持久化,界面上的模型選擇器同步顯示最新選擇。

適用場景與注意事項

適合的場景:

  • 需要在多個模型之間快速對比輸出的開發者;
  • 希望按任務調整推理等級、不想每次都點開選擇器的人。

安裝前有幾點要注意:

  • 插件以當前 dsh 進程的權限運行,安裝第三方插件前建議先瀏覽源碼(https://github.com/Mrlilili/dsh-plugin-model-switcher),確認邏輯符合預期;
  • 該插件使用 MIT 許可證,安裝與使用前請自行確認許可證條款滿足你的場景;
  • 安裝命令使用 --profile web,如果你的使用環境不是 web 客戶端,這個插件不適用。

小結

dsh-plugin-model-switcher 做的事情很聚焦:把模型與推理等級的切換綁定到兩組快捷鍵上,配上 toast 確認與選擇器同步,讓高頻操作留在鍵盤上。經過上面的步驟即可完成安裝和啓用。插件體量不大,Host 與 Client 的分工也清晰,適合當作「一切皆插件」的一個參考實現來讀。

  • 社區插件目錄頁:https://www.skillhub.cn/plugins/Mrlilili/dsh-plugin-model-switcher
  • GitHub 倉庫:https://github.com/Mrlilili/dsh-plugin-model-switcher

需要說明的是,skillhub.cn 是獨立的社區插件目錄站點,與 DeepSeek、幻方無官方從屬關係。

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

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

小夜