deepseek-cli
在终端里调用 DeepSeek Coder 进行代码生成、调试和重构的轻量级 AI 编程工具
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
在终端里调用 DeepSeek Coder 进行代码生成、调试和重构的轻量级 AI 编程工具
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
DeepSeek CLI 是一个运行在命令行里的 AI 编程助手,通过 DeepSeek Coder 模型在终端中完成代码生成、调试、重构等任务,支持本地部署(Ollama)和云端 API 两种模式。
2024 年,GitHub Copilot 和 ChatGPT 已经让 AI 编程变得稀松平常。但很多开发者面临一个尴尬:要么 IDE 插件需要付费订阅,要么在线服务有隐私顾虑——公司代码不想传到第三方服务器。
HolAsMalva(项目作者,一位独立开发者)在这个时间点推出了 DeepSeek CLI。项目的核心理念是:让每个人都能在本地终端里免费使用 DeepSeek Coder,不需要复杂的配置,不需要昂贵的 GPU 服务器,只要有一台普通电脑,就能把 AI 编程能力装进自己的命令行。
项目基于 Google Gemini CLI 的架构灵感,嫁接上 DeepSeek Coder 模型,定位是「开源 + 本地优先 + 零门槛」。目前 GitHub 获得约 288 颗星,npm 包 run-deepseek-cli 可直接安装。
DeepSeek CLI 的功能覆盖了日常开发中最高频的场景:
代码生成与补全:支持 100+ 编程语言的智能补全,输入自然语言描述即可生成函数、类或整个模块。例如 deepseek "Write a Python function to implement binary search with proper error handling" 即可获得带完整类型注解和异常处理的二分查找实现。
仓库级代码理解:进入任意项目目录后,AI 能理解整个代码库的结构和上下文。输入 Explain the architecture of this application,DeepSeek 会分析模块关系、数据流和设计模式。
代码重构与迁移:处理历史遗留代码的现代化改造,比如将 React 类组件迁移到 Hooks、把 Python 2.7 代码升级为带类型提示的 Python 3.10、Express.js 的回调函数改写为 async/await 等。
调试与代码审查:帮助定位 bug、安全漏洞和代码质量问题,审查 Pull Request 并给出改进建议。
项目脚手架:从零生成新项目——输入 Create a React TypeScript project with Redux Toolkit and Material-UI,CLI 会生成完整的基础架构代码。
Git 工作流集成:分析 git diff 自动生成提交信息,根据 OpenAPI spec 生成接口文档,从 model 变更生成数据库迁移脚本。
DeepSeek CLI 采用 TypeScript 开发,主入口在 src/index.ts,核心逻辑分散在以下模块:
| 模块 | 职责 |
|---|---|
src/api.ts | 与 DeepSeek API / Ollama 通信,封装 HTTP 请求逻辑 |
src/cli.ts | 命令行参数解析、交互式 REPL 循环 |
src/config.ts | 环境变量读取与配置管理 |
src/commands/chat.ts | 单次 prompt 交互命令 |
src/commands/interactive.ts | 交互式多轮对话(带语法高亮) |
src/commands/setup.ts | 本地 Ollama 环境初始化向导 |
src/utils/exec.ts | Shell 命令执行工具 |
双后端设计:这是项目最有意思的地方。src/config.ts 通过 DEEPSEEK_USE_LOCAL 变量控制使用哪种后端:
http://localhost:11434),Ollama 加载量化后的 DeepSeek Coder 模型(1.3B/6.7B/33B)。完全免费、离线可用、数据不外传。DEEPSEEK_API_KEY),使用 DeepSeek 官方托管的更强模型。这种设计让项目既满足了极客「一切本地化」的隐私需求,也支持普通用户「开箱即用」的便捷体验。
REPL 交互:在 src/commands/interactive.ts 中,基于 Node.js readline 模块构建了一个交互式循环,支持会话历史导航、语法高亮输出(chalk)、多轮对话上下文保持。
包管理:TypeScript 编译为 JavaScript 后通过 npm 全局发布,bin 入口注册为 deepseek 和 deepseek-cli 两个命令别名。依赖非常轻量:axios(HTTP)、chalk(终端颜色)、commander(参数解析)、ora(加载动画)、dotenv(环境变量)。
DeepSeek CLI 的部署分两种路径:
本地模式(推荐):需要 Node.js 18+ 和 Ollama。项目提供了 install-local.sh 一键安装脚本,会自动检测操作系统(macOS/Linux),安装 Ollama、拉取选定的 DeepSeek Coder 模型(6.7B 模型约 4GB 磁盘空间)。整个过程约 5-10 分钟。
云端模式:更简单,只需 npm 全局安装后设置 DEEPSEEK_API_KEY 即可使用,无需下载几十 GB 的模型文件。
容器化:项目 README 中提供了一个 Docker 运行示例(需手动设置 API Key),但没有提供 Dockerfile 或 docker-compose 文件。如需 Docker 部署,需要用户自行编写 Dockerfile。
硬件需求:本地模式需要 GPU 才能流畅运行,DeepSeek Coder 6.7B 推荐 8GB 以上显存/内存,33B 模型则需要 32GB。CPU 可以运行但速度较慢。
DeepSeek CLI 并非完美,主要局限如下:
无独立 Web UI:这是一个纯 CLI 工具,没有图形界面,所有交互都在终端内完成。对习惯 IDE 界面的用户来说有一定上手门槛。
本地模型性能上限:Ollama 加载的量化模型在复杂推理任务上不如 DeepSeek 官方云端 API 强。对于需要长上下文分析(超过 16K tokens)的任务,CLI 的体验会打折扣。
交互体验有待优化:当前 REPL 基于 Node.js readline,功能相对基础,没有代码块复制、多行编辑等高级功能。相比 Claude Code 等专业 AI 编程工具,深度集成度不够。
文档链接已失效:README 中引用了一些子文档(如 ./docs/supported-languages.md),但 GitHub 仓库中实际没有这些文件,部分文档链接为 404。
DeepSeek CLI 代表了一个趋势:将大模型能力本地化、平民化。DeepSeek Coder 模型在代码生成任务上表现优异(基于 2T tokens 预训练数据),而通过 Ollama 的量化压缩,6.7B 参数量模型只需 4GB 即可本地运行。
对于以下场景,DeepSeek CLI 特别有价值:
作者:holasoymalva | stars:288 | License:MIT | 技术栈:TypeScript + Node.js + Ollama

图1:DeepSeek CLI 项目头像