SupaNexus

DeepSeek Harness — Markdown source

Raw Markdown for copying or feeding to AI agents.

> **AI Agents**: Index `/api/llms.txt` | Full EN `/api/llms-full-en.txt` | Full ZH `/api/llms-full-zh.txt` | OpenAPI `/api/openapi.yaml`
> Base URL: `<BASE_URL>/v1`

# DeepSeek Harness

Add **SupaNexus as a custom provider** in [DeepSeek Harness](https://deepseek.com/harness/en/). The bundled DeepSeek card talks to DeepSeek’s own API; add a custom provider to use the endpoints on this page. The same key can call any model in the [Models](./models.md) catalog, not only DeepSeek.

See [DeepSeek](/deepseek) for DeepSeek models and pricing.

> Fill `<BASE_URL>` from [Endpoints](./endpoints.md). Official Harness: [deepseek.com/harness](https://deepseek.com/harness/en/) · [GitHub](https://github.com/deepseek-ai/deepseek-harness).

## How to use DeepSeek Harness with a custom API

1. Install DeepSeek Harness from the official developer preview. Pin a version you have tested — the preview still ships breaking changes.
2. Open **Settings → Models** and choose **Add a custom provider**. Official DeepSeek catalog cards will not use the endpoints on this page.
3. Set a lowercase **Provider ID** such as `supanexus`. The id is permanent for sessions and credentials.
4. **Base URL**: `<BASE_URL>/v1`. **API protocol**: OpenAI Chat Completions (`openai-completions`).
5. Paste a SupaNexus **project API key**.
6. Add models such as `deepseek/deepseek-v4-pro` and `deepseek/deepseek-v4-flash`, or choose **Fetch available models** (`GET /v1/models`) to pull the full catalog. Other Public API IDs (Qwen, Kimi, GLM, and so on) work the same way.
7. Save. For fields the form does not expose, edit `$DSH_HOME/settings.yaml` and restart.

```yaml
llm-pi-ai:
  providers:
    supanexus:
      apiKeyEnv: SUPANEXUS_API_KEY
      api: openai-completions
      baseURL: "<BASE_URL>/v1"
      models:
        - id: deepseek/deepseek-v4-pro
        - id: deepseek/deepseek-v4-flash
```

Keep the key in `SUPANEXUS_API_KEY`. Do not commit it into YAML. You can replace the `models` list with any Public API ID from [Models](./models.md).

## DeepSeek Harness recommended API

| Item | Recommendation |
|------|----------------|
| Protocol | OpenAI Chat Completions (`openai-completions`) |
| Flagship / agents | `deepseek/deepseek-v4-pro` |
| Latency / cost | `deepseek/deepseek-v4-flash` |
| Default host | `https://api.supanexus.ai/v1` |
| Backup host | `https://api.supanexus.io/v1` |

Use the official DeepSeek catalog card only when you intend to call DeepSeek’s own API.

If the rest of your tools already speak Anthropic, you can point Harness at [Messages](./messages.md) (`POST /v1/messages`) instead. For a greenfield Harness setup, stay on Chat Completions.

## OpenAI SDK (same models)

The same Public API IDs work outside Harness:

```python
from openai import OpenAI

client = OpenAI(
    base_url="<BASE_URL>/v1",
    api_key="sk-snx-...",
)

response = client.chat.completions.create(
    model="deepseek/deepseek-v4-pro",
    messages=[{"role": "user", "content": "Hello!"}],
)
print(response.choices[0].message.content)
```

See also [OpenAI SDK Integration](./openai-sdk-integration.md) and [Models](./models.md).