Introduction

DeepSeek Harness (DSH) developers who use models deployed with Databricks AI Gateway need a non-invasive integration approach. Existing integration solutions often require modifying Harness source code or node_modules, which undermines version control and upgrade capabilities.

The dsh-llm-databricks plugin introduced below provides a standalone integration solution by using the public interfaces of DeepSeek Harness. It allows developers to directly call conversational models provided through Databricks AI Gateway inside DSH.

Plugin Positioning

This is a community-maintained DeepSeek Harness plugin delivered by zhuchengde0214-ctrl.

Its core value lies in:
* Non-invasive integration: Does not modify Harness core code or node_modules.
* General protocol support: Compatible with multiple Databricks Gateway routing protocols.
* Independent installation: Installed out-of-tree without affecting main system stability.

Installation

Installing this plugin requires meeting the prerequisite environment requirements (see below). Then run the following command:

dsh plugin --profile web add dsh-llm-databricks

Configuration and Usage

After the plugin is installed, it adds an llm-databricks configuration entry. You need to add this configuration section to the user settings of the corresponding Profile (for example, web).

Below is a configuration example showing how to configure providers for different protocols:

llm-databricks:
  providers:
    databricks-main:
      displayName: Databricks Main
      workspaceUrl: https://dbc-example.cloud.databricks.com
      protocol: mlflow-chat
      credentialRef: DATABRICKS_TOKEN
      models:
        - id: example-chat-endpoint
          name: Example Chat Model
          contextWindow: 128000
          maxTokens: 8192
          input: [text]
        - id: example-reasoning-endpoint
          name: Example Reasoning Model
          contextWindow: 200000
          maxTokens: 16384
          reasoningEfforts:
            off: null
            low: low
            high: high

In the configuration:
* workspaceUrl must be a valid HTTPS address.
* id corresponds to the identifier of the model service endpoint.
* input defaults to [text]. If the endpoint supports images, explicitly declare [text, image].

Technical Details and Considerations

Before use, confirm the following environment and security requirements:

Runtime Environment
* Node.js: The version must satisfy ^22.19.0 or >=24.
* DeepSeek Harness: An interface compatible with 0.1.0-rc.7 is required.

Security and Networking
* HTTPS enforcement: Communication must use HTTPS. User information, query strings, and fragments in workspaceUrl are rejected.
* Domain restrictions: Bearer credentials are sent by default only to the following subdomains: .cloud.databricks.com, .azuredatabricks.net, .gcp.databricks.com, or the legacy .databricks.net. This is based on label-boundary security matching.
* Port restrictions: Official hosts must use port 443.
* Custom DNS: If using private DNS, set allowCustomHost: true.
* Non-standard ports: If using a port other than 443, set allowNonStandardPort: true.

Protocol Features
* Supports the four protocols mlflow-chat, mlflow-responses, anthropic-messages, and openai-responses.
* All protocols support streaming and tool calling.
* Native Anthropic requests: Bearer authentication is used, and the x-api-key header is automatically removed.
* Retry mechanism: The plugin disables SDK retries; the Harness Provider retry policy takes over.

Conclusion

This plugin provides DSH developers with a clear and standard path to integrate Databricks AI Gateway. By following the configuration steps and security guidelines above, you can use it as a general-purpose LLM Provider without modifying Harness core code.