DeepSeek Guide — whale logoDeepSeek GuideFAN SITE
TUTORIAL3 MIN READ

DeepSeek Harness Web UI: Complete Guide to dsh Web

UPDATED: AUG 16, 2026AUTHOR: INDEPENDENT FAN GUIDE
OVERVIEW

DeepSeek Harness's local Web UI at 127.0.0.1:3080: launch with dsh web, choose a workspace, trace every run in Trajectory view, and manage sessions.

01

What the Web UI Is

The dsh Web UI is the default interface of DeepSeek Harness — a local application served at 127.0.0.1:3080 that gives you the full agent experience without touching the CLI[1].

It is a plugin too, like everything else in the harness. The default bundle ships it, and community skins exist (dsh-web-ui adds a task board and git graph)[2].

02

Launching the UI

One npm command starts the Web UI: npx @deepseek-ai/dsh web. No clone, no build, no configuration required[1].

NOTE

dsh web is an alias for dsh --profile web. The first launch auto-initializes the web profile[1].

example_code.py
# One-line launch (needs Node.js installed)
npx @deepseek-ai/dsh web

# Open http://127.0.0.1:3080 in your browser

# Or from source
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web
03

Workspaces: The Launch-Directory Trap

The dsh process uses its launch directory as the default filesystem location. In the Web UI you must explicitly choose a workspace (your project directory) before opening a session — starting from the wrong directory leaves you with an empty workspace[1].

This is the single most common confusion in early hands-on reports: users launch dsh inside one folder, expect another, and see no files. Set the workspace explicitly in the UI[3].

Tip: launch dsh from a neutral directory (for example your home folder), then use the workspace chooser to open the project you intend to edit. That keeps the launch directory decoupled from the session root.

  • Web UI flow: launch dsh web → Choose workspace → open a session
  • The workspace becomes the agent's file root
  • Launch dsh from a neutral directory, then pick the project in the UI
Sponsored
04

Trajectory View: Audit Every Run

Every run is traceable. dsh records everything the model sees in an append-only session log: system prompts, reasoning, tool calls and results, subagent scheduling, and every context injection[4].

The Trajectory view lets you inspect these records by source. That means you can see exactly what a model was shown before it acted — the audit trail competitors do not expose.

For teams with compliance or cost-audit needs, this is a headline feature: the full input stream is inspectable after the fact[4].

Concretely: open a finished session, switch to Trajectory, and filter by source to see only system prompts, only tool results, or only subagent scheduling events. Every entry links back to the session timeline, so a suspicious tool result is one click from its cause.

05

Sessions: Resume, Fork, Search, Replay

All session operations run on the same event stream that powers the Trajectory view[4].

  • Resume — continue a session where it stopped
  • Fork — branch a session into a new direction
  • Search — find any recorded tool call or context injection
  • Replay — re-run the recorded event stream
Sponsored
06

Custom Ports & Profiles

The port is an app parameter, and launcher flags come before app parameters[1].

Profiles isolate plugin sets and configuration: a dedicated profile per project or per experiment keeps the UI clean. Community projects like deepseek-harness-desktop wrap the Web UI in a desktop shell[2].

Prefer keyboard-driven work? The community dsh-TUI plugin offers a Claude Code-style terminal UI as an alternative[2].

NOTE

Next steps: wire external tools through the MCP setup guide, or extend the UI itself with community plugins.

example_code.py
# Run the web UI on a custom port
dsh --profile web --port 8080

# Inspect the merged config tree without launching
dsh --dump-config
Sponsored
Sponsored