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:

  1. 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.
  2. 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 missing reasoningEfforts, so no manual configuration is needed.
  3. Image input declaration
    Provides an “Image input supported” checkbox on the model card. When checked, the plugin writes input: [text, image] into the model configuration, allowing DSH to attach images to that model.
  4. 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 developer role compatibility; if it is rejected and system is available, repair it automatically.
    • Image input and latency: Send a real streaming request to verify image acceptance and first-token latency.

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

  1. 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.
  2. Configure User-Agent:
    Fill in the User-Agent for each provider and save. Saving an empty value clears the override.
  3. Declare image input:
    Check the “Image input supported” checkbox on the model card.
  4. 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-ai and 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 touch modelOverrides or 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.