DSH Plugin Store
Back to home

haiyoucuv

dsh-model-provider-label

DeepSeek Harness plugin that disambiguates same-named models by showing their provider

Stars
1
Language
TypeScript
Created
Aug 14, 2026
Updated
Aug 14, 2026
Other
GitHub repo

Introduction

dsh-model-provider-label

在 DeepSeek Harness 对话框模型选择器同时显示 provider 显示名模型名, 让不同 provider 下的同名模型一眼可辨。

Show the provider display name next to the model name in the DeepSeek Harness composer model seat, so identical model names from different providers become distinguishable.

GitHub release License: MIT

中文 | English

默认模型选择器只显示模型名(如 DeepSeek V4 Flash)。当你配置多个 provider、且不同 provider 下有同名的模型时无法区分。本插件把 provider 的 displayName 一并显示:DeepSeek · DeepSeek V4 Flash

效果

默认安装本插件后
DeepSeek V4 FlashDeepSeek · DeepSeek V4 Flash
GPT-5 (provider A)ProviderA · GPT-5
GPT-5 (provider B)ProviderB · GPT-5

效果预览

下拉菜单、推理等级选择、模型目录加载、错误提示等行为与默认实现完全一致—— 本插件只是遮蔽conversation.input.model UI 槽位,用 priority 更低 的组件替换默认渲染,其余逻辑 100% 复用宿主 modelDirectories 服务。

安装

# 从 GitHub 安装(推荐)
dsh plugin --profile web add https://github.com/haiyoucuv/dsh-model-provider-label/archive/refs/tags/v0.1.0.tar.gz

# 或从本地目录安装(开发调试)
dsh plugin --profile web add link:/path/to/dsh-model-provider-label

安装后重启 dsh web 使浏览器端加载 client bundle。

提示:也可以直接用 pnpm 在 profile 目录安装:

cd ~/.dsh/profiles/web && pnpm add https://github.com/haiyoucuv/dsh-model-provider-label/archive/refs/tags/v0.1.0.tar.gz

开发

pnpm install          # 安装 esbuild / typescript 等 dev 依赖
pnpm build            # 生成 lib/client.js(ModuleLoader 格式)+ lib/index.js
  • 源码:src/client/index.tsx(apply / inject + 槽位遮蔽)、 src/client/ModelSelect.tsx(改造后的模型选择器)
  • 样式:src/client/ModelSelect.module.css
  • 构建产物 lib/ 已提交,安装无需本地构建

工作原理

DSH 的 conversation.input.model 是一个 single 类型 UI 槽位(slot), 默认由 dsh-client-ui-model-selectionpriority: 0 注册。slot 系统规定 同 priority 只能有一个注册,更低 priority 的注册会遮蔽(shadow)默认实现lowest renders)。本插件用 priority: -100 注册同名槽位,因此渲染的是 我们的组件;目录数据仍来自宿主注入的 modelDirectories service(按会话共享, 与 /model 命令同一份状态),翻译复用宿主已注册的 model locale namespace (不重复注册,避免 locale 冲突)。

自定义显示格式

编辑 src/client/ModelSelect.tsx 里的 providerLabel / modelLabel / triggerLabel 组合即可,然后 pnpm build + 重启。

License

MIT — 见 LICENSE