dsh-ui-model-selection-collapsible:爲 DSH 模型選擇器添加可訪問的供應商摺疊分組

前言

如果你希望 DSH 模型選擇器按模型供應商獨立展開或摺疊,同時保留官方數據、選擇、配置和調用邏輯,可以關注這個社區插件。下面介紹 ZoeHao2026/dsh-ui-model-selection-collapsible 的定位、功能、安裝方式、使用方法和注意事項。

這是什麼

ZoeHao2026/dsh-ui-model-selection-collapsible 是由 ZoeHao2026 維護的獨立社區插件,並非 DeepSeek 官方項目。

它爲 DeepSeek Harness(DSH)模型選擇器添加按供應商獨立摺疊的分組界面,並保留官方數據、選擇、配置和調用邏輯。

核心功能

  • 每個模型供應商可以獨立展開或摺疊,並顯示模型數量。
  • 可在 DSH 設置中選擇“當前供應商”“全部展開”“全部摺疊”或“單組展開”。
  • 可切換舒適/緊湊列表密度,以及跟隨系統/關閉摺疊動畫。
  • 展開、收起、箭頭和透明度使用統一的 160 ms 對稱動畫,並支持 prefers-reduced-motion。
  • 提供 menuitem、menuitemradio、aria-expanded、aria-controls、aria-checked 和可見項鍵盤導航。
  • 模型觸發器支持上下方向鍵直接打開菜單,並聚焦首項或末項。
  • 直接複用官方 modelDirectories 服務、model 本地化命名空間和選擇數據結構。
  • 自定義席位使用優先級 -1;官方優先級 0 的模型選擇器保持安裝並作爲運行時後備。
  • 不新增命令、Host 配置 schema 或 RPC,也不重複註冊官方 model 本地化命名空間。
  • 通過官方 settings.section 擴展點添加自己的設置頁,只替換 conversation.input.model 的可視席位。

安裝與啓用

在 PowerShell 中運行:

$dshBin = Join-Path $env:USERPROFILE '.dsh\profiles\node_modules\@deepseek-ai\dsh\lib\bin.js'
node $dshBin plugin --profile web add 'https://github.com/ZoeHao2026/dsh-ui-model-selection-collapsible.git'

安裝完成後重啓 DSH,並在瀏覽器中執行一次硬刷新。

典型用法

修改供應商分組

打開 DSH 的“設置”,選擇“模型選擇器”,可以修改:

  • 供應商分組的初始展開策略:當前供應商、全部展開、全部摺疊、單組展開。
  • 模型列表密度:舒適或緊湊。
  • 摺疊動畫:跟隨系統或關閉。

偏好保存在當前瀏覽器與 DSH Web 地址的 localStorage 中,會即時生效並在刷新後保留;它們不會寫入 settings.yaml、修改模型配置或改變調用數據。

瀏覽器阻止本地存儲時,設置頁會明確提示,更改僅在當前頁面生命週期內有效。

卸載

在 PowerShell 中運行:

$dshBin = Join-Path $env:USERPROFILE '.dsh\profiles\node_modules\@deepseek-ai\dsh\lib\bin.js'
node $dshBin plugin --profile web remove '@local/dsh-ui-model-selection-collapsible'

卸載後重啓 DSH。官方模型選擇器會繼續提供默認席位。

本地開發

git clone https://github.com/ZoeHao2026/dsh-ui-model-selection-collapsible.git
Set-Location dsh-ui-model-selection-collapsible
pnpm install --frozen-lockfile
pnpm run verify

$dshBin = Join-Path $env:USERPROFILE '.dsh\profiles\node_modules\@deepseek-ai\dsh\lib\bin.js'
$sourceRoot = (Get-Location).Path
node $dshBin plugin --profile web add "link:$sourceRoot"

邊界與兼容性

  • 插件只替換 conversation.input.model 的可視席位,並通過官方 settings.section 擴展點添加自己的設置頁。
  • 不新增命令、Host 配置 schema 或 RPC。
  • 不修改 DSH 官方插件或模型選擇 RPC,也不重複註冊 model locale。
  • 直接複用官方 modelDirectories 服務、model 本地化命名空間和選擇數據結構。
  • 自定義席位使用優先級 -1;官方優先級 0 的模型選擇器保持安裝並作爲運行時後備。
  • 當 modelDirectories 服務延遲出現、卸載或不兼容時,自定義席位不會掛載,由官方席位接管。
  • 當前經過完整驗證的基線是 DSH 0.1.1-rc.2、Web 平臺和 Node.js 22 或更高版本。
  • DSH 仍處於開發預覽階段;升級 DSH 後,需要先重新運行類型、bundle 和瀏覽器生命週期測試。

適用場景與注意

  • 適合在 DSH Web 平臺中使用,並希望模型選擇器按供應商摺疊、支持鍵盤導航和 prefers-reduced-motion 的場景。
  • 插件以當前 dsh 進程權限運行。安裝前應檢查源碼、依賴、THIRD_PARTY_NOTICES.md、LICENSES 和許可證。
  • 插件代碼採用 MIT License;bundle 中包含 clsx,完整歸屬與第三方許可證見 THIRD_PARTY_NOTICES.md 和 LICENSES。
  • package.json 聲明版本 0.2.0,且 private 爲 true。
  • 設置偏好保存在瀏覽器本地,不會寫入 settings.yaml,也不會修改模型配置或調用數據。

鏈接

  • 插件目錄頁:https://www.skillhub.cn/plugins/ZoeHao2026/dsh-ui-model-selection-collapsible
  • GitHub 倉庫:https://github.com/ZoeHao2026/dsh-ui-model-selection-collapsible
羽毛球分组比赛记分
小程序二维码

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

小夜