前言¶
DSH 中的模型選擇器默認展開所有提供商。當可用模型很多時,這會佔用大量垂直空間。dsh-model-collapse 通過將列表摺疊成按提供商組織的組來解決此問題,配合快捷條和鍵盤操作,可以快速定位目標模型。
插件介紹¶
這是一個 DSH web 插件。它將模型選擇下拉菜單按 provider 分組摺疊,默認全部收起,點擊標題展開。頂部常駐一個快捷條,提供展開/收起/聚焦/重置/篩選功能。插件由 GoldenZqqq 維護,使用 MIT 許可證。
核心功能¶
- 分組摺疊:模型列表按 provider 分組,默認全部收起。點擊分組標題可切換展開/收起狀態,標題旁顯示模型數量角標。
- 頂部快捷條:菜單頂部常駐一個工具條,包含展開、收起、聚焦當前、重置記憶、篩選等功能。
- 鍵盤快捷鍵:
-Alt+E:一鍵展開所有分組。
-Alt+C:一鍵收起所有分組。
-Alt+F:聚焦篩選框並全選已有內容。 - 記憶功能:展開狀態基於瀏覽器
localStorage(鍵名爲dsh-model-collapse:expanded-v1)保存,下次打開菜單或重啓 DSH 後保持。 - 純前端增強:僅通過
data-*屬性和<style>規則實現 DOM 摺疊,不修改 DSH 官方包,不 fork 源碼。
安裝與啓用¶
使用官方安裝命令添加插件:
dsh plugin --profile web add GoldenZqqq/dsh-model-collapse
安裝後重啓 DSH web 並刷新頁面即可生效。
配置¶
在 cordis.patch.yml 文件中找到對應行修改 config:
- insert:
- id: model-collapse
name: dsh-model-collapse
config:
enabled: true # 總開關,false 即停用
expandSelectedGroup: true # 首次打開時是否默認展開"當前選中模型"所在分組
quickBar: true # 是否顯示頂部快捷條
accordion: false # 手風琴模式:展開某組時自動收起其他組
使用方法¶
- 展開/收起:點擊分組標題或使用快捷鍵
Alt+E/Alt+C。 - 聚焦當前:點擊快捷條上的「聚焦」或使用
Alt+F(僅展開當前選中模型所在分組)。 - 篩選模型:在快捷條篩選框輸入關鍵字。命中的分組自動展開,不命中的整組隱藏,角標顯示爲
命中/總數。 - 重置記憶:點擊快捷條上的 ↺ 圖標,或執行
localStorage.removeItem('dsh-model-collapse:expanded-v1')後刷新。
注意事項¶
- 倉庫歸檔:本倉庫已歸檔,後續更新請查看集合倉庫 GoldenZqqq/dsh-plugins。
- 技術實現:插件依賴 React 渲染的節點上的 ARIA 語義(
section[role="group"]),不修改官方包。 - 權限範圍:插件運行在當前 DSH 進程權限內,僅進行瀏覽器端 DOM 增強。
結尾¶
dsh-model-collapse 通過摺疊和分組解決了模型選擇器過長的問題,適合需要頻繁切換不同提供商模型的使用場景。更多詳情請參考 GitHub 倉庫。