DeepSeek Harness
DeepSeek Harness is an open-source agent harness from DeepSeek AI with a local Web UI: chat and multi-step agentic tasks in your working directory, custom models via a provider form. One of the most popular agentic projects on GitHub; the status is developer preview — the interface and configuration may change between versions.
Harness has no inference of its own — models attach as providers. Mixen speaks the OpenAI protocol and serves its catalog via GET /models, so the model list loads itself.
Installation
Section titled “Installation”Node.js is required. One command to start:
npx @deepseek-ai/dsh webThe Web UI comes up at http://127.0.0.1:3080 (the browser opens by itself; --no-open keeps it from opening; an SSH launch just prints the URL). If port 3080 is taken, Harness refuses to start.
From source:
git clone https://github.com/deepseek-ai/deepseek-harness.gitcd deepseek-harness && pnpm install && pnpm run build && pnpm dsh webConnecting Mixen
Section titled “Connecting Mixen”Settings → Models → Add a custom provider:
| Field | Value |
|---|---|
| Provider ID | mixen (lowercase letters, digits, hyphens; starts with a letter) |
| Display name | Mixen |
| Base URL | https://api.mixen.ai/v1 |
| API protocol | openai-completions |
| API key | your mxn-… key from the dashboard |
Press Fetch available models — Harness calls GET /models with your key and pulls in the whole Mixen catalog. Take the Model ID exactly from the list (e.g. deepseek/deepseek-v4-pro), not the display name. The key is stored in $DSH_HOME/.credentials.yaml.
Recommended models
Section titled “Recommended models”| Task | Model | Input / output per 1M |
|---|---|---|
| Routine, drafts | GLM 5.3 Flash (z-ai/glm-5.3-flash) |
0.50 / 20.60 ₽ |
| Code and agentic tasks | DeepSeek V4 Pro (deepseek/deepseek-v4-pro) |
47.70 / 95.40 ₽ |
| Hard sessions | Claude Sonnet 5.5 (anthropic/claude-sonnet-5.5) |
213.80 / 1069.20 ₽ |
Full tables with cache columns — in the catalog.
Troubleshooting
Section titled “Troubleshooting”- 401 on Fetch available models — the key was pasted with quotes or spaces; copy it again, whole.
- The model list is empty — check the Base URL (
https://api.mixen.ai/v1, no typos) and theopenai-completionsprotocol. - The Create provider button is inactive — not every required field is filled, or not a single model has loaded.
- Port 3080 is taken — free the port or check the launch flags in
dsh web --help.
The rest of the integrations — in the overview.