How to use dsh-TUI
DeepSeek Harness is a Claude
This article is auto-derived from indexed fields (wiki / faq / compatibility_json), not freshly AI-generated.
This article is derived from the plugin's already-indexed fields (wiki / faq / compatibility_json / readme), not freshly generated by AI. Source field is noted at the end of each section.
Quick start
dsh-TUI
— source: plugin_wiki.wiki_content
Install & verify
dsh plugin --profile web add @deepseek-harness-tui/dsh-tui
Run the command above in your DSH Web Profile. Then enable the plugin in the plugin list.
— source: plugins.install
Key points
-
- 终端原生交互:流式 Markdown、结构化工具卡、命令与文件补全、
@文件引用
- 终端原生交互:流式 Markdown、结构化工具卡、命令与文件补全、
-
- 可观察的 Agent 状态:实时工作状态、上下文分段进度、TPS、缓存命中率、
-
- 完整会话工作流:
/resume、/new、/compact、/export、/btw侧问、
- 完整会话工作流:
-
- DSH 官方能力接入:Agent preset、Skills、MCP、Goals、Todos、子代理、
-
- 为长会话设计:事件驱动投影、差分终端输出、消息虚拟化、回放合并与有界缓存,
— source: plugin_wiki.readme_en (fallback readme_raw)
FAQ
What is the relationship between this plugin and the official web client? Will they conflict?
No conflict. dsh-TUI is a Cordis bundle plugin that sits on top of dsh-base, using the same Agent, model, session, and tool services; the official dsh-web-app can also attach to the same profile, with session/event being the shared true source, and TUI reads the same session log as web.
Will uninstalling the plugin lose existing sessions? Will it modify the DSH core?
No. dsh-TUI is a pure plugin mount (README.md:21) and does not modify the DeepSeek Harness core; after uninstallation, the core remains unmodified. TUI's own preferences (theme/language/preset etc.) continue to be stored in ~/.dsh-tui/, which can be manually deleted.
What environment variables are required to run?
DEEPSEEK_API_KEY is required; DEEPSEEK_BASE_URL is set when using a custom compatible endpoint (cordis.patch.yml:28-30). Optional variables include DSH_TUI_LANG (zh/en), DSH_TUI_THEME, DSH_TUI_PERSONA, DSH_TUI_PRESET, DSH_PERMISSION_MODE, etc., see configuration reference for details.
What to do when the startup prompts 'dsh not found' or 'pnpm not found'?
The dsh-tui launcher first probes dsh --version; if not found, it exits and prompts npm install -g @deepseek-ai/dsh; when entering a profile for the first time, it also probes for pnpm, and if missing, prompts npm install -g pnpm (bin/dsh-tui.js:46-54 / docs/getting-started.md:228-231). pnpm 9 will cause immediate exit due to dependency hoisting issues; please upgrade to pnpm 10+.
Why does it refuse to start when my launcher (globally installed) and the dsh-tui in the profile have mismatched versions?
This is issue #183 (bin/dsh-tui.js:84-98): when the global launcher is one minor version newer than the package in the profile, the CLI applies the launcher's bundle patch to the old package, and subpath exports may not resolve, causing guaranteed crash. Fix: run dsh plugin --profile dsh-tui add @deepseek-harness-tui/dsh-tui@<launcher version> to align them.
What happens to the current session when switching /model?
/model continues the chat via session fork, not in-place replacement. The old session is fully preserved in the /resume list, and the new session routes to the model you selected (docs/architecture.md:122-123). The selection is persisted in ~/.dsh-tui/model.json, and survives restarts and /new.
How do I use the copy selection in terminal? Is mouse supported?
With fullscreen: true (off by default, opened by profile patch), dragging the selection area immediately copies (OSC 52 + wl-copy/xclip/xsel fallback, tmux uses load-buffer -w), and after copying, the selection is automatically cleared and the character count is shown; you can set DSH_TUI_DISABLE_MOUSE to temporarily disable (src/utils/fullscreen.ts:5-10).
Can it run on Windows? What are the pitfalls?
Yes, but there are two differences: clipboard paste uses PowerShell Get-Clipboard, and image attachments are inserted as temporary file paths rather than embedded blocks; there is currently no Windows sandbox backend, so the profile defaults to danger-full-access on Windows without pop-up approval, so please confirm the patch before starting in sensitive environments (docs/architecture.md:108-111).
— source: plugin_wiki.faq_json
Compatibility
- DSH: 0.1.0-rc.6+
- Node: ^22.19.0 || >=24.0.0
- Platforms: macOS, Windows, Linux
— source: plugin_wiki.compatibility_json
Pitfalls
Review the upstream repo before installing. This guide is auto-derived from indexed fields and may lag the latest release. If anything contradicts the official docs, treat the upstream source as authoritative.
— source: general rule