Skip to content

Releases: 2275803244-cpu/dsh-model-switcher

v0.6.0

Choose a tag to compare

@2275803244-cpu 2275803244-cpu released this 18 Aug 09:04

v0.6.0 — 替换原生模型选择器,只显示当前服务商模型

输入框右下角的原生模型选择器被替换为增强版:默认只显示当前服务商的模型列表,点击「切换服务商 →」弹出服务商列表,两级联动。

变更

  • 替换 conversation.input.model 席位(原 ui-model-selection 的 ModelSelect)
  • 默认显示当前服务商的模型,不再显示所有服务商的所有模型
  • 点击「切换服务商 →」可换服务商,选中后模型列表立即切换到该服务商
  • 返回按钮 ← 返回 回到模型列表
  • 当前服务商/模型以 ✓ 标记

两处协同

  1. 输入框右下角模型选择器:默认显示当前服务商的模型,切换服务商含两级菜单
  2. 头部滑块按钮:完整服务商管理面板(只显示有 key 的)

v0.5.0

Choose a tag to compare

@2275803244-cpu 2275803244-cpu released this 18 Aug 08:51

v0.5.0 — 输入栏右侧模型快速切换器

在输入框右下角新增一个紧凑模型选择器:显示当前模型名,点击弹出当前服务商的所有模型,选模型即切换。

变更

  • 新增 conversation.input.right 槽位注册:输入栏右侧显示当前模型名(如 DeepSeek / deepseek-v4-pro
  • 点击弹出当前服务商的所有模型,选模型即切换(服务商不变)——专注模型快速切换
  • 服务商切换仍用头部面板(滑块按钮)

配合使用

  1. 头部滑块按钮:选服务商(深色面板,两级联动)
  2. 输入栏右侧模型选择器:在当前服务商内快速切换模型
  3. 面板只显示已配置好(有 key)的服务商;输入栏选择器只显示当前服务商的模型

v0.4.0

Choose a tag to compare

@2275803244-cpu 2275803244-cpu released this 18 Aug 07:34

v0.4.0 — 只显示配置好的服务商和模型

面板现在只列出真正配置好(有 key / 无需 key)的服务商和模型:通过 llm.providers + settings.describe + credentials.describe 检查每个路由的凭据状态,没有 key 的服务商不再出现(补 key 后自动亮起)。

变更

  • 打开面板时检查每个服务商的 key 状态(凭据库/环境变量)
  • 只有 active 且 key 已配置(或无需 key,如 Ollama)的服务商才显示
  • 全部不可用时给出一行指引:缺 key 的服务商:…

配合一键多服务商

docs/llm-pi-ai.example.yaml 写入 $DSH_HOME/settings.yaml(热重载)后,给哪个服务商补了 key,它就出现在面板;没补的不显示。

v0.3.0

Choose a tag to compare

@2275803244-cpu 2275803244-cpu released this 18 Aug 06:00

v0.3.0 — 两级联动切换:先点服务商,再选模型

面板改为两级联动:顶部一排服务商 chips(带模型数),先点服务商,下方联动显示该服务商的模型列表,点模型即切换——服务商及其 endpoint(baseURL)自动跟随。

变更

  • 服务商 chips 行:每个可用服务商一个标签(名称 + 模型数),当前服务商高亮,默认选中会话当前使用的服务商
  • 下方列表只显示选中服务商的模型:模型名 + id + 当前 ✓
  • 缺 key 的服务商仍在底部一行摘要提示,补 key 自动亮起

配合一键多服务商

docs/llm-pi-ai.example.yaml 写入 $DSH_HOME/settings.yaml(热重载)后,OpenAI / Anthropic / Gemini / Groq / xAI / OpenRouter / Mistral / Ollama 全部出现在服务商 chips 里,点一下看模型、再点模型切换。

v0.2.0

Choose a tag to compare

@2275803244-cpu 2275803244-cpu released this 18 Aug 05:47

v0.2.0 — 平铺模型列表,一键切换(服务商自动跟随)

面板从「按服务商分组」改为平铺模型列表:所有服务商的所有模型一列排开,每行带服务商标签,点模型直接切换——provider 及其 endpoint(baseURL)自动跟随,不用先选服务商

变更

  • 平铺列表:模型名 + 服务商标签 + 模型 id + 当前 ✓,一行一个模型
  • 缺 key 的服务商不再打断列表,压缩为底部一行摘要:N 个服务商暂不可用(…)——在「设置 → 模型」补 key 后自动亮起
  • 切换逻辑不变:directory.select({ provider, model }),一次提交服务商+模型

配合一键多服务商

docs/llm-pi-ai.example.yamlllm-pi-ai 段写入 $DSH_HOME/settings.yaml(热重载),OpenAI / Anthropic / Gemini / Groq / xAI / OpenRouter / Mistral / Ollama 全部进入平铺列表;有 key 的亮起,补 key 自动出现。

v0.1.0

Choose a tag to compare

@2275803244-cpu 2275803244-cpu released this 18 Aug 05:31

v0.1.0 — 一键服务商/模型切换插件

DeepSeek Harness Web GUI 客户端插件:会话标题栏一个按钮,列出所有已配置服务商和模型,点一下即切换。

功能

  • 一键切换:服务商分组下列出全部模型,点模型行即切换(provider + model 一次提交)
  • 当前状态:面板顶部显示当前服务商/模型,当前项高亮 + ✓
  • 实时目录:打开自动刷新,与 /model 命令、composer 模型席位共享同一份状态
  • 异常提示:服务商不可用、目录失败、失败列表都会显示

安装

pnpm --dir "$HOME\.dsh\profiles\web" add github:2275803244-cpu/dsh-model-switcher

cordis.patch.yml 添加 ui-model-switcher 行后重启 dsh web

技术要点

  • 槽位 conversation.session.header.actions(order=25)
  • 服务 modelDirectoriesdirectoryFor(sessionId) 拿每会话目录控制器
  • useSyncExternalStore 订阅目录 store;directory.select({provider, model}) 切换
  • /model 弹窗和 composer 模型席位同一控制器,Host 为唯一事实源
  • 纯浏览器侧,手写 ModuleLoader bundle,零构建、零依赖(仅 react)