DSH Wiki DSH Wiki
DEPLOY

Get It Running

From zero to a running instance in four steps. Every command checked line by line against the official README.
01

Install the CLI

One npx command and you're running — macOS, Linux, or Windows, Node 22.19+ is all it takes.
02

Connect a model

Drop in a DeepSeek API key, or point it at Ollama and use a model running on your own machine.
03

Launch

Work straight from the terminal — or run dsh web for a browser UI if the command line isn't your thing.
04

Install your first plugin

Pick one from the curated list and install it — from here on, everything is a plugin.
REQUIREMENTS
runtime · readme_wording
Install `Node.js`, then run: npx @deepseek-ai/dsh web
runtime · package_json_engines_node
^22.19.0 || >=24.0.0
runtime · package_json_packageManager
pnpm@11.7.0
runtime · root_package
@deepseek-ai/dsh-root 0.1.0-rc.7
runtime · engines_source_url
linux_build_tools_note
Not documented officially, but community discussions (#1772/#49/#897) confirm that the node-pty native module has to be compiled locally on Linux: Debian needs build-essential, Arch needs base-devel, and g++ must support gnu++20 (GCC 10+)
status_warning
DeepSeek Harness is currently in _developer preview_ and is iterating rapidly. THERE WILL BE COMPATIBILITY-BREAKING CHANGES. (verbatim from the README)

Run directly with npx (the official README's first choice)

npx @deepseek-ai/dsh web
Source

Run from source (pnpm)

git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web
Source

Ollama integration (local/self-hosted)

ollama launch dsh
Source

Global npm install (community practice, not listed in the official README)

npm install -g @deepseek-ai/dsh
dsh web
Source

MODEL

api · deepseek_key
In the web UI, go to Settings -> Models, enter the API key (from https://platform.deepseek.com/ ) on the DeepSeek card and save; official wording: "The model route becomes usable immediately without restarting the server" (it takes effect on save, no restart needed)
api · key_storage
providers.md, verbatim: "Keys are write-only. The page receives a redacted descriptor after saving, never the literal secret. The key is stored in `$DSH_HOME/.credentials.yaml`"; model definitions are stored in $DSH_HOME/settings.yaml
api · catalog_providers
Anthropic
api · catalog_providers
OpenAI
api · catalog_providers
Bedrock
api · catalog_providers
Vertex
api · catalog_providers
Azure
api · catalog_providers
Codex
api · catalog_config
Add provider -> pick the vendor -> enter the API key -> save; Bedrock/Vertex/Azure/Codex use AWS credentials plus region, an ADC project, api-version, and OAuth respectively
api · env_var
Credentials can be injected through environment variables (the apiKeyEnv field in the configuration example, such as GATEWAY_API_KEY)
api · source_url
local · custom_openai_compatible
Add a custom provider: enter a Provider ID (lowercase, permanent), display name, base URL, API protocol, credentials, and at least one model; Fetch available models calls the OpenAI-compatible GET /models to pull the model list automatically, and for endpoints that do not support it you enter the model names by hand
local · ollama
ollama launch dsh runs everything locally in a single command, with the Ollama web search plugin preinstalled (Ollama's official wording)
local · source_url

LAUNCH

web_ui · command
npx @deepseek-ai/dsh web
web_ui · alias
dsh web is an alias for dsh --profile web
web_ui · default_address
web_ui · first_run_flow
(1) Settings -> Models, enter the DeepSeek API key -> (2) Choose workspace to pick a working directory (official wording: "The session composer remains unavailable until a workspace is selected") -> (3) open a session and send a task
web_ui · source_url
terminal · headless
dsh --profile headless "job" - official description: "Run one fresh persisted session, print the final answer, and exit"
terminal · profile
dsh --profile <name> - "Boot the named profile under $DSH_HOME/profiles/<name>"; the web and headless profiles are initialized from templates automatically on first use, while other profiles have to be created through dsh plugin
terminal · plugin_mgmt
dsh plugin --profile <name> <pnpm args> - forwards the pnpm arguments to the profile directory to manage plugins
terminal · flags
--port
terminal · flags
--resume
terminal · flags
--patch
terminal · flags
--dump-default-config
terminal · flags
--dump-config
terminal · flags
--help
terminal · source_url
modes · list · name_zh
Standard mode
modes · list · name_en
Standard
modes · list · dir
standard
modes · list · official_desc_zh
A full-featured coding Agent with file editing, Shell, file and web search, Skills, plans, goals, subagents, and workflows.
modes · list · name_zh
PTC mode
modes · list · name_en
Code
modes · list · dir
code
modes · list · official_desc_zh
Everything standard mode can do, with tools surfaced through the Code Mode SDK so the model composes multi-step operations in a single TypeScript program.
modes · list · name_zh
Minimal mode
modes · list · name_en
Minimal
modes · list · dir
minimal
modes · list · official_desc_zh
A two-tool coding Agent offering only persistent bash and str_replace_editor.
modes · list · name_zh
Creation mode
modes · list · name_en
Creator
modes · list · dir
cordis
modes · list · official_desc_zh
For building custom Agent presets: everything standard mode can do, plus runtime inspection, plugin experimentation, and guidance on authoring presets.
modes · definition_location
Four directories under apps/cli/config/agent-presets/ (code/cordis/minimal/standard); the preset definition files are written in Chinese by the official team
modes · source_url

UPGRADE / UNINSTALL

note
Neither the README, apps/cli/README.md, nor the docs user guide provides an upgrade or uninstall command (checked one by one, ABSENT); community discussions mention clearing the npx cache (rm -rf ~/.npm/_npx, see #49/#897), but that is a troubleshooting step rather than an official upgrade procedure

ISSUES

npx install fails | npm install fails too (#1772, answered)
Answered by the original poster (2026-08-16): build-essential was not installed on Debian, so the node-pty native module failed to compile; installing build-essential with apt made the install succeed
Cannot install on ArchLinux (#49, 18 comments)
Top-voted fixes: (1) install the build tools with pacman -Syu base-devel; (2) switch to Bun: bun add --global @deepseek-ai/dsh (node-pty is on Bun's allowlist); (3) to stay on npm, clear the cache and let the build scripts through: rm -rf ~/.npm/_npx && npx --allow-scripts=node-pty @deepseek-ai/dsh@0.1.0-rc.6 web; another option: npm config set allow-scripts=@deepseek-ai/dsh-subprocess-local,koffi,node-pty,@google/genai,protobufjs --location=user
Command-line install does not succeed (#897, 10 comments)
Community diagnosis: the system default g++ 9.4.0 does not support -std=gnu++20 (GCC 10+ required); the fix: clear the npx cache first, then run CC=gcc-11 CXX=g++-11 npm install -g @deepseek-ai/dsh followed by dsh web
dsh web fails to start after a global npm install: the node-pty native module pty.node is missing (#1219)
Root cause: node-pty v1.1.0 has no prebuilt binary for Linux x64 (Node 24/ABI 137) and the npm install script fails silently; manual workaround: go into the node-pty directory and run npx node-gyp rebuild to produce the missing pty.node; no official response in the thread (0 replies)
"Ignored build scripts" error when dsh installs a plugin (#2230)
No solution details captured (1 comment, not verified in depth); the symptom is related to pnpm's default security policy of ignoring dependency build scripts and can be cross-referenced with the allow-scripts approach in #49 - the fix for this entry is still to be filled in
DSH Wiki · The DSH Intel Hub · By ai798 Lab
DeepSeek Harness site GitHub
Live-scraped data