
gxinxing/deepseek-harness-tui
70Last commit Aug 13, 2026
deepseek-harness-tui DSH plugin
deepseek-harness-tui provides a zero-chrome terminal chat interface for DeepSeek models, running as a plugin within the DeepSeek Harness (dsh) CLI. It features tool call folding, thinking trace folding, adaptive theming based on your terminal background, and proper Markdown rendering. The UI is bottom-anchored, showing the latest transcript content at all times.
How to install the deepseek-harness-tui DSH plugin
dsh plugin --profile tui add /path/to/deepseek-harness-tuiCopying does not run this command. Review the repository and version before installing the deepseek-harness-tui DSH plugin.
deepseek-harness-tui DSH plugin data source
deepseek-harness-tui DSH plugin snapshot date: Aug 16, 2026
discovered
What the deepseek-harness-tui DSH plugin can do
- Terminal-native UI with no chrome, using Ink (React for terminals)
- Tool calls are folded into compact cells showing status, duration, and truncated output
- Theme adapts to terminal background via OSC 11 probe, with optional manual override via DSH_TUI_BG
- Thinking trace can be toggled with Ctrl+T, and the current turn can be interrupted with Esc
- Markdown rendering preserves headers, fenced blocks, and inline code with correct CJK/emoji wrapping
- Live viewport is bottom-anchored, with a braille spinner and elapsed timer during busy state
Where the deepseek-harness-tui DSH plugin fits
- Interacting with DeepSeek models in a terminal environment without leaving the command line
- Monitoring and reviewing tool call outputs in a structured, non-scrollable format
- Folding and unfolding the model's reasoning trace to focus on the final answer
- Quickly interrupting a long-running turn to adjust the prompt or cancel
- Using the TUI as a lightweight, pluggable chat interface for the DeepSeek Harness framework
Who the deepseek-harness-tui DSH plugin is for
- Developers who prefer terminal-based workflows and want a native chat experience for DeepSeek models
- Users of the DeepSeek Harness CLI who need a richer interactive interface than the default command-line
- Terminal enthusiasts who want a minimal, themed chat UI that respects their terminal configuration
deepseek-harness-tui DSH plugin limitations
- Requires Node.js ≥ 20 and the DeepSeek Harness CLI to be installed globally
- Depends on the TokenDance gateway and a valid API key; no other model providers are supported out of the box
- The tool-call delta fix for TokenDance must be reapplied after each dsh upgrade (until upstreamed)
- Only runs in a terminal; no graphical or web interface is provided
- The plugin is early-stage (~800 lines of UI) and may have limited features compared to full chat applications
deepseek-harness-tui DSH plugin: from the repository README
Quoted from the gxinxing/deepseek-harness-tui README, the upstream source of the deepseek-harness-tui DSH plugin. Copyright remains with the original authors.
**An interactive terminal chat for DeepSeek Harness — terminal-native style, built with Ink (React for terminals).** Give it a TokenDance key and a `dsh` install; run `dsh --profile tui` and you get a zero-chrome terminal chat with DeepSeek models: bottom-anchored transcript, tool calls folded into cells, thinking folding, and a theme that adapts to your terminal via OSC 11. It's a thin, readable plugin (~800 lines of UI) — not a re-implementation of the harness. [English](README.md) · [简体中文](README.zh-CN.md) [](https://github.com/gxinxing/deepseek-harness-tui) [](LICENSE) [](https://github.com/deepseek-ai/deepseek-harness)  ## Install Requires **Node.js ≥ 20** and the [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) CLI: ```bash npm install -g @deepseek-ai/dsh # the harness (no Homebrew tap yet) git clone https://github.com/gxinxing/deepseek-harness-tui c
Read the full READMERepository license: MIT
deepseek-harness-tui DSH plugin questions
How do I install deepseek-harness-tui?
First, you need Node.js 20+ and the DeepSeek Harness CLI installed globally via `npm install -g @deepseek-ai/dsh`. Then clone this repository, run `pnpm install` in the directory, and finally register the plugin using `dsh plugin --profile tui add /path/to/deepseek-harness-tui`. You also need to add the headless plugin with `dsh plugin --profile tui add @deepseek-ai/dsh-headless`.
Do I need a TokenDance API key?
Yes, deepseek-harness-tui routes all LLM requests through the TokenDance gateway. You must set the environment variable `TOKENDANCE_API_KEY` or add it to `~/.dsh/.credentials.yaml` with proper permissions (0600). The default model is `deepseek-v4-flash`, and you can switch to `deepseek-v4-pro` by editing the provider settings.
Why does the tool call area show 'unknown tool' errors?
This is a known issue with the TokenDance gateway. The stock `@deepseek-ai/dsh-llm-deepseek` adapter overwrites tool call IDs with empty strings. You need to apply a one-time patch in `node_modules/@deepseek-ai/dsh-llm-deepseek/lib/index.js` by changing `if (call.id !== void 0)` to `if (call.id)` and similar for the function name. This patch is lost on dsh upgrade, so you must reapply it after upgrading.
How do I interrupt a running response?
Press the `Esc` key at any time during a turn. The harness will cancel the current agent call via `agent.cancel({ kind: 'user' })`. This is useful if the model is generating too long or you want to change your prompt.
Can I change the theme colors?
The theme is automatically derived from your terminal background color using OSC 11 probes. Message tints and code chips are blended with 12% white (on dark backgrounds) or 4% black (on light backgrounds). You can force a specific background color for testing by setting the environment variable `DSH_TUI_BG` to a hex color like `#ffffff`.