DeepSeek Harness Install guide

How to Install DeepSeek Harness (dsh) on Windows: What We Hit on Each Route

DeepSeek Harness is DeepSeek's open-source agent runtime. It includes a desktop app and a Node.js command-line tool called dsh. We tested three Windows installation options on 4 November 2026: installing the npm package, running it through npx, and downloading the desktop installer. During testing, the first npx launch failed with a zod module-resolution error affecting 17 plugins. A later run using the cached files started successfully. We also found a PyPI package with a similar name, but it is a different product. This article uses version 0.2.1-rc.5, which the latest npm tag pointed to on the test date.

Tested: 4 November 2026 · Windows 11, Node v22.22.2, @deepseek-ai/dsh 0.2.1-rc.5 (npm latest) · Every error message below is quoted from our own runs; where we could not reproduce something, we say so

The three options behave differently. The local npm install is the option that worked consistently in our tests: it installed 616 packages in about six minutes, and all later tests passed. The first npx run failed during startup, although a later run with a warm cache worked. We therefore cannot say that npx always fails; we observed a failure on a first run with no cached copy of the package. The desktop installer is available from download.deepseek.com, but we checked the download files without installing them. Also, do not use pip install deepseek-harness for this product: that command installs an unrelated third-party API client.

The three official routes, and which one we recommend

DeepSeek provides the npm CLI and desktop installers. A similarly named package is also available on PyPI, but it is not the official Harness runtime:

RouteCommand or fileWhat we observed on 4 Nov 2026
npm CLI (local)npm install @deepseek-ai/dsh616 packages, roughly six minutes; every test afterwards worked
npx shortcutnpx -y @deepseek-ai/dsh webFirst run (cold cache) failed at startup; a later warm-cache run booted
Desktop installerdsh-latest-windows-x64.exe / macOS dmgFiles exist and are current (Last-Modified 30 Oct 2026); we did not install them
PyPI namesakepip install deepseek-harnessA different product - an unofficial API client, not the agent runtime

The desktop installer is separate from the npm CLI. The README reserves the desktop profile name for the Electron app, and the npm CLI rejects attempts to boot that profile. If you want the packaged desktop app, use the Windows .exe or macOS .dmg installer rather than the npm CLI. We checked that both installer URLs returned HTTP 200 and that the files had a 30 October 2026 modification date. We did not install either file, so this article does not assess the desktop app.

The npx failure we hit, verbatim

Our first-ever run, on a machine that had never touched this package:

npx -y @deepseek-ai/dsh web --no-open

It downloaded, then died at boot:

dsh: startup failed: 1 required plugin did not activate
Failed plugins (17):
  typert  (@deepseek-ai/dsh-typert-registry)
    failed to import: Error: Cannot find package '...\node_modules\zod\index.js'
    Did you mean to import "zod/index.cjs"?

The package downloaded, but the zod dependency could not be imported from the path requested by the plugin. Node suggested index.cjs instead of index.js, which points to a mismatch between the import path and the files available in the package. The same import error appeared in 17 plugins, and startup stopped.

Later that day, we ran the same command again with a warm npx cache, and it started successfully. We also tried a fresh download, but installation did not finish before our test timeout. We cannot tell from these tests whether the cold-cache error happens every time. The result is limited but useful: we saw the error once on a fresh run, and the same command worked later with cached files.

For a more consistent result in our tests, use the local installation described below.

The local install that just worked

npm install @deepseek-ai/dsh
./node_modules/.bin/dsh --version      # 0.2.1-rc.5

In our test, the local install added 616 packages and took about six minutes on our broadband connection. We inspected the installed zod package and found both index.js and index.cjs. All subsequent startup tests using this installation succeeded.

There are two version details to check before installing. On 4 November 2026, the latest npm tag pointed to 0.2.1-rc.5, which was published on 29 October. Version 0.2.2-alpha.3 was available only under the alpha tag. A 0.2.2 release candidate appeared on the next tag later that day, after our tests ran, and it does not change what a plain install gets. The project labels this release a developer preview and warns that compatibility-breaking changes may occur. Check the installed version with dsh --version. This command only reports the version; it does not confirm that all plugins will start successfully.

DeepSeek Harness web UI first launch: preview-version dialog, sidebar with new session, plugins, automation tasks, and a model selector reading 'please choose a model'
First launch of dsh web in our test, version 0.2.1-rc.5. The screen displays a preview notice, and no model is selected when the app first opens.

What the first launch actually asks of you

dsh web prints one line:

dsh web: http://127.0.0.1:3080/?token=…

The output contains three details to note:

Browser window showing 'dsh web authentication required. reopen the URL printed by dsh web.' after visiting localhost:3080 without the token
The full 401 response from our test. It contains no link or form; to authenticate, return to the terminal and copy the complete URL, including the token.

The PyPI package that is not this product

A search for "deepseek harness pip" also returns the command pip install deepseek-harness. We checked its PyPI listing on 4 November 2026. Version 0.3.1 describes itself as a "Protocol-aware client for DeepSeek V4-Pro / V4-Flash / Vision." It is an unofficial third-party client for the DeepSeek API, not the Harness agent runtime discussed here. It does not provide the dsh command, profiles, or Harness plugins.

The official Harness installation options we found were the npm package and the desktop installers. The PyPI package is maintained separately and serves a different purpose. Check the package name and publisher before following an installation guide; similar names do not mean that two packages are related.

The tui command in the help text does not ship

dsh --help uses dsh tui in three of its own examples. On our install, dsh tui fails:

Error: dsh: profile "tui" does not exist; create it with 'dsh plugin --profile tui add <package>'

In version 0.2.1-rc.5, the automatically initialized profiles in the installed code are web, headless, sdk, sdk-minimal, and acp. There is no shipped tui template. The README qualifies its example by saying that the tui profile must already be installed, but the help screen does not include that qualification. As a result, copying the help example on a fresh installation produces the error shown above. Our CLI guide explains the differences between these entry points.

Frequently asked questions

Is DeepSeek Harness free to install?
The npm package and desktop installers are free to download. Running tasks through Harness requires a DeepSeek API key, and API usage is billed at DeepSeek's published token rates.
What Node version do I need for dsh?
We tested dsh with Node v22.22.2. The package also declares a required Node engine range and checks it at startup. If your Node version is outside that range, the command should return a version error.
Why does my browser show 401 when dsh web is running?
The URL dsh prints includes a ?token=… query string and that token is the authentication. Opening the bare address gives a 401. Copy the whole line from the terminal, token included; the token changes each time you restart the server.
Is the PyPI deepseek-harness package official?
No. It is an unofficial third-party API client by a different author. The official DeepSeek Harness ships via npm (@deepseek-ai/dsh) and desktop installers on download.deepseek.com.
Should I use npx or install locally?
For a quick test, npx may be convenient; it worked in our warm-cache run. For repeated use, we recommend the local npm installation because it worked consistently in our tests. Our first cold-cache npx run failed, but we could not reproduce that failure in a completed second cold run.

Sources and what we could not test

ClaimWhere it came fromDate checked
npm @deepseek-ai/dsh: latest = 0.2.1-rc.5 (3 Nov 2026), alpha = 0.2.2-alpha.3; 41 versions since 10 Aug 2026npm registry, package metadata4 Nov 2026
Developer preview notice and 'tui profile is installed' qualificationdeepseek-harness README (the copy installed with 0.2.1-rc.5)4 Nov 2026
Desktop installers exist and current: dsh-latest-windows-x64.exe / dsh-latest-macos-arm64.dmg, Last-Modified 30 Oct 2026download.deepseek.com, HTTP HEAD check4 Nov 2026
Shipped profile list (web/headless/sdk/sdk-minimal/acp) and reserved desktop namedsh-app-boot source shipped inside the installed package4 Nov 2026
PyPI deepseek-harness 0.3.1 = third-party 'protocol-aware client', not the agentPyPI project page4 Nov 2026
All quoted errors, the 616-package install, boot behavior and screenshotsour own runs, Windows 11 + Node v22.22.24 Nov 2026

We did not install the desktop .exe or .dmg; we only checked that the download URLs existed and that the files were current at the time of testing. We observed the cold-cache npx startup failure once, but could not reproduce it in a completed repeat test because the fresh installation did not finish before the timeout. We also did not have a funded DeepSeek API key on the test machine, so testing stopped at the model-selection screen. This article does not cover a live chat session.

How this was researched: We ran the commands on a Windows 11 machine on 4 November 2026, using @deepseek-ai/dsh 0.2.1-rc.5 and Node v22.22.2. The quoted errors come from our terminal output. We checked the npm registry, the README included with the installed package, and the PyPI listing on the same date. DeepSeek did not pay us, and we do not sell anything on this page. See our full testing method.