DeepCode 开放式编程助手
把论文和自然语言需求转成可运行的前后端与算法代码。
- Star 数
- ★ 17k
- 最近更新
- 4 天前
- License
- MIT
- 主语言
- Python
- FA 评分
- 60/100 · 存在缺口
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台OpenAI API · Claude APIClaude Code(部分支持)
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 机器学习研究者需要根据论文复现实验算法时,可用 Paper2Code 将论文内容转为实现、测试和文档。
- 不适合
- 无法接受代理在本地执行 shell 命令、访问文件系统和网络的敏感环境
- 希望开箱即用、不愿安装 Python 3.12+ 与 Node.js 前端依赖的用户
- 源码审查
- 60/100 · 存在缺口
这个 Agent 能做什么,适合哪些场景?
DeepCode 是一个面向软件开发的多智能体编程平台,覆盖 Paper2Code、Text2Web 和 Text2Backend 三类工作流。它提供交互式终端对话、基于 React 与 FastAPI 的本地 Web UI,以及可用于脚本和 CI 的 JSON 事件流命令行入口。其统一运行时通过 MCP 工具执行文件读写、网页获取、仓库下载、文档处理、命令执行、代码索引和实现验证等操作。项目支持用户级与项目级配置合并,可配置 OpenAI、Anthropic、Gemini 或 OpenRouter 等提供方,并将会话保存为 JSONL 和 SQLite 索引。对于复杂任务,README 还描述了计划、持久记忆、生命周期 Hook、可复用技能与隔离子代理协作能力。
DeepCode 可接收研究论文、自然语言需求、URL 与文件作为输入,并通过 Central Orchestrating Agent、Intent Understanding Agent、Document Parsing Agent、Code Planning Agent、Code Reference Mining Agent、Code Indexing Agent 和 Code Generation Agent 组织处理。它经由 MCP 的 filesystem、fetch、github-downloader、file-downloader、command-executor、code-implementation、code-reference-indexer 与 document-segmentation 执行具体操作,生成代码、测试与文档。终端交互入口是 deepcode 或 python -m cli.tui;本地 Web 模式使用 deepcode --local;无界面任务可用 python -m cli.exec_cli "任务" --json 输出 NDJSON 事件流。会话存放在 ~/.deepcode/sessions/<id>/,配置可由 ~/.deepcode/deepcode_config.json 与项目目录中的 deepcode_config.json 分层合并。
- 机器学习研究者需要根据论文复现实验算法时,可用 Paper2Code 将论文内容转为实现、测试和文档。
- 前端开发者拿到页面文字需求、需要快速形成可运行界面原型时,可使用 Text2Web 工作流。
- 后端工程师需要从简要功能说明生成服务端实现时,可使用 Text2Backend 工作流。
- CI 或内部自动化负责人需要以机器可读事件流执行一次性修复任务时,可调用
python -m cli.exec_cli "任务" --json。 - 需要在本地项目目录持续处理编码任务的开发者,可通过
deepcode启动多轮会话,并用/resume恢复已保存会话。
如何安装或部署这个 Agent?
前置条件为 Python 3.9+、Node.js 18+ 和 npm 8+。直接安装:pip install deepcode-hku,随后执行 deepcode init 创建 ~/.deepcode/deepcode_config.json,并在其中至少填写一个提供方的 API Key,例如 {"providers":{"openai":{"apiKey":"your_openai_api_key"}}}。从源码开发可执行 git clone https://github.com/HKUDS/DeepCode.git、cd DeepCode、pip install -r requirements.txt、npm install --prefix new_ui/frontend;如需让全局命令使用当前检出版本,再执行 pip install -e .。
如何使用这个 Agent?
完成 API Key 配置后,在项目目录运行 deepcode 开始交互式多轮编码会话;可用 python -m cli.tui -w ./my-project 指定工作区,或用 python -m cli.tui --resume <session_id> 恢复会话。在对话中可使用 /help、/new [title]、/resume、/model [id]、/clear,并以 @src/main.py 附加文件内容。运行 deepcode --local 可启动本地 Web UI,前端地址为 http://localhost:5173,后端地址为 http://localhost:8000。用于 CI 或脚本时,运行 python -m cli.exec_cli "fix the failing test in mathlib.py" --json。
这个 Agent 有哪些优点和局限?
- 同时提供终端对话、本地 Web UI 与 NDJSON 无界面执行入口,适合交互开发和 CI 自动化。
- 通过 MCP 明确集成文件系统、网页获取、仓库下载、文档分段、命令执行、代码索引与实现工具,而非只输出文本建议。
- 配置支持 OpenAI、Anthropic、Gemini 和 OpenRouter,并支持项目级配置覆盖用户级配置。
- 会话以 JSONL 保存并由 SQLite 索引,支持列出、恢复和分支会话。
- 必须自行配置至少一个模型提供方 API Key;README 未提供默认免费模型或成本控制方案。
- 本地 Web UI 依赖 Node.js 18+ 和 npm 8+,除 Python 运行时外还需安装前端依赖。
- 工具执行涉及本地文件系统、Shell、网络和 MCP 服务,采用前需评估工作区权限与密钥配置。
- README 所列 PaperBench 分数及与 Cursor、Claude Code、Codex、PaperCoder 的比较为项目自行报告,提供材料未包含独立复现实验。
这个 Agent 与同类方案有什么区别?
README 在 PaperBench 的不同子集上报告:DeepCode 为 84.8%,而 Cursor 为 58.4%、Claude Code 为 58.7%、Codex 为 40.0%;同时报告其相对 PaperCoder 的结果为 73.5% 对 51.1%。这些数字适合作为项目声明的基准参考,而非独立验证结论。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| DeepCode 开放式编程助手 当前 | 60 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 17k | 4 天前 | Python | OpenAI API · Claude API |
| Lang-Agent 可视化 Agent 配置平台 | 50 · 缺口较多 | 网页应用免费 + 模型费 | ★ 331 | 10 个月前 | TypeScript | — |
| Okto Pulse | 80 · 表现良好 | 命令行工具免费 | ★ 127 | 3 天前 | Python | Codex · Claude Code |
| Puppyone 上下文驱动器 | 39 · 缺口较多 | 自托管服务免费版 + 付费版 | ★ 1.3k | 4 个月前 | TypeScript | ChatGPT · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示项目实现了显式项目信任、三种权限模式(Ask/Read only/Full access)、工具级allow/ask/deny、敏感路径保护、平台沙箱和作业对象隔离(Windows)。用户确认机制存在,但未提供具体实现细节。数据流透明度:工具调用、执行进度和文件更改可见,但未详细说明数据流。敏感数据处理:凭据存储在用户私有存储中,不写入会话历史,但未提供具体实现。依赖安全:依赖列表未固定版本,未提供安全审计或漏洞扫描证据。外部影响:命令执行有沙箱,但未提供具体细节。回滚:会话生命周期有归档和删除,但未提供代码回滚机制。来源归属:未提供明确的来源归属机制。
自一致性:README描述与代码结构一致,测试覆盖了自动化传输和编解码器。依赖可用性:依赖列表明确,但未固定版本。失败消息:测试中验证了错误处理,如InvalidParams和ParseError。
受众和场景:面向开发者和研究人员,支持多种场景(Paper2Code、Text2Web等)。能力边界:明确说明不是设计来让Agent看起来更忙,而是帮助完成真实工作。触发精度:支持自然语言指令和自动化调度。环境适配:支持CLI和桌面,跨平台(macOS、Windows、Linux)。
信息架构:README结构清晰,有目录和详细说明。安装说明:提供了CLI和桌面的安装步骤。命名稳定性:版本历史显示命名稳定。示例和FAQ:提供了快速开始和演示,但缺少FAQ。已知限制:未明确列出。许可证:MIT许可证。版本和变更日志:有新闻和里程碑记录。维护责任:有GitHub Actions CI,但未明确维护者。
输出可用性:提供可视化界面和会话历史,输出可审查。边际价值:提供多Agent系统和自动化,有独特价值。成本效益:未提供性能或成本数据。
声明可追溯:README中的声明与代码和测试对应。跨来源佐证:有论文和视频,但未提供独立验证。事实与推断分离:README区分了事实和推断。
- 依赖未固定版本,存在供应链风险。
- 未提供安全审计或漏洞扫描证据。
- 已知限制未明确列出。
- 发布者身份未验证,但未发现恶意迹象。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
发布说明摘录
DeepCode v2.3.1 is a stability release for the terminal UI on the shared background service. Answers now appear once and render as Markdown while they stream, the TUI survives a slow or restarted service, /compact works on coding sessions, and the background service no longer stops right after starting on Windows installs in a virtual environment. It also includes five community fixes and dependency security updates. Highlights …在 GitHub 查看 ↗ -
发布说明摘录
DeepCode v2.3.0 runs the TUI, Desktop, and a new browser client on one local background service, so work you start in one interface keeps running and can be followed and approved from another. It adds voice dictation, Opper and Amazon Bedrock, correct DeepSeek V4 numbers, and a set of opt-in protections for model traffic that passes through a relay. It also fixes a SQLite locking bug behind occasional "database disk image is malformed" errors and folds in three weeks of community work. Highlights …在 GitHub 查看 ↗ -
发布说明摘录
DeepCode v2.2.0 makes long sessions dependable and puts the model under your control: sessions survive resume, compaction, and a second window; settings, models, and reasoning are declared rather than guessed; sub-agents and MCP servers start when needed and stop cleanly; and the Desktop speaks Simplified Chinese. It also folds in a month of community fixes and security hardening. Highlights …在 GitHub 查看 ↗
常见问题
运行前必须配置什么?
deepcode init 后,必须在配置中填写至少一个模型提供方 API Key。它能使用哪些模型服务?
apiBase。会修改我的项目文件吗?
write、edit 与 apply_patch 等工具读写和修改工作区文件,并执行命令;应在合适的工作区和权限策略下运行。如何用于自动化或 CI?
python -m cli.exec_cli "任务" --json 执行单次任务;README 说明该命令输出机器可读的 NDJSON 事件流。