dshbase

Blog · Review

dsh-web-ui reviewed: one command turns the bare DSH console into a full workbench

August 30, 2026 · dshbase · rewritten field note

Rewritten and analysed from the WeChat article on 公众号 Z的系列回忆录 (2026-08-24) about the agent ecosystem and the dsh-web-ui bundle.

Source clue (WeChat via Sogou; not a verbatim reprint) — Rewritten and analysed from the WeChat article on 公众号 Z的系列回忆录 (2026-08-24) about the agent ecosystem and the dsh-web-ui bundle.

DeepSeek Harness ships with a web console that is, generously, a chat box. The community's loudest complaint about the Developer Preview was never model quality — it was that the interface gave people no reason to stay. The most ambitious answer so far is dsh-web-ui (repo now renamed dsh-web, npm packages still under the old name), a plugin bundle by developer zhu1090093659 licensed Apache-2.0, with more than 90 contributors.

What the bundle actually adds

  • A five-column task board — backlog, to-do, in progress, done, failed — with cron scheduling that keeps running after you close the browser tab.
  • A Git graph panel with branch switching and visual commit history, plus a right-hand dock holding the file explorer, editor, terminal, and a browser pane.
  • SSH remote operations: a web terminal built on xterm.js, SFTP transfer, port forwarding, and cluster-wide command execution that can be triggered straight from a chat.
  • Mobile remote access via QR pairing with SSE sync and an optional public tunnel.
  • A vision bridge (describe_image) that feeds screenshot evidence to text-only models through Qwen-VL, GLM-4V, GPT-4o, or a local Ollama.
  • A skin center with 19 themes, from a Windows XP Luna recreation to a Matrix-style dark palette, each previewable before you commit.

The engineering is more serious than it looks

Under the cosmetics: PixiJS/WebGL renders the animated whale pet and live wallpapers, SSE pushes mobile updates, Playwright drives end-to-end tests, and commits follow Conventional Commits. For a community project growing this fast, that restraint is unusual — and it matters for one reason: a plugin bundle that is well engineered is still a bundle that runs with your dsh process privileges.

Audit before you install

Two facts deserve more attention than they get. First, the honest install path is one command — dsh plugin --profile web add @linxin666/dsh-web-ui-all@latest — followed by a full process restart; refreshing the page is not enough. Second, SSH credentials are stored in plaintext under ~/.dsh/dsh-ssh.json (file mode 0600). On a personal machine that is a trade-off; on a shared or work machine it is a finding to report before it becomes an incident.

Our checklist for any bundle install: skim the repo's recent commit history, confirm the license, pin an exact version instead of latest, and if you only want themes, install just the skin-center package rather than everything.

Verdict

dsh-web-ui is the strongest argument yet that Harness's everything-is-a-plugin claim is real: a third party re-skinned the entire surface — task flow, Git, terminals, mobile — without touching Harness source. If you run dsh daily it earns its install. Just treat it as what it is: roughly two dozen plugins arriving in one command, holding your shell and file-system keys.

On dshbase

Before installing random GitHub plugins, check the verified directory and audit notes.

All articles →