围绕 DeepSeek V4 打造的终端编程助手。流式思考、1M token 上下文、审批门控、Auto 路由,在你的终端里读写文件、执行命令、管理 Git、编排子代理。
从 Auto 智能路由到 Durable 持久任务队列,DeepSeek TUI 不是一个简单的 DeepSeek 包装器,而是深度围绕 V4 模型经济学与能力设计的编程代理框架。
--model auto 会先用 Flash 做一次轻量路由调用,自动为每个 turn 选择 Pro/Flash + thinking off/high/max 的最优组合。
实时渲染 V4-Pro 的 reasoning_content,像看模型"边想边写"。支持空文本 reasoning → tool-call 的复杂 turn。
文件读写、Shell 执行、Git 管理、Web 搜索(DuckDuckGo + Bing 回退)、apply-patch、sub-agents、MCP、RLM。
内置 prefix-cache 感知的成本统计,缓存命中费用仅为未命中的 1/10;支持手动 /compact 与自动压缩。
Plan(只读探索)/ Agent(默认审批)/ YOLO(自动批准)按工作场景快速切换。
用 Shift+Tab 在 off → high → max 之间循环切换,为任务量身匹配算力预算。
长任务检查点、一键 resume 继续;tool-output 溢出会落盘到 ~/.deepseek/tool_outputs。
基于 side-git 的 turn 前/后快照,/restore 与 revert_turn 可回退改动,绝不污染你的 .git。
后台任务可在 TUI 重启后继续运行,适合长耗时批处理/分析流。
deepseek serve --http 将 agent 暴露为无头 API,可编排到 CI 或其他系统。
接入 Model Context Protocol 服务器扩展工具集,支持 stdio 传输。
并发 1–16 个 Flash 子代理做批量分析/并行推理,性价比极高。
每次修改后调用 rust-analyzer、pyright、tsserver、gopls、clangd 获取错误/警告并喂回模型。
逐 turn 与会话级别的 token 用量、缓存命中/未命中拆分与费用估算。
从 GitHub 可组合、可安装的指令包;无需后端服务。.agents/skills、.claude/skills、全局目录自动发现。
DeepSeek TUI 发行为 Rust 原生二进制:dispatcher 命令 deepseek 与伴生 TUI 运行时 deepseek-tui。选择任一熟悉的安装路径即可。
# 推荐路径 —— 无需 Rust 工具链,自动下载预编译二进制
npm install -g deepseek-tui
# 国内加速
npm install -g deepseek-tui --registry=https://registry.npmmirror.com
deepseek --version
# 需要 Rust 1.88+,无需 Node
cargo install deepseek-tui-cli --locked # 提供 deepseek
cargo install deepseek-tui --locked # 提供 deepseek-tui
brew tap Hmbown/deepseek-tui
brew install deepseek-tui
scoop update
scoop install deepseek-tui
deepseek --version
docker run --rm -it \
-e DEEPSEEK_API_KEY \
-v "$PWD:/workspace" \
ghcr.io/hmbown/deepseek-tui:latest
git clone https://github.com/Hmbown/DeepSeek-TUI.git
cd DeepSeek-TUI
cargo install --path crates/cli --locked
cargo install --path crates/tui --locked
按顺序完成这 5 步,即可从"从未听说过"到"在终端里让 DeepSeek 帮你写代码"。
任选一种安装方式;推荐 npm(无需额外工具链)。
npm install -g deepseek-tui
deepseek --version # 应显示 deepseek 0.8.25
到 platform.deepseek.com 注册账号、创建 API Key(新用户通常有免费额度)。
# 方法 A:交互式保存到 ~/.deepseek/config.toml(推荐)
deepseek auth set --provider deepseek
# 方法 B:环境变量
export DEEPSEEK_API_KEY="sk-xxxxxxxxxxxxxxxx"
# 方法 C:Windows PowerShell
$env:DEEPSEEK_API_KEY="sk-xxxxxxxxxxxxxxxx"
确认版本、认证、MCP、Skills、存储目录全部就绪。
deepseek doctor
deepseek auth status
在你要协作的项目根目录执行。默认进入 Agent 模式,每个文件修改都需审批。
cd your-project
deepseek --model auto # 让 TUI 自动选模型与思考等级
# 或显式指定
deepseek --model deepseek-v4-pro
deepseek --provider fireworks --model deepseek-v4-pro
在输入框写任意需求,如"帮我读一下 README 并总结要点"。模型会先给 Plan,你按 Enter 审批每个工具调用。完成后用 Ctrl+C 两次退出。
按"你对风险的容忍度"选择运行模式;用 Shift+Tab 的顶部栏指示器快速切换。
严格只读:可读文件、搜索代码、分析结构、产出方案,但不能执行 Shell、写文件、提交 Git。
每一个副作用操作都会弹出批准框,你看到 diff / command 后再决定 yes/no。
关闭审批弹框,tool call 直接执行。v0.8.8+ 修复了 git -C 的信任检查。
左侧为 dispatcher CLI 子命令(在 shell 中运行),右侧为 TUI 内斜杠命令(在 TUI 输入框键入 / 触发)。
| 命令 | 作用 |
|---|---|
deepseek | 启动 TUI(默认当前工作区) |
deepseek --model auto | 启动并启用 Auto 路由 |
deepseek --model deepseek-v4-pro | 固定模型启动 |
deepseek --provider <name> | 切换供应商:deepseek / nvidia-nim / openrouter / novita / fireworks / sglang / vllm / ollama / openai |
deepseek --version | 打印版本 |
deepseek doctor | 完整环境自检(版本、auth、MCP、Skills、存储) |
deepseek auth set --provider <name> | 保存 API Key 到 ~/.deepseek/config.toml |
deepseek auth status | 查看当前凭据来源(config/keyring/env) |
deepseek auth clear --provider <name> | 清除保存的 Key |
deepseek update | 自升级(带 SHA-256 校验) |
deepseek serve --http | 启动 HTTP/SSE 无头运行时 |
deepseek mcp init | 生成 MCP 配置模板 |
deepseek setup --mcp | 交互向导初始化 MCP |
deepseek setup --tools | 脚手架 ~/.deepseek/tools |
deepseek setup --plugins | 脚手架 ~/.deepseek/plugins |
deepseek resume [session-id] | 恢复上次会话 |
| 命令 | 作用 |
|---|---|
/help | 显示所有斜杠命令 |
/model | 切换模型(弹出选择器) |
/model auto | 启用 Auto 路由 |
/model deepseek-v4-pro / deepseek-v4-flash | 切换到指定模型 |
/mode plan / /mode agent / /mode yolo | 切换三种运行模式 |
/thinking off|high|max | 设置思考强度档位 |
/compact | 手动压缩上下文,节省 token |
/clear | 清空当前会话 |
/new | 开新会话 |
/resume | 恢复上一会话 |
/save [name] | 显式保存会话检查点 |
/restore | 回滚 side-git 快照到上一 turn 前 |
/diff | 查看当前未提交的工作区差异 |
/cost | 显示 token 用量与费用 |
/context | 查看上下文占用与缓存命中率 |
/mcp | 管理 MCP 服务器(reload/list) |
/mcp reload | 改动 mcp.json 后热重载 |
/skills | 列出/启用/禁用 Skills |
/memory | 编辑跨会话 User Memory |
/lang zh-Hans|en|ja|pt-BR | 切换界面语言 |
/theme | 切换主题 |
/quit | 退出 TUI |
DeepSeek TUI 是纯键盘驱动的。掌握这些快捷键,手可以不离开键盘。
| 快捷键 | 功能 |
|---|---|
| Enter | 提交输入 / 批准审批 |
| Shift+Enter | 输入框换行 |
| Ctrl+Enter | 强制提交(替代方案) |
| Esc | 中断当前 turn / 取消审批 |
| Ctrl+C | 一次=中断,两次=退出 |
| Ctrl+S | 把当前草稿存到 composer stash |
| Tab | 自动补全 / 切换面板焦点 |
| Shift+Tab | 切换推理强度档位 off → high → max |
| ↑ / ↓ | 历史消息导航 |
| PageUp / PageDown | 滚动脚本区 |
| Ctrl+L | 清屏(保留会话) |
| Ctrl+R | 搜索历史消息 |
| / | 进入斜杠命令模式 |
| @ | 快速引用文件 / 符号 |
当你已经熟悉基础操作后,这些是真正解锁 DeepSeek TUI 威力的手柄。
# NVIDIA NIM
deepseek auth set --provider nvidia-nim --api-key "KEY"
deepseek --provider nvidia-nim
# Fireworks
deepseek --provider fireworks --model deepseek-v4-pro
# 自建 vLLM
VLLM_BASE_URL="http://localhost:8000/v1" \
deepseek --provider vllm --model deepseek-v4-flash
在 TUI 中直接让 agent 使用 rlm_query,它会并发最多 16 个 Flash 子代理完成批量分析。
# 典型指令(自然语言)
用 rlm_query 并发分析 src/ 下
所有 .rs 文件里是否使用了
unsafe,并逐文件汇总
# ~/.deepseek/mcp.json
{
"servers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@mcp/server-fs"]
}
}
}
改完执行 /mcp reload。
TUI 按下列顺序自动发现 skills(截断时优先工作区):
./skills/./.agents/skills/./.claude/skills/~/.agents/skills/~/.deepseek/skills/deepseek serve --http --port 8787
# 客户端调用
curl -N http://localhost:8787/v1/chat \
-H "Content-Type: application/json" \
-d '{"message":"..."}'
持久偏好会注入到系统提示。在 TUI 内 /memory 编辑,或直接改:
# ~/.deepseek/memory.md
- 始终使用繁体中文输出
- 禁止修改 .env 文件
- 代码注释全部英文
| 现象 | 解法 |
|---|---|
| MISSING_COMPANION_BINARY | 两个二进制都必须在 PATH:deepseek + deepseek-tui |
| 国内 npm 慢 | --registry=https://registry.npmmirror.com |
| 鉴权 401 / 403 | deepseek auth clear → auth set,并检查 env 是否残留 |
| API 连接失败 | deepseek doctor 查看 base_url,必要时自定义 OPENAI_BASE_URL |
| CJK 粘贴换行变 Enter(v0.8.24) | 升级到 v0.8.25+(#1342 已修复) |
| macOS Seatbelt 阻止 MCP | 编辑 sandbox_mode 后手动 /mcp reload |
| token 费用高 | /cost 查看明细,/compact 压缩,或切 Flash + thinking off |