dsh-better-model-selector:拆分模型選擇與思考強度控件

前言

在 DSH web profile 中,原生的模型選擇器與思考強度選擇器被集成在一個二級菜單裏。這種集成方式在模型數量增多時查找不便,且調節思考強度不夠直觀。dsh-better-model-selector 插件將這兩個控件拆分爲兩個獨立的組件,並引入了更合理的交互方式。

插件簡介

該插件由 Khellendros97 維護,旨在優化 DSH web 界面的模型管理體驗。它不改變底層數據結構,而是通過覆蓋 UI slot 來調整顯示和交互邏輯。

核心功能

  1. 模型選擇器
    保持下拉選單的形式,但增加了搜索功能,方便在模型列表中快速定位。同時支持標記喜愛(收藏)功能,方便快速訪問常用模型。

  2. 思考強度選擇器
    將原有的選擇控件改爲滑動條樣式,操作更加直觀,調節範圍更清晰。

  3. 快捷鍵
    - Ctrl/Cmd + P:快速切換模型,在收藏模型列表中輪換。
    - Ctrl/Cmd + T:輪換當前模型的思考強度。

安裝與啓用

插件依賴 DSH 的 next 通道,peerDependencies 指向 @deepseek-ai/* ^0.1.0-rc.6。請確保你的 DSH 環境滿足依賴要求(Node.js ≥ 20,且 dsh web 能正常運行)。

  1. 使用官方 CLI 安裝插件:
dsh plugin --profile web add dsh-better-model-selector

該命令會自動處理依賴登記和掛載。安裝完成後,重啓 DSH 並在瀏覽器執行硬刷新(Cmd/Ctrl + Shift + R)即可生效。

機制與持久化

  • 狀態同步:插件通過覆蓋內置的 conversation.input.model slot,並讀寫會話級 ModelDirectory(由 @deepseek-ai/dsh-client-ui-model-selection 提供),因此它與 /model 命令彈窗共享同一份狀態。
  • 收藏存儲:收藏列表持久化到主機級 cookie(dms_favs,路徑 /,約 1 年有效期),僅本地保存。相比 localStorage,cookie 按主機隔離,能避免因 DSH web 每次重啓端口變化導致舊端口數據丟失的問題。首次讀取會自動遷移舊版 cookie(dmt_favs)和 localStorage(dsh-model-toolbox:favorites:v1)中的收藏。

限制與注意事項

  • 顯示條件:思考強度滑動條僅在當前模型公佈了推理強度元數據時纔會顯示。
  • 子代理會話:在已尋址的子代理(subagent)會話中,不提供模型選擇功能,控件隱藏且快捷鍵失效。
  • 快捷鍵行爲:Ctrl+P / Ctrl+T 僅當存在當前會話時接管按鍵;若當前沒有會話,則不會攔截瀏覽器的默認行爲(例如 Ctrl+T 會新建標籤頁)。

結尾

通過將模型選擇與思考強度調節解耦,並引入快捷鍵支持,該插件提升了在多模型場景下的操作效率。插件目錄與源碼地址見下方。

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

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

小夜