DeerFlow教程:82.9k星字节跳动开源长程SuperAgent,编排子Agent+记忆+沙箱+技能

📌 项目:bytedance/deer-flow | 星数:82.9k(2026-09-24) | 协议:MIT | 语言:Python | GitHub

一句话定位:"深度探索与高效研究流——编排子Agent、记忆、沙箱和技能,完成几乎任何任务的长程SuperAgent。" DeerFlow 2.0是字节跳动的开源SuperAgent Harness,通过子Agent编排、持久记忆、安全沙箱和可扩展技能系统,让单个Agent能处理需要多步推理、多工具协作、跨时间记忆的复杂任务。

🏗️ 架构:Sub-Agent + Memory + Sandbox + Skills

DeerFlow 2.0的核心是四层编排架构:

这四层组合让DeerFlow能处理"研究→分析→编码→创作"这类需要多步、多工具、跨时间的长程任务。和 OpenResearch 聚焦并行研究不同,DeerFlow是通用型SuperAgent。

🚀 快速开始

要求:Python 3.12+、Node.js 22+。

git clone https://github.com/bytedance/deer-flow.git
cd deer-flow
make setup    # 安装后端+前端依赖
make dev      # 启动开发服务器

启动后访问本地前端界面,输入任务描述即可。DeerFlow会自动拆解任务、调度子Agent、管理记忆和沙箱。也可通过Python API调用:

from deer_flow import DeerFlow

agent = DeerFlow()
result = agent.run(
    "分析2026年AI Agent领域Top10开源项目,生成对比报告"
)
print(result.summary)
print(result.artifacts)  # 生成的文件、图表等

🔧 技能扩展与多Agent协作

DeerFlow的技能系统支持自定义扩展。每个技能是一个Python模块,实现标准接口:

from deer_flow.skills import Skill, SkillResult

class MySkill(Skill):
    name = "data_fetch"
    description = "从指定API获取数据"
    
    async def execute(self, params):
        data = await self.fetch(params['url'])
        return SkillResult(success=True, data=data)

技能注册后,主Agent会根据任务自动选择和调用。多Agent协作通过Handoff机制实现——Agent A完成任务后将控制权交给Agent B继续处理。

⚖️ 优缺点

✅ 优点⚠️ 不足
四层编排(子Agent+记忆+沙箱+技能),架构清晰Python 3.12+要求较新
2.0完全重写,代码质量高文档主要英文,中文文档滞后
字节跳动出品,社区活跃部署需Python+Node双环境
技能系统可自定义扩展长程任务消耗token较多
MIT协议,商用友好

📚 常见问题

DeerFlow 2.0和1.0有什么区别?

2.0是完全重写,不共享任何代码。1.0是Deep Research框架,维护在1.x分支。2.0是通用SuperAgent Harness,支持更广泛的任务类型。

DeerFlow能处理什么类型的长程任务?

深度研究、代码开发、数据分析、内容创作、多步骤工作流等。任何需要多步推理、多工具协作、跨时间记忆的任务都适合。

如何自定义技能?

实现Skill基类,定义name、description和execute方法,注册到技能系统即可。主Agent会根据任务自动选择调用。