Manages the default DSH model, provider and model visibility, and optional OpenAI Responses web search.
Install
# from npm (prebuilt)
dsh plugin --profile web add @sharewiner/dsh-model-management
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:sharewiner/dsh-model-management
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
A DSH Web profile plugin for managing OpenAI-compatible model providers, choosing a default model, controlling model visibility, and optionally routing web search through the selected OpenAI Responses provider.
Features
- Adds a
模型管理settings section. - Lists every model currently registered with DSH, grouped by provider.
- Sets the default provider, model, and supported reasoning effort.
- Hides individual models from the composer model picker and
/modelcommand. - Closes an entire provider in the composer model picker and
/modelcommand. - Keeps the currently selected model visible until another model is selected, preventing an active session from losing its current route.
- Registers
model-management-openai-responses, a web-search provider that uses the active default OpenAI Responses model, base URL, and credential reference.
Beta Status and Compatibility
This project remains early access even though npm 0.2.3 uses stable SemVer as required by the DSH managed market. It was tested with DeepSeek Harness 0.1.1-rc.2 package APIs and DSH Desktop Web profiles current on 2026-08-25.
Model visibility synchronization uses a contained compatibility layer around DSH's client-side modelDirectories service because DSH does not currently expose a public model-directory filtering API. The layer probes the required directory contract before installation, caches visibility settings, restores every patched method when the plugin stops or updates, and leaves the native picker unchanged if the contract is incompatible. Verify the composer model picker and /model command after every DeepSeek Harness upgrade. Report compatibility issues in this repository's issue tracker.
Requirements
- A DSH Web profile with the
settings,credentials,agentDefaultModel,llm, andwebservices. - Node.js 22.19 or newer.
- Compatible host packages matching the peer dependency versions in
package.json. - An OpenAI-compatible endpoint for any configured provider.
Install
Install the published package from the DSH plugin market, or add the exact npm version to the profile that Desktop starts:
dsh plugin --profile web add @sharewiner/dsh-model-management@0.2.3
For local development, install this checkout with pnpm add "file:/absolute/path/to/dsh-model-management" from the target profile. Ensure @sharewiner/dsh-model-management appears in that profile's dsh.profile.bundles. The package bundle patch inserts the model-management Host entry. Restart DSH Desktop after installing or updating the package.
Use
Open DSH Settings and select 模型管理.
- Add an OpenAI-compatible provider and its models in DSH's native 模型 settings page.
- Choose a default model from 模型管理.
- Use 隐藏 to remove one model from the composer model picker and
/modellist. - Use 关闭提供方 to remove all models from a provider in those model lists.
- Use 显示 or 开启提供方 to restore them.
Provider headers are expandable. Clicking the header, its empty area, or the chevron expands or collapses the provider; the enable or disable button only changes the provider state.
Web Search
When the selected default model belongs to a configured openai-responses provider, the plugin registers model-management-openai-responses. Configure DSH's web service to use that provider if you want web searches to follow the current default model automatically.
The selected endpoint must support:
openai-responses:POST {baseURL}/responsesopenai-completions: OpenAI-compatible chat completions throughpi-ai- Model discovery:
GET {baseURL}/models
Verification
cd ~/.dsh/profiles/desktop
pnpm exec node --input-type=module -e "import('@sharewiner/dsh-model-management').then(() => console.log('host entry loaded'))"
node --check node_modules/@sharewiner/dsh-model-management/lib/client.js
cd /absolute/path/to/dsh-model-management
node --check lib/index.js
node --check lib/client.js
pnpm pack --pack-destination /tmp .
Restart the DSH Web profile and confirm the 模型管理 settings section appears. Test provider visibility changes in both the composer model picker and the /model command.
Security
This plugin reads provider credentials through DSH's credential service or launch environment only when it performs an OpenAI Responses web-search request. It does not store API keys, tokens, or endpoint secrets in the plugin source or model-management settings.
Do not commit local DSH settings, credential files, or profile directories to this repository.
Links
More in this category
V1ki/dsh-plugin-subscriptions★ 442
Use ChatGPT (Codex), Claude, and Grok subscriptions as DeepSeek Harness LLM providers, with Settings login, model catalogs, usage, plus image_generate, video_generate, and x_search tools.
corrinehu/dsh-workbuddy-connect★ 382
Brings the models in the WorkBuddy desktop app straight into DeepSeek Harness — zero configuration in the DSH chat.
Mars-Sea/dsh-commandcode-provider★ 377
Unofficial Command Code LLM provider: registers a `commandcode` route with a live model catalog and reasoning-effort support.
cv-superding/dsh-deepseek-web-login★ 250
Adds a deepseek-web provider that uses chat.deepseek.com web models in DSH, with browser login capture, PoW request signing, SSE streaming, and prompting-based tool calls.
FishBottle7/opencode2dsh★ 169
Exposes OpenCode Zen free models to DeepSeek Harness, with no API key.
WSL043/dsh-codex-subscription★ 157
ChatGPT OAuth provider for Codex models with subscription web search, quota and safe reset, image tools, Fast mode, and model-aware context; no API key or Codex CLI.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.