前言¶
在使用 DSH (DeepSeek Harness) 進行模型調試或日常交互時,頻繁切換模型與思考強度是常見需求。現有的 UI 操作需要點擊模型選擇器,若配合外設(如遙控器或小鍵盤),操作路徑較長。下面介紹的插件旨在解決這個問題,通過自定義按鍵映射,將模型切換與強度調節動作濃縮爲一個物理按鍵的觸發。
這是什麼¶
dsh-model-switch 是一個 DSH 全局插件,由 succlz123 維護。它解決了“快速切換模型與思考強度”的痛點,允許將任意按鍵(含 spare 鍵、藍牙小鍵盤、遙控器 HID 鍵盤)映射爲特定的模型與思考強度組合。
核心功能¶
- 可視化按鍵映射:在輸入框下方的模型行左側渲染一個機械鍵帽樣式的按鈕。面板打開時,按鈕呈現“按下”狀態。
- 組合鍵管理:支持添加、更換模型、調整思考強度或刪除映射。
- 內嵌錄入流程:點擊面板內的“添加按鍵映射”即可開始。面板會顯示“正在監聽”並實時回執收到的按鍵,隨後選擇模型與強度,全程無需關閉面板。
- 數據源同步:模型列表直接來自 DSH 官方
modelDirectories服務(與 UI 模型選擇器同源,實時同步),併兼容remote.session舊接口。 - 診斷通道:內置輕量級診斷工具,按鍵沒反應時可查看宿主落盤文件
$DSH_HOME/.dms-diag.ndjson,無需打開瀏覽器 DevTools。
安裝與啓用¶
官方命令:
dsh plugin --profile web add link:<本目錄絕對路徑>
手工安裝方式(推薦):
1. 將插件目錄放入 $(DSH_HOME)/profiles/web/packages/dsh-model-switch。
2. 修改 profiles/web/package.json:
* 在 dependencies 中添加 "dsh-model-switch": "file:./packages/dsh-model-switch"。
* 在 dsh.profile.bundles 數組中添加 "dsh-model-switch"。
3. 在 profiles/web 目錄下執行 pnpm install。
4. 完全退出並重啓 DSH,刷新頁面。
注意:pnpm 對內容變化但版本號不變的
file:依賴可能跳過重鏈。若修改lib/*.js後未生效,請手動同步文件到profiles/web/node_modules/dsh-model-switch/,或 bump 版本後重新安裝。
典型用法¶
插件安裝並刷新頁面後,輸入框下方模型行左側會出現機械鍵帽按鈕。打開面板錄入一個組合鍵(建議 F13–F24 或 Ctrl/Alt 組合),將其映射到目標模型與思考強度檔位。之後在頁面直接按下外設按鍵,即可完成切換,全程無浮動彈窗干擾。
適用場景與注意¶
- 適用場景:需要頻繁在不同模型間切換,或使用藍牙小鍵盤、電視遙控器等外設輔助輸入的開發者。
- 外設要求:外設鍵盤/遙控器必須以 HID 鍵盤身份發送普通按鍵碼(F13–F24 最理想)。多媒體/消費類按鍵(音量、播放等)瀏覽器不會產生
keydown事件,無法捕獲。 - 數據持久化:當前按鍵映射僅存儲在頁面內存中,刷新頁面後需重新錄入(持久化功能在計劃中)。
- 開發注意:日常迭代只需修改
lib/client.js,修改後需同步到node_modules或重新pnpm install。
結尾¶
該插件通過輕量化的 UI 與按鍵監聽機制,降低了模型切換的操作成本。更多細節與源碼,可參考項目目錄或 GitHub 倉庫。