← 返回日报
🌐 机器翻译 · DeepSeek · GitHub

Hmbown DeepSeek-TUI


Hmbown DeepSeek-TUI

DeepSeek TUI 是一款终端原生编码代理,基于 DeepSeek V4 的 100 万 token 上下文和前缀缓存构建。单个二进制文件,无需 Node/Python 运行时——开箱即用,内置 MCP 客户端、沙箱和持久化任务队列。

简体中文 README

npm i -g deepseek-tui

它是什么?

DeepSeek TUI 是一款完全在终端中运行的编码代理。它让 DeepSeek 的前沿模型直接访问你的工作区——读取和编辑文件、运行 shell 命令、搜索网络、管理 git 以及编排子代理——全部通过快速、键盘驱动的 TUI 完成。

专为 DeepSeek V4(deepseek-v4-pro / deepseek-v4-flash)打造,支持 100 万 token 上下文窗口和原生思维模式(思维链)流式输出。在处理你的任务时,实时观察模型的推理过程。

主要特性

DeepSeek TUI 的架构遵循 dispatcher → TUI → engine → tools 模式。deepseek CLI 二进制文件是一个轻量级调度器,解析子命令并委托给 deepseek-tui 配套二进制文件进行交互式会话。TUI 运行基于 ratatui 的界面,与执行代理循环的异步引擎通信:用户输入通过流式客户端(兼容 OpenAI 的 Chat Completions)流向 LLM,从响应中提取工具调用并通过类型化工具注册表(shell、文件操作、git、网络、子代理、MCP)进行分发,结果流式返回转录。在后台,引擎管理会话状态、轮次追踪和持久化任务队列。LSP 子系统(crates/tui/src/lsp/)通过生成语言服务器(rust-analyzer、pyright 等)并在下一步推理前将错误注入模型上下文,提供编辑后诊断。递归语言模型(RLM)子系统为代理提供沙箱化的 Python REPL,用于批量分类和子 LLM 编排。完整说明参见 docs/ARCHITECTURE.md。

快速开始

npm install -g deepseek-tui

中国/镜像友好安装

如果从中国大陆下载 GitHub 或 npm 速度较慢,可通过 Cargo 注册表镜像安装 Rust crates:

# ~/.cargo/config.toml
[source.crates-io]
replace-with = "tuna"

[source.tuna]
registry = "sparse+https://mirrors.tuna.tsinghua.edu.cn/crates.io-index/"

然后安装规范的 deepseek 调度器和(可选)配套的 TUI 二进制文件:

cargo install deepseek-tui-cli --locked   # 提供 `deepseek`
cargo install deepseek-tui --locked       # 提供 `deepseek-tui`(可选)
deepseek --version

当 GitHub 发布资产可访问时,你也可以直接从 GitHub Releases 页面下载预构建二进制文件。当有镜像发布资产目录可用时,也可以使用 TUNA、rsproxy、腾讯 COS 或阿里云 OSS 镜像,配合 DEEPSEEK_TUI_RELEASE_BASE_URL

首次启动时,系统会提示输入你的 DeepSeek API 密钥。你也可以提前设置:

# 通过 CLI
deepseek login --api-key "YOUR_DEEPSEEK_API_KEY"

# 通过环境变量
export DEEPSEEK_API_KEY="YOUR_DEEPSEEK_API_KEY"
deepseek

使用 NVIDIA NIM

deepseek auth set --provider nvidia-nim --api-key "YOUR_NVIDIA_API_KEY"
deepseek --provider nvidia-nim
# 或按进程设置:
DEEPSEEK_PROVIDER=nvidia-nim NVIDIA_API_KEY="..." deepseek

其他 DeepSeek V4 提供商

deepseek auth set --provider fireworks --api-key "YOUR_FIREWORKS_API_KEY"
deepseek --provider fireworks --model deepseek-v4-pro

# SGLang 是自托管的;本地部署时认证可选。
SGLANG_BASE_URL="http://localhost:30000/v1" deepseek --provider sglang --model deepseek-v4-flash

从源码安装

git clone https://github.com/Hmbown/DeepSeek-TUI.git
cd DeepSeek-TUI
cargo install --path crates/tui --locked   # 需要 Rust 1.85+

v0.8.7 更新内容

v0.8.6 基础上的快速补丁,以解除复制/选择限制。

✂️ 选择功能覆盖整个转录

v0.8.6 的选择收紧将复制/选择限制在用户和助手消息正文内,导致无法从系统笔记、思考块或工具输出中复制文本。v0.8.7 移除了该限制,使渲染的转录块再次可端到端选择。

v0.8.7 已知问题: deepseek update 失败,提示 no asset found for platform …,原因是自更新器中的平台字符串映射使用了 aarch64 / x86_64,而非发布资产的 arm64 / x64(#503)。在 v0.8.8 修复此问题前,请通过以下方式更新:

npm i -g deepseek-tui
# 或
cargo install deepseek-tui-cli --locked

完整变更日志:CHANGELOG.md。

v0.8.6 更新内容

📝 AGENTS.md 引导(/init

/init 遍历工作区,自动检测项目类型(Cargo.toml、package.json、pyproject.toml 等),并写入一份入门级 AGENTS.md,包含构建/测试命令、工作区布局以及从 git log 推导出的约定。重新运行会显示建议更新的差异对比。

📖 阅读原文 →