dsh-TUI is a control surface for DeepSeek Harness
dsh-TUI 0.10.2 is an interface plugin, not a standalone coding agent. DeepSeek Harness still owns models, tools, permissions, and persistence. The plugin replaces the terminal experience with streamed Markdown, tool cards, a clickable timeline, session switching, context use, and token status. That distinction decides whether the project fits: existing DSH users gain a much denser workspace, while everyone else must adopt the runtime underneath it too.
The interface goes well beyond a prettier prompt. It can preview Kitty or Sixel images, render Mermaid fences as terminal diagrams, accept a VS Code selection, and show background jobs in one session manager. The pixel whale uses 22 hand-drawn frames, which tells you something about the project's priorities. There is care in the interface, but the useful part is the amount of agent state it keeps visible during a long session.
Session commands expose the runtime model instead of hiding it. /model creates a fork and leaves the prior session available, while /rewind, /fork, /compact, and /export make branching or saving work explicit. Background jobs remain inside the TUI process and stop when that process exits, although their logs survive. The interface is therefore a good session console, not a durable job supervisor that continues independently after the terminal closes.
Node 22.19 and a DSH profile are the starting line
The documented source requirements are Node ^22.19 or >=24, pnpm 11, DeepSeek Harness, and a configured DeepSeek API key. A global npm install supplies the dsh-tui and dst launchers, while the first run initializes a named DSH profile. The README also recommends the registry package rather than a Git URL because the source tree contains workspace dependencies and a vendored submodule.
That profile relationship creates a compatibility boundary. Open issue 940 reports that dsh-TUI 0.10.2 fails before drawing its interface when paired with DSH 0.1.6-alpha.1 or alpha.2. The report traces the failure to a worker-thread package that is not published on the 0.1.6 line. The issue does not show every DSH version failing, but it gives early adopters a concrete reason to pin a known working combination instead of upgrading the core and plugin independently.
What happened when we ran it
Our sandbox installed commit 7646ef6 in 33 seconds, adding 332 packages and occupying 236 MB. The checkout contained 752 files and about 134,612 lines of source. Installation succeeded, so this was not a missing-network or missing-package failure. Compilation stopped later, during the repository's own build command.
The build exited with code 1 after 41 seconds. Its log said the project was configured for pnpm 11.21.0 while Corepack had invoked pnpm 11.23.0. pnpm refused to switch versions under Corepack and told the user to align packageManager with devEngines.packageManager, invoke pnpm directly, or change the failure policy. The log did not show a TypeScript compiler error, so we are not assigning one.
There was no test script or target in the measured checkout. We skipped tests for that reason. The scan found 3 CI workflow files and a workspace monorepo, but no Dockerfile or tests directory. Those facts describe commit 7646ef6 in our 3-CPU, 8 GB, unprivileged Node 22 container. They do not prove what a later v0.10.2 checkout would do.
The permission preset matters more than the whale
The README warns that the Windows profile defaults to danger-full-access with approval set to never. dsh-TUI does not add a sandbox of its own; it inherits the active DSH profile's filesystem, shell, and approval rules. Before opening a repository that contains credentials, a Windows user should inspect that profile and narrow it. A visual permission selector is still presenting the underlying policy, not replacing it.
Platform behavior also reaches into everyday use. Clipboard paste needs platform clipboard tools, bitmap previews depend on terminal support, and background sessions stop when the TUI process exits. Open issue 957 reports garbled Chinese output from native Windows tools on systems using code page 936. Issue 969 describes a separate non-TTY problem in v0.10.2 where --help writes 0 bytes and stays alive, which is a poor fit for automated discovery scripts.
A September 23 push shows activity, not compatibility guarantees
GitHub recorded the last push on September 23, 2026, and the latest release was v0.10.2 on September 17. That release addressed long-conversation rendering, rewind queues, session recovery, and Windows Terminal display loss. The repository had 3,155 stars and 62 open issues and pull requests when fetched. The combined count includes pull requests, so it should not be read as 62 confirmed bugs.
The same activity cuts both ways. Fixes are landing quickly, while reports about DSH alpha compatibility, Windows text decoding, and non-TTY behavior are current. Our 33-second install shows that trying the source is cheap. The failed 41-second build shows that the toolchain contract is exact. dsh-TUI makes the most sense as a pinned interface for a DSH user who wants its session model, not as the simplest route into terminal coding agents.

