模型 / 数据集
bytedance/deer-flow avatar
bytedance/deer-flow

DeerFlow 2.0:一个把长时任务拆给子代理和沙箱的 Python 编排框架

一个开源的长期 SuperAgent 工具,用于研究、编码和创建。借助沙箱、内存、工具、技能、子代理和消息网关,它可以处理可能需要几分钟到几小时的不同级别的任务。

82,492 个 Star11,377 个 ForkPythonMIT

秒懂

它是什么?
DeerFlow 2.0 是字节跳动开源的 SuperAgent harness,用子代理、记忆、沙箱和技能处理耗时数分钟到数小时的任务。本文基于仓库文档和发布说明,分析它的机制、上手方式、局限和适用对象。
适合谁用?
DeerFlow 2.0 适合需要把研究、编码和文件操作组合成长时任务的团队,尤其是已经习惯用 Docker 和 Claude Code 或 Codex 的开发者。它不适合想要轻量级单代理脚本的用户,因为 2.0 是一次彻底重写,和 1.x 不共享代码,迁移成本高。
能商用吗?
可以。MIT 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
还在维护吗?
在维护。仓库在最近一天内有新的提交。
用什么语言写的?
主要是 Python(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。

开源项目深度解析

它解决什么问题

DeerFlow 2.0 定位是 long-horizon SuperAgent harness,意思是它能驱动代理完成需要持续几分钟到几小时的任务,比如深度研究、写代码、生成文件。这类任务单次模型调用做不完,需要把工作拆给多个子代理,还要在过程中保存中间状态。DeerFlow 把记忆、沙箱、工具、技能和消息网关组合在一起,让代理可以跨步骤操作。目标用户是想要一个可自托管的代理框架的工程师,而不是只想调 API 的开发者。它不提供现成的 SaaS 服务,你需要自己部署。

从深度研究框架到全能 harness

DeerFlow 1.x 是一个深度研究框架,2.0 是彻底重写,和 1.x 不共享代码。README 明确说 2.0 是 ground-up rewrite,旧代码维护在 1.x 分支。这个变化意味着如果你用过 1.x,升级到 2.0 不是改配置,而是重新学习。2.0 的核心概念是 orchestrates sub-agents, memory, and sandboxes,再加上可扩展的 skills。它从单一的研究流程变成了通用的代理编排层。这种转变的代价是复杂度上升,但换来了更广的适用面。如果你只需要深度研究,1.x 可能更简单,但官方已经停止在 2.0 上维护 1.x 的功能。

机制:子代理、沙箱和上下文工程

DeerFlow 2.0 的架构核心是子代理和沙箱。主代理接收任务后,可以生成子代理去并行处理不同部分。每个子代理有独立的上下文窗口,避免主上下文被撑爆。沙箱提供隔离的文件系统和执行环境,让代理可以运行代码、写文件,而不污染宿主机。还有长期记忆组件,让代理跨会话记住用户偏好或任务状态。上下文工程是另一个关键点,它管理哪些信息进入模型上下文,以及何时压缩。文档里提到 Manual Context Compaction,说明用户可以手动触发上下文压缩,这暗示自动压缩可能不够智能,需要人工干预。

快速上手:make setup 和 Docker

官方推荐 Docker 部署。第一步是克隆仓库,然后运行 make setup,这会启动一个交互式向导。向导让你选择 LLM 提供商、是否启用 web search、沙箱模式、bash 访问权限和文件写入工具。它会生成一个最小化的 config.yaml,并把 API 密钥写入 .env。整个过程大约 2 分钟。如果你不想用向导,可以运行 make config 复制完整模板,然后手动编辑 config.example.yaml。make doctor 可以验证配置,make support-bundle 会生成诊断文件,方便提交 issue。注意,向导生成的配置是最小化的,生产部署你可能需要手动调整沙箱和网络选项。

安全边界:不当部署会引入风险

README 有一个专门的 Security Notice 章节,警告不当部署可能引入安全风险。这直接点出了框架的软肋:沙箱和 bash 访问是强大的,但配置不当就是后门。比如,如果你允许代理执行任意 bash 命令,而沙箱隔离不彻底,代理可能访问宿主机敏感文件。文档没有给出具体的加固步骤,只建议遵循安全建议。这意味着用户必须自己理解沙箱的隔离级别。对于生产环境,你需要评估代理的输入来源。如果任务内容来自不可信用户,风险会显著升高。DeerFlow 不是开箱即安全的产品,它把安全责任交给了部署者。

与替代方案的差异

DeerFlow 2.0 的直接替代品是其他 agent harness,比如 AutoGPT 或 BabyAGI,但它们的机制不同。AutoGPT 更强调单个代理的自主循环,而 DeerFlow 明确引入了子代理编排和沙箱。另一个对比是 LangChain 的 Agent 框架,LangChain 提供更底层的组件,你需要自己拼装编排逻辑。DeerFlow 则是一个完整的 harness,内置了记忆和沙箱。Claude Code 是另一类替代,它专注于代码任务,而 DeerFlow 可以集成 Claude Code 作为技能。所以如果你已经在用 Claude Code,DeerFlow 可以扩展它的能力,而不是替代它。

维护和升级成本

DeerFlow 2.0 刚发布,最后一次提交是 2026 年 6 月 25 日,v2.0.0 也是同一天。这意味着项目处于早期阶段,API 可能不稳定。2.0 和 1.x 不共享代码,未来升级到 2.x 的后续版本可能需要迁移。许可证是 MIT,这意味着你可以自由修改和商用,但需要保留版权声明。项目没有提供迁移工具,所以从 1.x 升级需要重写集成。另外,README 推荐使用特定的模型(Doubao-Seed-2.0-Code、DeepSeek v3.2、Kimi 2.5),如果你用其他模型,可能需要调整 prompt 或配置。维护成本主要在于跟上版本变化和调试代理行为。

谁适合用,谁不适合

适合的团队:需要处理长时研究任务、有 Python 后端经验、愿意用 Docker 和沙箱的团队。不适合的:想要一个简单脚本完成单一任务的用户,或者不想处理安全配置的团队。DeerFlow 的复杂度来自子代理和记忆,如果你的任务可以在几次调用内完成,直接用模型 API 更省事。另外,如果你依赖 1.x 的深度研究流程,需要评估迁移成本。在采用前,先检查 config.example.yaml 里的 subagents.max_total_per_run 参数,这限制了子代理总数,能防止资源耗尽。还要确认你选择的 LLM 提供商是否支持 DeerFlow 的集成方式,比如 Responses API 或 CLI 提供商。

编辑结论

DeerFlow 2.0 适合需要把研究、编码和文件操作组合成长时任务的团队,尤其是已经习惯用 Docker 和 Claude Code 或 Codex 的开发者。它不适合想要轻量级单代理脚本的用户,因为 2.0 是一次彻底重写,和 1.x 不共享代码,迁移成本高。部署前必须验证沙箱隔离配置和网络访问策略,因为文档明确警告不当部署会引入安全风险。建议先用 make setup 生成配置,再在非生产环境跑一个跨子代理的任务,确认 memory 和 sandbox 的行为符合预期。最后检查 config.example.yaml 里的 subagents.max_total_per_run 等限制,避免资源失控。

官方来源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
社区笔记

社区笔记