DeepSeekDSH
Independent community guideNot affiliated with DeepSeek.Official source snapshot

DeepSeek Harness Commands

Current DSH command reference for the Web UI, profiles, headless tasks, plugins and configuration inspection.

On this page

Quick reference

TaskCommandWhen to use it
Start the Web UInpx @deepseek-ai/dsh webRecommended beginner command. `web` is an alias for the built-in web profile.
Start without opening a browsernpx @deepseek-ai/dsh web --no-openUseful when you want to open the printed URL yourself. SSH launches already avoid opening a browser locally.
Use another Web UI portnpx @deepseek-ai/dsh web --port 8080The launcher starts the web profile, then passes --port to the Web app.
Run one headless tasknpx @deepseek-ai/dsh --profile headless "run the tests"Runs a fresh persisted session, prints the final answer and exits without starting a Web server.
Inspect the composed confignpx @deepseek-ai/dsh --profile web --dump-configPrints the web profile after profile, home-level and command-line patch layers are composed.
Manage a profile pluginnpx @deepseek-ai/dsh plugin --profile <name> add <package>Creates or extends an out-of-tree profile by forwarding package operations to pnpm.
Check Node.jsnode --versionConfirms Node.js is available before running DSH.
Check npmnpm --versionConfirms npm/npx were installed with Node.js.
Run a source checkoutpnpm dsh webUse after cloning the official repository, installing dependencies and running pnpm run build.

First run: what to expect

npx @deepseek-ai/dsh web

On the first launch, npx may need to download the package before DSH starts. This can take longer than later launches. If the terminal has not printed an error, a short pause during installation is normal.

For a normal local launch, DSH starts the Web UI at http://127.0.0.1:3080 by default and opens the default browser. In an SSH launch, DSH prints the host URL instead because the SSH client or editor owns the local forwarded address.

Remote or terminal-only use

Use the URL printed by DSH. Pass --no-open when you explicitly do not want a browser launch; SSH environments can still require port forwarding configured by your SSH client or editor.

Profiles and app arguments

Current DSH launches named profiles. The built-in web and headless profiles auto-initialize from shipped templates the first time they are used. Other profiles are created or extended through dsh plugin.

dsh web is shorthand for dsh --profile web. Launcher flags come first; once the launcher reaches an app argument, the active profile handles the remaining arguments. For example, --port 8080 belongs to the Web app.

npx @deepseek-ai/dsh --profile web --port 8080
npx @deepseek-ai/dsh --profile headless "summarize this repository"
npx @deepseek-ai/dsh --profile web --dump-default-config

--dump-default-config shows the shipped bundle layers. --dump-config also includes profile, home-level and --patch overlays without booting the app.

Run from the official source repository

This is for contributors or developers who want to work on DeepSeek Harness itself. It is not required for normal use.

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

pnpm run build prepares the repository artifacts. The later pnpm dsh web command uses those built artifacts without rebuilding them.

What to do after DSH starts

Primary sources

DeepSeek Harness README · DSH CLI README · CLI behavior reference. DSH remains in developer preview, so command behavior can change between release candidates.