DSH Toolbox

DeepSeek Harness desktop

desktop is a reserved profile name: the Electron app owns it, so the CLI rejects dsh desktop. The shipped CLI profiles are web, headless, sdk, sdk-minimal and acp.

If you typed dsh desktop and got an error, that is not a missing install. The name is taken by the Electron application, and the launcher refuses boot and config-dump requests for it on purpose.

There are two different things people mean by "desktop": an Electron app that wraps the same runtime, and the browser UI that ships inside the CLI. Only one of them starts from the npm package.

Why dsh desktop fails

The desktop profile name is reserved for the Electron-owned profile. The CLI rejects boot and config-dump requests for that name, and the npm CLI also rejects plugin-management requests for it — so dsh plugin --profile desktop add <package> will not work either.

The desktop-installed command can manage the initialized Desktop profile, because it runs with that installation's runtime. From the npm package, tooling for that profile is simply unavailable.

Desktop app vs dsh web

dsh web boots the web profile and serves the browser UI from your machine. It takes --host, --port, --no-open, --public-url, --trusted-host and optional TLS flags.

The desktop app is a separate carrier around the same runtime: it ships its own profile and its own command, and it is where the reserved name comes from. Running dsh web gives you the same sessions and the same $DSH_HOME directory, just in a browser tab instead of a native window.

What to run instead

Start the browser UI on the default port, or pin one and skip the auto-open:

dsh web
dash web --port 8080 --no-open

If you need to inspect what the profile actually composes

Use a real shipped profile name. desktop will refuse; web works:

dsh --profile web --dump-config
dash --profile web --dump-config-schema

Common questions

Does the npm package include the desktop app?

No. The npm package installs the dsh launcher and the shipped CLI profiles. The desktop app is a separate download with its own command.

Can I rename my profile to desktop?

No. The name is reserved: boot and config-dump requests for desktop are rejected, so pick another name when you copy a template.

Is dsh web the same UI as the desktop app?

It is the browser surface of the same runtime. Sessions, $DSH_HOME and the profile model are the same; the window is not.