Models & Providers

dsh-model-provider-label

haiyoucuv/dsh-model-provider-label · ★ 0

haiyoucuv

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

Archived repository

Repository is no longer available (checked 2026-11-15). This entry is retained for tracking and cannot be installed.

License
MIT
Added
2026-08-23
Maintenance
archived
Install kind
github

No manifest check is available; listing does not imply compatibility or security review.

README

Source README · body: en · Read Chinese README

Table of contents
  1. ⚠️ Deprecated
  2. Effect
  3. Install
  4. Development
  5. How it works
  6. Customizing the display format
  7. License

⚠️ 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:

    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):

    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 License: MIT

中文 | 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

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

Preview

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:

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