npm·@deepseek-harness-tui/dsh-tuilicense·MITstatus·public betafeatured·DSH Official WeChat
dsh-TUI pixel whale girl

dsh-TUI

Claude Code-style fullscreen terminal interaction,the missing TUI piece for DeepSeek Harness.

Pixel-whale top bar, live status line, streaming thinking, double-tap Esc time travel, and a blue-white context progress bar with a TPS gauge. Zero core changes, pure plugin mounting — install and go, uninstall with no residue.

$npm install -g @deepseek-ai/dsh @deepseek-harness-tui/dsh-tui
Node ^22.19 / ≥24 · pnpm 10+ · Windows / macOS / Linux
dsh-tui — fullscreen · 120×36
DEEPSEEK'
HARNESS
deepseek-v4-flash · Max effort
D:\code\projects
Tip: /model to switch models · /help for commands · Tab for completion
Explore the Unexplored!
spatctx 8.9k/1.0M 0.9% 991k
deepseek-v4-flash · max · 8.9k→190master · projects · hi
no errors · 0 tools · thought 5s worked 0s · 🔥 9.1k? for shortcuts

↑ Simulated demo · colors follow the theme (mirrors the TUI's OSC 11 auto-detection)

//01CAPABILITIES

Core capabilities

More than good looks. dsh-TUI brings the complete Claude Code terminal experience to the DSH plugin system, with performance engineering for long sessions.

01

Terminal-native interaction

Streamed Markdown, structured tool cards, command and file completion, @ file references (complete anywhere in a message, file contents attached automatically on send), history search, message selection, inline / alternate-screen rendering modes, and one-tap Chinese / English switching via /lang.

Streamed Markdown@ file refsHistory searchCN / EN bilingual
02

Observable agent status

Live status line, segmented context progress, TPS gauge, cache hit rate, reasoning level, input / output tokens, and Git / session info — what the agent is doing, visible at a glance.

ctx ▓▓▓▓▓▓░░░░ 512.4k/1.0M51.2%
tps ▂▃▅▆▇█▇▅ 58cache 99.7%
Context progressTPS gaugeCache hit rate
03

Complete session workflow

/resume to restore, /new for a fresh session, /compact to compress, /export to export, /btw for side questions, model switching, and session rewind / fork time travel via double-tap Esc.

/resume/compactDouble-tap Esc rewind
04

Official DSH capabilities

Agent presets, Skills, MCP, Goals, Todos, sub-agents, and ask_user_question questionnaires — all connected through existing services or registries, no wheels reinvented.

Agent presetMCPSub-agents
05

Built for long sessions

Event-driven projection, differential terminal output, message virtualization, replay merging, and bounded caches — per-frame cost drops from O(entire session) to O(visible window); rendering and memory stop growing with the session.

Layout-level virtualizationDifferential renderingBounded caches
//02INTERFACE

Interface

Real screenshots, no filters. Gentle Mist Blue palette: mist blue carries only brand, focus, and highlights while body text stays neutral gray; on launch the TUI queries the terminal background via OSC 11 and picks the light / dark palette automatically.

splash.png
Splash — pixel-whale top bar · dual-shine wordmark · status line
Splash — pixel-whale top bar · dual-shine wordmark · status line
working-line.png
Working — tool cards · Todos panel · context progress bar + TPS gauge
Working — tool cards · Todos panel · context progress bar + TPS gauge
FEATURED BY OFFICIAL

Featured by the DeepSeek Harness official account

In a DeepSeek Harness official WeChat post, dsh-TUI was showcased as a beta user pick — the pixel whale took center stage on the official poster.

DeepSeek Harness official WeChat post featuring dsh-TUI
//03GETTING STARTED

One-command npm install

Prerequisites: a working terminal TTY, the official dsh CLI, and pnpm 10+; running models requires DEEPSEEK_API_KEY. After launch the plugin checks npm for new versions in the background — type /update to auto-update, restart, and resume the session.

1Install CLI + plugin globally
$npm install -g @deepseek-ai/dsh @deepseek-harness-tui/dsh-tui

The package ships the dsh-tui shortcut command.

2Launch
$dsh-tui

First run auto-initializes the dsh-tui profile (requires pnpm 10+).

3Resume the last session
$dsh-tui --resume

On Windows, the dsh-tui.cmd in the repo works exactly the same.

Alternative — manual profile installsh install.shordsh plugin --profile dsh-tui add @deepseek-harness-tui/dsh-tui
//04KEYBINDINGS

Shortcuts, all at your fingertips

On macOS, Ctrl+<key> also works as ⌘<key> (requires terminal support for the extended keyboard protocol: iTerm2 / kitty / WezTerm / ghostty / tmux); only Ctrl+C / Ctrl+D stay on Ctrl.

  • EnterSend (Shift+Enter for a newline); runs the selected item when the command menu is open
  • Ctrl+CInterrupt the current turn; press twice while idle to quit
  • Esc×2EscDouble-tap on empty input = time travel (rewind / fork)
  • Ctrl+OExpand / collapse details: full thinking, tool params and output
  • Ctrl+RSearch message history
  • /Full-text search within the session, n / N to jump between matches
  • TabCommand / @ file completion; directories can be drilled into
  • Ctrl+VPaste text; files / images copied in Explorer insert as file paths
  • ?Shortcut menu
  • Shift+↑Message selection mode; Enter expands a single message
MOUSE · FULLSCREEN
  • Drag selection
    In-app text selection; release to copy (OSC 52 + native fallback)
  • Double / triple click
    Select word / line — copied on select as well
  • Wheel
    Scroll the message list (fullscreen mode)
After copying, the selection clears automatically and a "Copied N characters" toast appears; press Esc mid-drag to cancel the selection without copying.
//05SLASH COMMANDS

The complete CC command set, replicated

All local commands go through official DSH pipelines. /plan and /goal come from the DSH command-registry plugin and merge into the / menu automatically.

Sessionsession
/new/resume/rename/clear/compact/export/trace
Statusstatus
/status/cost/doctor/config/init
Modelmodel
/model/thinking/tokens/theme/lang
Account / Policyaccount
/login/logout/permissions/add-dir/hooks/mcp/memory
Skillsskills
/audit/bug/review/practice/pr_comments/release-notes/vuln-check
Miscmisc
/agents/update/vim/terminal-setup/connect/help/exit
Registryregistry
/plan/goal
//06ARCHITECTURE

Zero core changes, pure plugin mounting

The TUI owns only interaction and presentation. The session log is the source of truth; model calls, tool execution, fork/resume, compaction, and persistence remain owned by DSH services.

dsh profiledsh-baseCordis patchAgent preset + DSH servicessession / eventChannel projectionReact componentsInk / Yoga rendererterminal

The highlight marks the dsh-TUI mount point: the Cordis patch layers on top of dsh-base and leaves no core patch behind when removed.

Gentle Mist Blue palette

Mist blue carries only brand, focus, interaction, and highlights while body text stays neutral gray; OSC 11 auto-detects the terminal background and falls back to dark when there is no response.

Event-driven rendering

The session/event stream drives incremental differential rendering; scroll state is maintained independently and terminal output commits only diffs.

Layout-level virtualization

Off-screen message rows render as measured-height placeholders whose subtrees skip layout entirely — per-frame cost for long sessions is O(visible window).

Context progress bar + TPS gauge

Largest-remainder segmented coloring plus multi-level abbreviated readouts; streaming 1/8-cell gauge, min-max sparkline, and speed-semantic colors (≥50 green / ≥20 yellow / <20 red).

The working-activity ecosystem

The status line consumes log-only activity/status events from dsh-working-activity — the same data source as the Web UI.

Security boundary

No separate sandbox: the TUI inherits the file, shell, sandbox, and approval policies of the current DSH profile; check the profile config first in environments with sensitive credentials.

//08FREQUENTLY ASKED QUESTIONS

Frequently asked questions

Positioning, installation, platform support, and plugin boundaries of dsh-TUI.

What is dsh-TUI?

dsh-TUI is a Claude Code-style fullscreen terminal interface plugin for DeepSeek Harness, with streamed Markdown, structured tool cards, session management, live agent status, and terminal-native interaction.

How do I install dsh-TUI?

Get Node.js ^22.19 or version 24+ and pnpm 10+, globally install the official dsh CLI and the dsh-TUI plugin, then run dsh-tui to start. Running models also requires a configured DEEPSEEK_API_KEY.

Which operating systems are supported?

Windows, macOS, and Linux are supported. Terminal support for the extended keyboard protocol, clipboard, and OSC 52 may vary.

Does installing the plugin modify the DeepSeek Harness core?

No. dsh-TUI mounts as a plugin through a Cordis patch; sessions, model calls, tool execution, and persistence stay with the existing DSH services, and no core patch remains after uninstall.