dsh-plugin-model-switcher:用快捷键在 DSH 里切换模型与推理等级

前言

做智能体开发时,经常需要在几个模型之间来回比较:同一个任务先用当前模型跑一遍,再换个模型对照结果;或者按任务复杂度调整推理等级。如果每次都要手动点开模型选择器、选模型、再调等级,重复几次就比较繁琐。

DSH 的理念是「一切皆插件」,这类高频小操作正适合做成插件。下面介绍的 dsh-plugin-model-switcher 就是这样一个插件:它给 DSH 的 web 客户端加了两组键盘快捷键,一组切换模型,一组切换推理等级,每次切换后有 toast 通知确认。

这是什么

dsh-plugin-model-switcher 由 Mrlilili 维护,当前版本 0.1.0,许可证为 MIT(README 与 package.json 均有标明)。它解决的问题很单一:让模型与推理等级的切换不离开键盘。

插件由 Host 与 Client 两部分组成:

  • Host(src/index.ts)负责实际的切换逻辑与持久化;
  • Client(src/client/index.ts)负责快捷键监听、toast 展示和更新模型选择器 UI。

package.json 中 client bundle 的 platform 为 web,注入的依赖有四个:@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-client-ui-conversation@deepseek-ai/dsh-client-modules;peerDependencies 为 @deepseek-ai/cordis

核心功能

两组快捷键

快捷键 作用
Ctrl+Shift+M / Cmd+Shift+M 在当前 Provider 的模型列表中循环切换
Ctrl+Shift+R / Cmd+Shift+R 循环切换推理等级:off → low → high → max → off

每次切换后,右下角会弹出 toast 通知,确认当前切换到的模型或推理等级。

切换在内部怎么完成

Host 侧(src/index.ts)做三件事:

  1. agentDefaultModel 读取当前模型选择;
  2. 通过 llm.listModels() 在当前 Provider 的模型列表中循环,或通过 llm.resolveModelInfo() 循环推理等级;
  3. agentDefaultModel.saveSelection() 持久化新选择。

Client 侧(src/client/index.ts)负责交互层:

  1. shell.overlay 槽位注册 toast 覆盖层;
  2. 在 document 的捕获阶段监听 Ctrl/Cmd+Shift+M 和 Ctrl/Cmd+Shift+R;
  3. 通过 host.call() 调用 Host 处理器,拿到结果后通过 modelDirectories.directoryFor(sessionId).select() 更新模型选择器 UI。

也就是说,快捷键切换和界面上的模型选择器共享同一份状态:用快捷键切换后,选择器 UI 会同步更新。

安装与启用

先确认本机已安装 DSH,然后执行:

dsh plugin --profile web add https://github.com/Mrlilili/dsh-plugin-model-switcher.git

注意命令里带 --profile web:该插件的 client bundle 面向 web 平台。安装完成后需要重启 DSH,插件才会生效。

典型用法

重启 DSH 后无需额外配置,直接使用快捷键:

  1. 按 Ctrl+Shift+M(macOS 上是 Cmd+Shift+M),在当前 Provider 的模型列表中切到下一个模型,右下角 toast 会提示当前选择;
  2. 按 Ctrl+Shift+R(macOS 上是 Cmd+Shift+R),推理等级按 off → low → high → max → off 的顺序循环切换,每次切换同样有 toast 确认;
  3. 切换结果由插件持久化,界面上的模型选择器同步显示最新选择。

适用场景与注意事项

适合的场景:

  • 需要在多个模型之间快速对比输出的开发者;
  • 希望按任务调整推理等级、不想每次都点开选择器的人。

安装前有几点要注意:

  • 插件以当前 dsh 进程的权限运行,安装第三方插件前建议先浏览源码(https://github.com/Mrlilili/dsh-plugin-model-switcher),确认逻辑符合预期;
  • 该插件使用 MIT 许可证,安装与使用前请自行确认许可证条款满足你的场景;
  • 安装命令使用 --profile web,如果你的使用环境不是 web 客户端,这个插件不适用。

小结

dsh-plugin-model-switcher 做的事情很聚焦:把模型与推理等级的切换绑定到两组快捷键上,配上 toast 确认与选择器同步,让高频操作留在键盘上。经过上面的步骤即可完成安装和启用。插件体量不大,Host 与 Client 的分工也清晰,适合当作「一切皆插件」的一个参考实现来读。

  • 社区插件目录页:https://www.skillhub.cn/plugins/Mrlilili/dsh-plugin-model-switcher
  • GitHub 仓库:https://github.com/Mrlilili/dsh-plugin-model-switcher

需要说明的是,skillhub.cn 是独立的社区插件目录站点,与 DeepSeek、幻方无官方从属关系。

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

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

Xiaoye