Introduction¶
The llm-pi-ai provider in DeepSeek Harness (DSH) allows users to manually add custom providers, but by default, these custom channels lack some capabilities available only in official channels, such as User-Agent control, reasoning-level switching, and image input declaration.
dsh-provider-pro is a plugin maintained by Mortal520 that adds the above capabilities to these manually added providers. By using automatic completion at the data layer and configuration overrides at runtime, it delivers a zero per-model configuration, out-of-the-box experience.
Core Features¶
This plugin mainly provides the following four capabilities:
- Custom User-Agent
Set the request UA for each custom provider. This overrides the attribution header built into DSH, which can be useful for providers with UA-based rate limiting or policies that block non-official client access. - Reasoning-level switching
Provides the same dropdown menu as official channels in the chat model selector (off/low/medium/high/max). The data layer automatically fills in the five-level dictionary for custom models missingreasoningEfforts, so no manual configuration is needed. - Image input declaration
Provides an “Image input supported” checkbox on the model card. When checked, the plugin writesinput: [text, image]into the model configuration, allowing DSH to attach images to that model. - One-click full probing and live testing
Provides a built-in probing function that performs three practical tests for each model:- Context window: Retrieve and backfill
contextWindow/maxTokens. - Role compatibility: Test
developerrole compatibility; if it is rejected andsystemis available, repair it automatically. - Image input and latency: Send a real streaming request to verify image acceptance and first-token latency.
- Context window: Retrieve and backfill
Installation and Enablement¶
The plugin requires a DSH Desktop 2.0.15+ environment to run.
Install it with the following command (specify --profile desktop):
dsh plugin --profile desktop add github:Mortal520/dsh-provider-pro
If the command above fails due to build permission issues, you can also directly use the already committed build artifacts in the repository:
# 本地仓库方式
dsh plugin --profile desktop add ./dsh-provider-pro
# tarball 方式(需先 pnpm pack)
dsh plugin --profile desktop add ./dsh-provider-pro-0.6.1.tgz
After installation, you must restart the DSH Desktop application for the plugin to take effect.
Usage¶
After installation, go to the DSH Settings page and find the Model Enhancement section (usually below Models).
- Enable the master switch:
Find the “Enable reasoning-level switching for all custom models” switch and turn it on. If it is turned off, the automatically completed levels will be removed. - Configure User-Agent:
Fill in the User-Agent for each provider and save. Saving an empty value clears the override. - Declare image input:
Check the “Image input supported” checkbox on the model card. - Run a test:
Click the “Probe” button next to the model to run a full live test.
Notes¶
- Environment requirements: You must use DSH Desktop 2.0.15+ (corresponding to the dsh-* 0.1.7-rc.2 version). The legacy settings model (settings.yaml has been retired) cannot be used.
- UI language limitations: The level names inside the chat model selector (such as Off / Minimal / Max) are hardcoded English in
dsh-llm-pi-aiand cannot be modified by third-party plugins. Chinese UI support is limited to this plugin’s settings page. - Auto-completion scope: The reasoning-level auto-completer only applies to entries declaring
models[], and does not touchmodelOverridesor official channels.
Summary¶
dsh-provider-pro delivers advanced configuration capabilities from official channels—such as User-Agent, reasoning levels, and image input—to custom providers through a plugin-based approach, solving the complexity of manual configuration. It is suitable for users who need to integrate custom APIs in DSH while maintaining the same interaction experience as official channels.