xing-shuyin/ds-web-ui

My DeepSeek Harness Web UI

A web chat interface for DeepSeek Harness — the agent runs out-of-process via the official DSH stdio JSON-RPC runtime (pure Node, bundled) and streams events to the browser over WebSocket. It supports chat with thinking blocks and tool calls, file attachments, a built-in terminal and model switching; the UI is faithfully ported from pi-web-ui.

Web UI Enhancements ★ 2 updated 2026-08-16 ✅ runtime-tested
View on GitHub ↗

Install

npm i -g ds-web-ui

npm package ds-web-ui 0.1.18 (registry-verified 2026-09-10; registry repository field -> github.com/xing-shuyin/ds-web-ui). npx --yes ds-web-ui runs it without installing. Start with ds-web-ui (defaults to http://localhost:8989); update with npm i -g ds-web-ui@latest and uninstall with npm uninstall -g ds-web-ui.

Compatibility

Requires Node.js >= 22.19 and a valid DeepSeek API key (DEEPSEEK_API_KEY, ~/.ds-web/dsh-key.json, or reused from ~/.pi/agent/auth.json). Port precedence: --port > DS_WEB_PORT > PORT > 8989.

Details

Recent updates

Session data lives in ~/.ds-web (or DS_WEB_DATA_DIR) and survives uninstall/upgrade. The README documents running it as an auto-start service with pm2, since there is no built-in server subcommand yet.

FAQ

How do I install ds-web-ui?
Run: npm i -g ds-web-ui (or npx --yes ds-web-ui to run without installing), then start it with ds-web-ui — it defaults to http://localhost:8989.
How is the model configured?
Set the DeepSeek API key via the DEEPSEEK_API_KEY environment variable, ~/.ds-web/dsh-key.json, or it is reused automatically from ~/.pi/agent/auth.json.
Will I lose my chats if I uninstall?
No. Session data lives in ~/.ds-web (or DS_WEB_DATA_DIR) and survives uninstall and upgrade.

Alternatives

liustack/modlens · omdsh-dev/DSH-better-sidebar · ccch1mneyyy/dsh-TUI

More plugins in Web UI Enhancements

Browse more in Web UI Enhancements

Guides for Web UI Enhancements plugins