Back to directory

dsh-claude-provider

Curated pickMaintenance: Active

mofeng2223/dsh-claude-provider

Custom Claude provider support for DeepSeek Harness

Install

dsh has no central install command — add this plugin’s entry (documented in its README below) to your profile or patch config, then restart.

How installs work

19

stars

1

forks

JavaScript

Language

MIT

License

2026-08-14

Created

2026-08-20

Last push

README

DSH Claude Provider

English | 简体中文

DeepSeek Harness's general-purpose reasoning controls did not fully match the request parameters required by newer Claude models. As a result, selecting a reasoning level could either produce an HTTP 400 error or be silently mapped by the adapter to a different effective level—for example, Max in the interface could actually be sent as High. @mofeng2223/dsh-claude-provider added an explicit Claude provider type and sent the correct reasoning parameters for each Claude model.

DeepSeek Harness 0.1.0-rc.8 now supports reasoning-effort parameters for Claude models, but they still need to be configured manually in settings.yaml. Therefore, this plugin no longer intercepts or rewrites model requests at runtime. Instead, it writes the corresponding native settings to settings.yaml when a Claude provider is saved through the front end.

The plugin retains its dedicated Claude provider configuration page, so users do not need to edit settings.yaml manually. Anthropic-native model discovery, automatic defaults for common Claude models, and other features not yet available in DeepSeek Harness are also retained.

What this plugin does

  1. Adds a dedicated Claude provider type

    The Models settings page gains a separate Claude Provider form. You can create multiple Provider IDs under this type without mixing them with generic custom providers.

Add Claude Provider entry in DeepSeek Harness

Selecting Add Claude Provider opens the dedicated Anthropic Messages form:

Claude Provider form in DeepSeek Harness

  1. Adds model-specific reasoning modes

    Each model can use one of three configurable mode sets:

    • Five levels: Low, Medium, High, XHigh, and Max
    • Four levels: Low, Medium, High, and Max
    • Toggle: On or Off

    New models default to five levels, and Claude providers default to High.

    For adaptive thinking models, the plugin converted the selected level into Claude's thinking.type: adaptive and output_config.effort request format, preventing adapter rejections or silent downgrades.

    For adaptive thinking models, the plugin writes the selected level to DSH's native configuration when saved.

Claude model capacity defaults and reasoning modes

  1. Adds native Anthropic model discovery

    DeepSeek Harness's generic custom provider cannot list models for the anthropic-messages protocol. This plugin adds model discovery for Claude providers through the provider's native Anthropic-compatible GET /v1/models endpoint, including cursor pagination.

  2. Fills known Claude model defaults after discovery

    When a discovered model matches a recorded Claude model ID, the plugin automatically fills its context window, maximum output length, and reasoning-mode set. Models entered manually remain fully editable and are not overwritten by this lookup.

  3. Leaves every other provider unchanged

    Discovery, defaults, and reasoning controls are limited to Provider IDs explicitly created as Claude Providers. DeepSeek Harness's built-in providers and ordinary custom providers keep their original behavior, even when they use anthropic-messages or expose a claude-* model ID.

Install

Published package

Install the Web profile for the browser interface:

npx @deepseek-ai/dsh plugin --profile web add @mofeng2223/dsh-claude-provider

Install the Headless profile for command-line runs without the Web interface:

npx @deepseek-ai/dsh plugin --profile headless add @mofeng2223/dsh-claude-provider

Restart the corresponding DeepSeek Harness process after installation.

From source

Build and package the repository first:

git clone https://github.com/MoFeng2223/dsh-claude-provider.git
cd dsh-claude-provider
npm install
npm run build
mkdir -p dist
npm pack --pack-destination dist

Install the generated package into the Web profile:

npx @deepseek-ai/dsh plugin --profile web add ./dist/mofeng2223-dsh-claude-provider-*.tgz

Or install it into the Headless profile:

npx @deepseek-ai/dsh plugin --profile headless add ./dist/mofeng2223-dsh-claude-provider-*.tgz

Uninstall

Run the command for each profile where the plugin was installed:

npx @deepseek-ai/dsh plugin --profile web remove @mofeng2223/dsh-claude-provider
npx @deepseek-ai/dsh plugin --profile headless remove @mofeng2223/dsh-claude-provider

Uninstalling the plugin does not delete ~/.dsh/settings.yaml or stored credentials. Existing Claude providers remain ordinary custom anthropic-messages routes. Their reasoningEfforts, default reasoning, and compat.forceAdaptiveThinking fields are native RC8 settings, so adaptive thinking and the front-end reasoning-effort selector continue to work. Only the dedicated Claude add/edit UI, model discovery, and recorded defaults disappear.

License

MIT

DSH Plugins is an independent community directory of DeepSeek Harness plugins. Not affiliated with or endorsed by DeepSeek. Third-party plugins are not security-audited — review the source before installing.

New DeepSeek Harness plugins, weekly. No spam.