DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Model Select Search — DSH Plugin for DeepSeek Harness
← Plugins
M

@lovstudio/dsh-model-select-search

Model Select Search

Composer model seat takeover: sticky search + fuzzy matching over the shared model directory

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:lovstudio/dsh-model-select-search#2e270c21657328dfc6b2e2e72fcbb22183e1b75e
READMECompatibilityVersions

Compatibility and provenance

Model Select Search is published as @lovstudio/dsh-model-select-search and currently resolves to version 0.1.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
9/5/2026

Versions

0.1.0stable
9/5/2026

Related plugins

Loading related plugins…

Latest
0.1.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
Weekly downloads
0
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in

Related plugins

More verified plugins in models-usage.

Whale Widgetdsh-whale-widgetDeepSeek balance whale widget in the bottom-right corner of the DSH Web interface: balance/today’s usage/peak-off-peak pricing, customizable bubble click sequence (text/balance/today/peak-off-peak/image/random phrases and parallel weighted selection), per-line styles and fonts, floating quick editinUsage Stats@ychris12138/dsh-usage-statsToken usage heatmap, provider balances, and subscription quotas for the dsh web GUICodex Connectdsh-codex-connectChatGPT OAuth and Codex models for DeepSeek Harness.Ui Usage Billing@kenz1117/dsh-ui-usage-billingUsage billing dashboard for DeepSeek Harness: sidebar cost metrics plus a full dashboard modal, priced from a current multi-provider catalog with real usage aggregated from session logs.

README

@lovstudio/dsh-model-select-search

Search-enabled composer model seat for the DeepSeek Harness web GUI.

The built-in composer model seat (conversation.input.model) only lists provider-grouped models. This plugin takes over that single seat cell with a ModelSelect that adds a pinned search field and fuzzy matching while keeping the built-in package running underneath — the /model popup and the shared per-session model directory still come from @deepseek-ai/dsh-client-ui-model-selection.

What the takeover adds:

  • Sticky search — the field is pinned above the scrolling option list, so typing filters while rows scroll and the field never leaves the viewport.
  • Fuzzy matching — each whitespace-separated term matches as a plain substring, a separator-free spelling (v4pro finds deepseek-v4-pro), or an ordered subsequence within one provider/model name or id (v4p still finds deepseek-v4-pro); order is preserved, never permuted. Descriptions are intentionally not searchable (this surface never shows them), and a query with no hits shows a distinct "no matching models" message instead of the catalog-empty copy.
  • Keyboard + ARIA — entering the pane focuses the search; ArrowUp/Down enter the visible rows at the correct edge; Escape is staged (clear query → back to the Model/Effort root → close). The model list owns its own role="menu" region so the textbox never sits inside a menu.

How it takes over the seat

conversation.input.model is a single slot; occupants coexist at distinct priorities and the lowest live entry renders. The built-in registers at the default priority 0; this plugin registers the same seat at priority -100, so its ModelSelect renders while the built-in package keeps providing the modelDirectories service and the /model command. No data logic is copied: the seat's injected directory/load/select face is built over the shared ctx.modelDirectories service, so the takeover shares one catalog and one session projection with the /model popup.

Removing the plugin restores the built-in seat exactly.

Install

Prerequisites: Node.js 22.19+ or 24+, pnpm 11 (corepack enable or npm i -g pnpm) — dsh plugin forwards to pnpm inside the profile directory.

From a git checkout:

dsh plugin --profile web add github:lovstudio/dsh-model-select-search

Then restart the web profile so the new client bundle is served:

dsh --profile web --no-open

Load gate

After installing, open the web GUI, click the composer model seat (e.g. DeepSeek-V4-Flash · High), drill into the model list and confirm the search field with the placeholder Search by name or ID appears above the groups. Typing v4p should narrow to DeepSeek-V4-Pro rows while other models stay hidden — that proves the takeover bundle, not the built-in seat, is rendering.