DeepSeek Harness entry points: CLI, desktop or dsh web
The three DeepSeek Harness entry points are three shells over the same tool: the CLI for automation and remote use, the desktop app for graphical local work, and dsh web for multi-device access. The decision reduces to two questions: which device you are on and what you are doing. What needs attention is the configuration boundary — one profile shares plugins and settings, different data directories mean two environments.
Capability matrix for the three DeepSeek Harness entry points
Bottom line: the CLI wins on automation, the desktop app on local graphical work, and dsh web on cross-device access. Their strengths barely overlap.
| Capability | CLI | Desktop app | dsh web |
|---|---|---|---|
| Local files and heavy tasks | Strong | Strong | Depends on where the server runs |
| Graphical interaction | Weak | Strong | Strong |
| Cross-device or remote | Needs SSH or similar | Weak | Strong |
| Scripting and automation | Strong | Weak | Weak |
| Affected by browser policy | No | No | Yes |
| Long-running service | Depends on usage | Possible | Requires keeping the process alive |
Option A: CLI as the primary entry
Bottom line: for automation, remote use, or machines without a GUI, only the CLI works.
- Locally: run dsh in a terminal; this uses the fewest resources.
- Remotely: execute over SSH, independent of any local graphical environment.
- In scripts: suitable for pipelines and scheduled jobs (see updating DeepSeek Harness in CI).
- Pair with the web UI: run long tasks from the CLI and review output in dsh web.
- Trade-off: no graphical interface, so browsing and searching long sessions is weaker than in the browser.
Option B: desktop app as the primary entry
Bottom line: for graphical local work that should not depend on browser policy, the desktop app is the smoothest option.
- Good fits: local project work, precision clicking and dragging, and company machines where browser policy is locked down.
- Strength: direct system access, unaffected by extensions and browser policy.
- Watch the update path: the desktop app and the CLI update through different channels and can drift — see aligning DeepSeek Harness across machines.
- Watch platform support: not every platform has an official desktop package (Linux ARM usually has only the CLI).
- Trade-off: weak cross-device access; phones still need dsh web.
Option C: dsh web as the primary entry
Bottom line: for multi-device access with only a browser on the client, dsh web is the answer, at the cost of network and access-security work.
- Local service plus browser is the basic pattern.
- Cross-device: phones and tablets on the same LAN (see accessing dsh web on your LAN).
- Internet access: add a reverse proxy and HTTPS (see dsh web behind a reverse proxy).
- Mind the exposure: dsh web being loopback-only by default is deliberate; add access control before making it internet-reachable.
- Trade-off: subject to browser compatibility and policy; multiple tabs each consume resources.
Sharing one profile across DeepSeek Harness entry points
Bottom line: sharing a profile means sharing an environment, not merging interfaces. Watch concurrent writes and version consistency.
- Plugins and configuration are shared: a DSH plugin installed from one entry is visible from another under the same profile.
- Concurrent writes: operating on the same session data from multiple entries can behave inconsistently; start long tasks from one entry only.
- Keep versions aligned: independent CLI and desktop updates cause behavioral differences; check both first when diagnosing (see npx versus global drift).
- Isolate deliberately when you do not want sharing: different data directories or profiles produce independent environments — a valid design, not a misconfiguration.
- Diagnostic rule: when "this side differs from that side," check data directory and version before checking the feature.
Recommended DeepSeek Harness combinations by scenario
Bottom line: combine rather than pick one. Each common scenario has a standard pairing.
| Scenario | Recommended combination |
|---|---|
| Local development with long tasks | CLI primary + dsh web for review |
| Graphical local work or locked browsers | Desktop app primary |
| Phone or tablet, light use | dsh web primary (server on a computer) |
| Unattended server work | CLI primary, optionally with the web UI |
| A team viewing one environment | dsh web primary + proxy and access control |
| Automation or CI | CLI primary, scripted |
DSH plugin troubleshooting across entry points
Bottom line: ask whether the data directory and version are the same. Those two explain most "it differs when I switch entries."
- Plugins missing — compare DSH_HOME and profiles, not the plugins.
- Behavior differs — compare versions.
- Web UI unreachable — curl locally first, then check network and binding (see the LAN guide's three steps).
- Desktop plugin install fails — check platform support and dependency prerequisites.
- Before relying on a plugin — verify availability for your target entry in DSH Plugin Hub; support varies by version.
- Repair status, stated honestly: this matrix is synthesized from the positioning described in the official CLI and desktop READMEs; it is not a per-version feature audit. Coverage changes with releases, so check the official notes for your version.
If you are only deciding between the web UI and the desktop app, see web UI versus desktop.
Sources: apps/cli/README.md, apps/desktop/README.zh.md, npm @deepseek-ai/dsh.
FAQ
In DeepSeek Harness, choose by where you are and what you want to do. Heavy local work and file operations favor the CLI or desktop app; using it on another device such as a phone, tablet or second computer favors dsh web; scripting and automation require the CLI. They are shells over the same tool, not upgrade tiers, and plugins and data may be shared or separate depending on configuration.
In DeepSeek Harness, the main differences are where it runs and graphical capability. dsh web starts a local web service that a browser accesses, which suits cross-device and remote use; the desktop app is a local graphical application with more direct access to local files and system capabilities, and it is not subject to browser policy. Feature coverage varies by version, so check the capability you need before choosing.
In DeepSeek Harness, they coexist fine when they point at the same data directory and profile — terminal tasks in one, session review in the other. Watch for behavior differences when writing the same session data concurrently, and for version mismatches between the two entries. Unifying entry point and version avoids seeing different results on each side.
In DeepSeek Harness, yes, through dsh web: run the service on a computer and open it in the phone browser. Choose networking by scenario — direct access on the same LAN, or a reverse proxy with HTTPS for internet access. Nothing is installed on the phone, which also sidesteps the absence of a native mobile app.
In DeepSeek Harness, it depends on configuration. With the same data directory and profile, the DSH plugin list is shared. If entries point at different data directories, plugins are independent. Most reports of plugins vanishing when switching entries come from differing data directories, not from the entry point itself.
Related Terms
- entry point
- An entry point is a specific shell for using DeepSeek Harness: the command line, the desktop application, or the web UI (dsh web). They share session and plugin mechanics and differ in interaction, run location and available capabilities.— https://www.npmjs.com/package/@deepseek-ai/dsh
- profile
- A profile is a DeepSeek Harness unit isolating configuration and plugin sets. Multiple entry points pointing at one profile share plugins and configuration; pointing at different profiles creates separate environments.— https://github.com/deepseek-ai/deepseek-harness/blob/master/apps/cli/README.md
- dsh web
- dsh web is the DeepSeek Harness web entry point, starting a local web service accessed by a browser. Its main value is cross-device and remote use, at the cost of handling bind addresses, ports and access security.— https://github.com/deepseek-ai/deepseek-harness/blob/master/apps/cli/README.md
- desktop app
- The desktop app is DeepSeek Harness as a local graphical application running on the operating system. It accesses local files and system capabilities directly and is not constrained by browser policy, suiting graphical work and heavy local tasks.— https://github.com/deepseek-ai/deepseek-harness/blob/master/apps/desktop/README.zh.md
Sources
- deepseek-ai/deepseek-harness — apps/cli/README.md (CLI form and profile launch)· deepseek-ai (GitHub)
- deepseek-ai/deepseek-harness — apps/desktop/README.zh.md (desktop form and update path)· deepseek-ai (GitHub)
- npm — @deepseek-ai/dsh (official description: profile launch / plugin management / configuration inspection)· npm