When managing multiple OpenAI-compatible model providers, adjusting the default model and filtering the model list often require multiple clicks and configuration. Maintaining session consistency in the Composer model selector and /model command is error-prone, and enforcing a specific OpenAI Responses model for web search usually requires manual configuration. sharewiner/dsh-model-management aims to eliminate these tedious, repetitive operations by centrally managing providers, models, and visibility.

This is a DSH Web profile plugin for managing OpenAI-compatible model providers, setting default models, controlling model visibility, and optionally routing web search to a selected OpenAI Responses provider. The plugin is maintained by sharewiner and is available under the MIT License.

Core Features

  • Centralized entry point: Adds a Model Management section in DSH Settings.
  • Global model overview: Lists all models currently registered in DSH, grouped by provider.
  • Routing controls: Sets the default provider, default model, and supported reasoning effort.
  • Visibility management: Hides individual models so they do not appear in the Composer model selector or /model command; or disables an entire provider to remove all models from that provider.
  • Session protection: Keeps the currently selected model visible until the user actively switches it, preventing the session from losing the current routing.
  • Web search routing: Registers model-management-openai-responses, a web search provider that uses the active default OpenAI Responses model, base URL, and credential references.

Installation and Enablement

The plugin requires a DSH Web profile environment and Node.js 22.19 or higher.

Run the following command in the terminal to install the specified version:

dsh plugin --profile web add @sharewiner/dsh-model-management@0.2.3

After installation, restart DSH Desktop or refresh the Web profile to load the plugin.

Typical Usage

  1. Open DSH Settings and select Model Management.
  2. On the native Models settings page in DSH, add OpenAI-compatible providers and their models.
  3. Select the default model from Model Management.
  4. Use Hide to remove an individual model from the Composer model selector and /model list.
  5. Use Disable Provider to remove all models from that provider from these lists.
  6. Use Show or Enable Provider to restore them.
  7. If you want web search to automatically follow the current default model, configure DSH’s web service to use that provider.

Use Cases and Notes

  • Early access status: Although npm version 0.2.3 uses stable semantic versioning, the project is still in early access.
  • Compatibility check: The plugin uses a compatibility layer to access DSH’s client modelDirectories service, because DSH has not yet exposed a model directory filtering API. After each DeepSeek Harness upgrade, it is recommended to verify that the Composer model selector and /model command function correctly.
  • Security mechanisms: The plugin reads provider credentials via DSH’s credential service or the launch environment only when making OpenAI Responses web search requests. It does not store API keys, tokens, or endpoint keys in the plugin source code or model management settings.
  • Dependency requirements: Compatible host packages (peer dependencies) must be installed.

Conclusion

The plugin provides DSH users with finer-grained model control. By centrally managing providers and default routing, it simplifies workflows in multi-model environments. If you are looking for a more efficient way to manage the DSH model ecosystem, you can visit the plugin catalog or GitHub repository to view the source code.