Getting Started with DeepSeek Harness
Run DeepSeek Harness (dsh) in 10 minutes. Install with npx, choose a preset, pick a model provider, and start your first agent session in the local web UI.
Getting Started with DeepSeek Harness
This guide gets you a running DeepSeek Harness agent session in about 10 minutes. It assumes you've read the overview and know the basics: it's an MIT-licensed agent runtime where everything is a plugin.
1. Install
npx @deepseek-ai/dsh web
npx pulls the published package and starts the local web UI. Node 22 or later is required. Alternatives: run headless from the CLI, or build from source per the repository README.
Pin your version. The project is at
0.1.0-rc.5with no release tag and DeepSeek warns that compatibility-breaking changes are coming. Install with an exact version, e.g.npx @deepseek-ai/[email protected] web, and re-check the changelog before upgrades.
2. Pick a Preset
On first launch, you'll choose a preset. It sets the model, tools, skills, and configuration that make up the agent:
- Standard — the full coding agent: filesystem tools, shell, file and web search, skills, planning, goals, subagents, workflows
- Minimal — two tools only (
bashandstr_replace_editor); the configuration DeepSeek used for its own benchmark runs - Code — generates a TypeScript SDK so the model writes a program instead of chaining tool calls
- Creator — Standard plus runtime inspection and preset-authoring tools for plugin developers
Start with Standard. Switch to Minimal when you want reproducible, benchmark-like behavior, or Code when you want the token-efficiency win of single-call programs.
3. Configure a Model
Harness is model-agnostic. Supported providers include Anthropic, OpenAI, AWS Bedrock, Microsoft Azure, Google's Gemini Enterprise Agent Platform, DeepSeek's endpoint, and any OpenAI-compatible gateway.
The fastest path, with a DeepSeek API key:
{
"provider": "deepseek",
"model": "deepseek-v4-pro",
"apiKeyEnv": "DEEPSEEK_API_KEY"
}
Create a .env file in your project root with DEEPSEEK_API_KEY=... and the harness picks it up. For other providers, set the equivalent environment variable for that provider's API key and select the provider from the UI.
Subagent providers. Claude Code and Codex can be delegated to as subagents — both are off by default, and each resolves its binary from your PATH. Enable them only if you have those tools installed and logged in.
4. Start a Session
- Open the web UI (by default at the local address the harness prints, typically
http://localhost:port). - Open a project directory — the harness reads
AGENTS.mdandCLAUDE.mdfiles there automatically. - Start a session and give it a task, for example: "Explain how authentication works in this repo and add a failing test for the login rate-limit."
- Watch the Trajectory view: every system prompt, reasoning step, tool call, result, and subagent schedule is recorded in an append-only log. You can resume, fork, search, and replay sessions from this event stream.
5. Going Headless
The web UI isn't the only surface. The same runtime drives a headless CLI (useful for scripts and CI) and a Python SDK (useful for embedding the harness in your own tooling). The session log is the same append-only event stream in every mode, so a session started in the web UI can be resumed from the CLI and vice versa.
6. What's Next
- Verify behavior, don't trust the preset. DeepSeek's own benchmark numbers were run on the Minimal preset at max reasoning effort, and independent reruns show a reproduction gap (see the launch analysis). Run your own eval on your own tasks.
- Learn the plugin model. Everything — models, tools, skills, sessions, sandboxes, loops, UI — is a plugin, and plugins are the only supported extension path. The Creator preset is built for experimenting with this.
- Run it in OpenCode. If you prefer OpenCode as your harness, the OpenCode Integration page covers connecting DeepSeek V4 there, including the thinking-mode provider setup.
Related Articles & Guides
DeepSeek Harness — Agent Runtime
Complete guide to DeepSeek Harness (dsh), the MIT-licensed agent runtime where everything is a plugin. Covers installation, presets, model setup, plugins, and comparison to Claude Code and Codex.
Pi — Terminal AI Coding Agent
Complete guide to pi, Mario Zechner's minimal terminal coding agent. Covers installation, prompt engineering, context files, skills, and the lean-harness philosophy.
Jcode — AI Coding Agent
Complete guide to jcode, the RAM-efficient open-source AI coding agent in Rust. Covers installation, prompt engineering, configuration, memory, swarms, and advanced workflows.