前言¶
在使用 DeepSeek Harness (DSH) 进行开发或调试时,如果配置了多个模型提供者(Provider),Composer 界面中的模型选择器列表会变得很长,查找特定模型需要频繁滚动。
dsh-collapsible-models 是一个 DSH 客户端插件,它通过修改模型选择器的交互方式,让这些长列表变得易于管理。
插件介绍¶
这是一个 DSH 客户端插件,由开发者 ZhenXifu 维护。
它的核心作用是:使 Composer 模型选择器中的模型提供者分组支持折叠与展开。
核心机制¶
插件通过注册一个优先级为 -1 的影子条目来接管模型席位,从而替换默认的显示逻辑,而不触碰底层数据层(使用已发货的 modelDirectories 服务)。如果宿主环境中没有已发货的模型选择器插件,该插件会加载但不会注册任何内容。
安装与启用¶
安装命令:
dsh plugin add dsh-collapsible-models
移除命令:
dsh plugin remove dsh-collapsible-models
安装后需重启 Harness,新的席位会在下一次客户端生成时生效。
使用与行为¶
- 操作方式:在模型下拉菜单中点击任意提供者行,即可折叠或展开该组下的模型列表。提供者名称旁的三角形指示器会旋转以显示当前状态。
- 键盘导航:列表的头部是真正的
<button>元素,支持键盘导航和焦点切换。 - 无障碍与语言:支持
aria-expanded状态,并根据当前语言环境(zh/en)调整标签。 - 状态持久化:所有提供者组初始状态为展开(匹配默认 UI)。折叠状态仅在当前下拉框打开的会话中有效,插件有意不持久化该状态。
技术细节¶
该插件使用 lazy-CJS 客户端包协议编写,无构建步骤。它依赖以下 DSH 客户端模块:
@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-model-selection@deepseek-ai/dsh-client-ui-primitives
总结¶
该插件适合在需要管理大量模型提供者配置时使用,通过折叠功能提供更聚焦的模型选择体验。代码开源,许可证为 MIT。
- 目录:https://www.skillhub.cn/plugins/ZhenXifu/dsh-collapsible-models
- GitHub:https://github.com/ZhenXifu/dsh-collapsible-models