Preface

DeepSeek Harness (DSH) extends capabilities through plugins, with model configurations typically written in settings.yaml or managed via llm-pi-ai related settings. When you need to connect multiple OpenAI-compatible or Anthropic protocol endpoints, set context windows, reasoning capabilities, and retry strategies individually for each model, hand-writing YAML becomes error-prone and inefficient for quick iteration within a running Harness.

This article introduces the community plugin marvekg/deepseek-harness-model-config (maintained by MarvekG). It adds an “Advanced Model Configuration” page to the Harness Web UI, allowing you to create custom model endpoints via a graphical interface and edit capability parameters for each model.

What This Is

This plugin is designed for users who have dsh installed and running. It provides web-based management for model endpoints and per-model parameters, while still leveraging Harness’s underlying llm-pi-ai configuration flow. The plugin has approximately 30 stars on GitHub (as of 2026-08-26) and is licensed under MIT; its community directory page can be found at SkillHub. SkillHub is an independent community site with no official affiliation to DeepSeek or High-Flyer.

Core Features

Endpoint Management

  • Add custom endpoints: name, URL, API key, and protocol.
  • Supports configuring custom request headers at the provider level, which are applied to model requests; “Get Available Models” still uses the API key.
  • Protocol support includes openai-completions, openai-responses, and anthropic-messages.
  • Fetch candidate models via a unified GET /models process, supporting search by model ID or display name, as well as select all, invert selection, and deselect all.
  • Allows manual model ID input without fetching; duplicate IDs will automatically select the existing model.
  • New endpoints share the editor with saved endpoints; saved endpoints can re-fetch models, newly added models are unchecked by default, and existing selections are preserved after refresh.

Endpoint Advanced Parameters

Endpoint advanced parameters include default capacity, input modality, reasoning compatibility, caching, transport, timeout, and retry strategies. Defaults are generally sufficient. For full details, refer to the repository documentation llm-pi-ai Parameter Reference.

Model Parameters and models.dev Integration

Completes missing context windows, maximum output, input modality, and reasoning capabilities from models.dev; it prioritizes selecting official providers by display name (falling back to model ID), selects a default provider if none is found, and allows switching the complete provider record before saving. It preserves the original case of display names returned by the endpoint or entered by users; editing a display name will re-match the provider.

Before saving, you can edit each model’s capacity, text/image input, and reasoningEfforts, and preview the configuration without keys. Model parameters are usually auto-filled, provided that https://models.dev is accessible.

Security and Internationalization

API keys are only written via the Harness credential store and do not enter settings.yaml or configuration previews. All interface text supports Chinese and English, following the Harness language setting.

Installation and Enabling

Requires dsh to be installed and running. Installs from GitHub to the Web profile by default:

dsh plugin --profile web add github:MarvekG/deepseek-harness-model-config
dsh web

Open “Settings → Advanced Model Configuration” in the Web UI to add endpoints or edit existing llm-pi-ai model configurations.

To pin a version, append the commit SHA to the repository URL:

dsh plugin --profile web add github:MarvekG/deepseek-harness-model-config#<sha>

It’s recommended to review the repository source code and MIT license before installation. The plugin runs with the current dsh process privileges; installation grants it access to the Harness configuration and credential store.

Typical Usage

Adding an Endpoint and Selecting Models

  1. After launching the Web UI, navigate to “Settings → Advanced Model Configuration”.
  2. Fill in the endpoint name, BASE_URL, API-KEY, and select the protocol.
  3. Click to fetch models, then check the desired model IDs in the list.
  4. Review endpoint advanced parameters (usually keep defaults) and model parameters (pay special attention to context size and maximum output length).
  5. Confirm the configuration preview is correct, then save.

You can also skip fetching and manually input model IDs to add them; if the ID already exists, the corresponding entry is automatically selected.

Editing an Existing Endpoint

Saved endpoints can be modified in the same editor. To update the model list, perform a re-fetch on the endpoint; after refresh, newly added items are unchecked by default, while existing selections are preserved.

Local Debugging

After cloning the repository, install it as a local link: dependency from the repository root:

dsh plugin --profile web add .
dsh web

Updating and Uninstalling

Updates follow the “uninstall the old version, then install the new version” approach:

dsh plugin --profile web remove dsh-models-config-plugin
dsh plugin --profile web add github:MarvekG/deepseek-harness-model-config
dsh web

For local debugging, replace the second command with dsh plugin --profile web add ..

To uninstall:

dsh plugin --profile web remove dsh-models-config-plugin

Note: The plugin ID used in the uninstall command is dsh-models-config-plugin (as per the name field in package.json), which differs from the GitHub repository name.

Use Cases and Considerations

Suitable for scenarios requiring centralized management of multiple LLM endpoints in the Harness Web UI and per-model adjustments of capacity and reasoning parameters, such as connecting to a self-built OpenAI-compatible gateway, Anthropic proxy, or using multiple model providers within the same Harness instance.

Before use, please confirm:

  • dsh web is installed and starts normally.
  • Endpoint URLs and protocol selections match the upstream service.
  • If relying on models.dev for auto-completion of parameters, the runtime environment must have access to https://models.dev.
  • Custom headers only affect model inference requests, not the authentication method used when fetching the model list.

Links

Following these steps, you can complete endpoint creation, model selection, and per-model parameter adjustments within the Harness Web UI, without repeatedly hand-writing settings.yaml.