dshbase

Blog · Guide

Installing DSH on Windows, and reproducing the V4 Pro benchmark setup

August 25, 2026 · dshbase · installer guide

This guide answers two questions: how do you actually install DeepSeek Harness on Windows, and how do you reproduce — or verify — the "best mode" everyone is benchmarking? Everything below follows a real Windows machine walkthrough.

What (and how much) you're installing

DeepSeek Harness (command: dsh) is a developer-preview agent runtime, not a model and not a chat wrapper. Its bet: everything is a plugin — model adapters, file tools, skills, sessions, storage, permissions, sandbox, the task loop, scheduling, even the web UI. The core runs on Cordis, and four built-in presets give you four very different working personalities.

Option 1: let an existing agent install it

If you already run Codex, Claude Code or similar, hand it this prompt:

Install DeepSeek Harness from the official npm package (@deepseek-ai/dsh). Check the Node.js and npm environment first and use only the official package. Install the current version, start the web UI, and confirm http://127.0.0.1:3080 is reachable. Then report the installed version, the start command and verification result. Do not read, echo or save my API key.

Option 2: manual install

  1. Node.jsnode --version must satisfy ^22.19.0 || >=24.0.0 (the tested machine used v24.13.0). Download from nodejs.org if missing; keep "Add to PATH" checked, then open a new terminal.
  2. Global install — many tutorials suggest npx @deepseek-ai/dsh web, but on this machine that refused to install. The reliable path was npm install -g @deepseek-ai/dsh. Then verify separately: dsh --version. Separating "install failed" from "start failed" saves a lot of confusion.
  3. Start the web UI — in a fresh folder (say dsh-first-agent), run dsh --profile web. You'll see dsh web: http://127.0.0.1:3080. Open it in a browser. Keep that terminal open — the web page is just the interface; the service lives in the terminal. Port taken? dsh web --port 8080, or --port 0 to auto-pick.
  4. Model + API key — first launch prompts for an API key (DeepSeek open platform), or configure it under Settings → models: add provider, paste key, pick model, save.

First steps that actually matter

DeepSeek Harness web UI: new session, workspace tree and model area
  • The workspace is a file boundary, not a chat category. Add and select a workspace (e.g. D:\dsh-first-agent). If the input box is greyed out, check the workspace first.
  • Left panel: workspace file tree + session list. Middle: chat, task process, input box — where you pick model, preset and permission.
  • Sessions keep context and operation history: rename, search, resume, archive (archive ≠ delete), and Fork for comparing two approaches. Long thread? /compact.

The four presets — and what plan mode is not

The four DSH modes: Standard, PTC, Minimal and Create with their tool environments
StandardFull coding agent: file edit, shell, file/web search, skills, plan, goals, subagents, workflowsDefault for daily work — pick it first
PTCEverything in Standard, plus the model can orchestrate multi-step tool calls as TypeScript via the Code Mode SDKTool-call-dense, repetitive flows
MinimalOnly persistent Bash + str_replace_editorBenchmarks, teaching, model observation
CreateStandard + runtime inspection, plugin experiments, preset authoringExtension dev — high trust level, keep it away from important workspaces

Plan mode is not a fifth preset. Presets decide what tools a session has; /plan decides whether the agent investigates and proposes before executing. For your first real project: Standard + Read Only + plan mode. And about permissions: Read Only / Workspace Write / Full Access — Full Access isn't a "pro tier," it's the highest-risk option. Workspace Write bounds writes, but the agent can still read beyond it; check what it wants to read and whether it asks to escalate.

The V4 Pro benchmark controversy, decoded

DeepSeek's published numbers are strong — V4 Pro at DeepSWE 62.7 and CyberGym 83.3. Third-party boards and user reports show more variance: early-exit reasoning, missed steps in long tasks, run-to-run wobble. Both can be true at once, because a coding-agent score is not the model alone: system prompt, tool list, context management, terminal environment and acceptance checks all change the result.

Minimal mode is a special evaluation environment: a one-line system prompt, exactly two tools, no injected runtime context. Community tests have shown the same model/task going from roughly 91–93 (Standard/PTC) to 96–99 (Minimal) with similar reasoning settings. The task sets aren't public, so this doesn't prove Minimal is generally stronger — it proves V4 Pro's agent capability is sensitive to first-turn prompt and tool architecture. That's a more accurate framing than "it's only smart in Minimal mode."

Reproducing the benchmark setup, honestly

  1. Pick a verifiable task — a known bug, a function to implement, or "make the tests pass," with explicit: project path, allowed/forbidden files, test command, pass criteria, logs to keep. No "optimize my project."
  2. Fresh Minimal session — V4 Pro / Minimal / thinking Max / minimal permissions, no extra skills or project lore loaded. Windows note: Minimal exposes persistent Bash, not PowerShell — a broken Bash is an environment problem, don't score it as model failure.
  3. Build a control group — same code state, same task: A) Standard+High, B) Standard+Max, C) Minimal+Max. Run each at least 3 times on identical initial files; don't let the next run inherit edits from the previous.
  4. Record real metrics — auto-test pass rate, plan-completion rate, premature "done" claims, wall time, input/output tokens, tool-call steps, rework count. A reproduction report should state DSH version, model, preset, thinking level, OS, task version, repeat count and results — one screenshot proves nothing.

The fine print

Minimal has no file/web retrieval, no skills, no planning and no context compression. In one community project test it was ~10 minutes faster but burned more input tokens (≈5.2M → 5.9M); in another long task, V4 Pro still marked unfinished items as done even with Max planning + High execution. For real projects the steady combo remains: V4 Pro + Standard + High — use Max + plan mode to shape the approach, High to execute, then a separate round for testing and independent review.

All articles →