Preface¶
The headless mode of DeepSeek Harness (dsh) is suitable for one-shot, submit-and-run tasks that write results to stdout. When continuous sessions, tool execution review, or on-the-fly follow-up questions are needed, using a browser directly interrupts the terminal flow. The dsh --profile tui plugin provides an interactive terminal client that brings the core capabilities of DeepSeek Harness to the command line.
Core Positioning¶
This is an out-of-tree profile bundle maintained by TheMcSwift under the MIT license. By mounting the tui profile, it adds a terminal chat interface to dsh, sharing the same agent state, settings, and plugins as the official Web client, without HTTP relay and without feature degradation.
Core Features¶
- Rendering capabilities: supports streaming Markdown, hierarchical coloring of reasoning blocks, code highlighting, TeX math formulas, and Mermaid diagrams.
- Tool execution visualization: displays tool execution cards, including terminal cards (exit codes), Read highlight cards, grep/glob grouped cards, web_search citation cards, and
run_codesub-invocation trees. Artifact files support OSC 8 links (Cmd+click to open). - Interaction: fully keyboard-driven, supports Tab focus ring and Enter expand/collapse, and supports session-level panels (goal / todo / jobs / workflow).
- Built-in documentation: installation ships with a
/tuioperation manual skill, viewable through the/menu or/skills. - Compatibility: this version is aligned with the breaking updates in dsh 0.1.2-alpha.5 (session event sequence / log offset refactoring, new settings registration surface, user-questions waterfall, etc.).
Installation and Enablement¶
Prerequisites: Node ≥ 22.19, pnpm.
Install the plugin:
dsh plugin --profile tui add @mcswift/dsh-tui
It is ready to use immediately after installation, does not modify the dsh source code itself, and does not apply dependency patches. The rendering engine pi is embedded as a vendored snapshot, with the version pinned to 0.84.1.
Typical Usage¶
Start a new session:
$ dsh --profile tui
Resume a specified session or the most recent session:
$ dsh --profile tui --resume <id>
$ dsh --profile tui -c
Switch view mode:
$ dsh --profile tui --fullscreen
Common slash commands include:
- Session control:
/new,/quit,/clone - Reasoning and configuration:
/effort(reasoning effort),/lang(language),/rate(rating),/export(export session log) - Model and permissions:
/model [provider/model],/permission [preset] - System inspection:
/config(provider management),/status,/tokens,/cost,/tui(operation manual)
Applicable Scenarios and Notes¶
- Applicable scenarios: continuously converse with the agent in the terminal, review the tool execution process, and quickly switch context or check session state.
- Runtime limitation: this TUI runs only on the local machine where
dshis installed; there is no remote mode. - Rendering mode: regular rendering is enabled by default, and main-screen output remains in the terminal scrollback; in-app search jump/scrolling is unavailable (use the terminal’s native Cmd+F search).
--fullscreenswitches back to viewport mode (the previous default mode). - Feature degradation: browser capabilities (images / drag and drop / settings forms) are downgraded to terminal forms (images → placeholder lines, settings page →
/config). - Version maintenance: the pi version is pinned (0.84.1 vendored snapshot), and upstream fixes must be followed manually.
Conclusion¶
DeepSeek-TUI is a supplementary solution for using DeepSeek Harness in a terminal environment. By reusing the core logic of dsh, it provides an interaction experience aligned with the Web client, suitable for developers accustomed to working in the terminal.
- GitHub: https://github.com/TheMcSwift/DeepSeek-TUI
- Plugin Directory: https://www.skillhub.cn/plugins/TheMcSwift/DeepSeek-TUI