DeepSeek Harness plugin

dsh-model-provider-label

DSH web plugin: show the provider display name next to the model name in the composer model seat, so identical model names from different providers are distinguishable. / 在对话框模型选择器同时显示 provider

Jump to install

Source facts

Repository
haiyoucuv/dsh-model-provider-label
Latest update
Aug 17, 2026
Category
Models & Providers
GitHub stars
1
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/haiyoucuv/dsh-model-provider-label
Plugin: dsh-model-provider-label
Author: haiyoucuv

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer4 files
README_EN.mdSource · read only
README language

dsh-model-provider-label

> ## ⚠️ Deprecated > > This plugin is deprecated. The "show provider name" feature has been > merged into the new plugin dsh-chat-tweaks > (a DSH UI-customization collection with a dedicated Settings page, more > switches, and ongoing updates). > > - New plugin repository: <https://github.com/haiyoucuv/dsh-chat-tweaks> > - Install the new plugin: > > ``sh > dsh plugin --profile web add https://github.com/haiyoucuv/dsh-chat-tweaks/archive/refs/tags/v0.1.0.tar.gz > ` > > - After installing the new plugin, remove this one (both shadow the same UI > slot; coexistence throws): > > `sh > dsh plugin --profile web remove dsh-model-provider-label > `` > > The content below is kept for historical reference.

> 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. > > 在 DeepSeek Harness 对话框模型选择器同时显示 provider 显示名模型名, > 让不同 provider 下的同名模型一眼可辨。

![GitHub release](https://github.com/haiyoucuv/dsh-model-provider-label/releases) ![License: MIT](LICENSE)

中文 | English

The stock model selector only shows the model name (e.g. DeepSeek V4 Flash). When you configure multiple providers that expose identically named models, you cannot tell them apart. This plugin also shows the provider's display name: DeepSeek · DeepSeek V4 Flash.

Effect

DefaultWith this plugin
DeepSeek V4 FlashDeepSeek · DeepSeek V4 Flash
GPT-5 (provider A)ProviderA · GPT-5
GPT-5 (provider B)ProviderB · GPT-5

![Preview](readme.png)

The dropdown menu, reasoning-effort selection, model catalog loading and error surfaces behave exactly like the stock implementation — this plugin only shadows the conversation.input.model UI slot with a lower-priority component and reuses the host's modelDirectories service for all data.

Install

# From GitHub (recommended)
dsh plugin --profile web add https://github.com/haiyoucuv/dsh-model-provider-label/archive/refs/tags/v0.1.0.tar.gz

# Or from a local directory (development)
dsh plugin --profile web add link:/path/to/dsh-model-provider-label

Restart dsh web after installing so the browser client loads the plugin bundle.

> Tip: you can also install it with pnpm directly in the profile directory: > > ``sh > cd ~/.dsh/profiles/web && pnpm add https://github.com/haiyoucuv/dsh-model-provider-label/archive/refs/tags/v0.1.0.tar.gz > ``

Development

pnpm install          # installs esbuild / typescript dev deps
pnpm build            # builds lib/client.js (ModuleLoader format) + lib/index.js
  • Source: src/client/index.tsx (apply / inject + slot shadowing),

src/client/ModelSelect.tsx (the modified model selector)

  • Styles: src/client/ModelSelect.module.css
  • The built lib/ output is committed, so installing does not require a

local build

How it works

DSH's conversation.input.model is a single-kind UI slot. It is registered by the stock dsh-client-ui-model-selection plugin at priority: 0. The slot system allows only one registration per priority and lets a lower priority shadow the default (lowest renders). This plugin registers the same slot at priority: -100, so our component is rendered instead. The catalog data still comes from the host-injected modelDirectories service (shared per session, same state as the /model command), and translations reuse the host's model locale namespace (not re-registered, to avoid a locale conflict).

Customizing the display format

Edit the providerLabel / modelLabel / triggerLabel composition in src/client/ModelSelect.tsx, then pnpm build and restart.

License

MIT — see [LICENSE](LICENSE)