认识 DeerFlow:一个跑在 LangGraph 上的 Super Agent Harness
DeerFlow 给自己的定位不是"又一个 Agent 框架",而是 Super Agent Harness。这个词不是随便用的——它意味着 DeerFlow 要解决的不是"Agent 能不能跑",而是"Agent 能不能跑得住"。它和 Harness Engineering、Agent Team、Workflow 分别是什么关系?这篇一次讲清。
2026 年 2 月 28 日,字节跳动发布了 DeerFlow 2.0,发布后登顶 GitHub Trending 第一。很多人的第一反应是"又一个 Agent 框架"——但打开 README 会发现,它给自己贴的标签是 Super Agent Harness,不是 Agent Framework。
这两个词的差别不小。Framework 关心的是"怎么让 Agent 跑起来"。Harness 关心的是"怎么让 Agent 跑得住、不跑偏"。
如果了解 Harness Engineering,会立刻意识到:DeerFlow 就是 Harness Engineering 在开源社区的一个落地实现。
对比关系
- DeerFlow 是 Harness Engineering 的一个落地实现。 它把约束、沙箱、上下文管理、反馈机制和可观测性打包成了一个开箱即用的框架。
- DeerFlow 不是 Agent Team,但能承载 Agent Team。 它的 Sub-Agent 机制本身就是一套 Agent Team,但 DeerFlow 还管着这套 Team 的运行环境。
- DeerFlow 不是 Workflow 引擎,但它管着 Workflow 跑得住不住。 编排能力来自 LangGraph,DeerFlow 在编排之上加了运行保障层。
类比:Workflow 是流水线上的工序编排,Agent Team 是流水线上的班组分工,DeerFlow 是整条流水线的运行系统——包括传送带、质检站、安全围栏和监控大屏。
DeerFlow 是什么
DeerFlow 全称 Deep Exploration and Efficient Research Flow。1.0 时代定位是深度研究框架,更像一个高效的文献整理助手。到了 2.0,它从头重写,定位升级为 Super Agent Harness——一个全栈的 Agent 运行时基础设施。
核心能力一览:
| 能力 | 说明 |
|---|---|
| Sub-Agents | Lead Agent 拆任务,动态拉起多个 Sub-Agent 并行执行,最后汇总 |
| Sandbox | 每个任务跑在隔离的 Docker 容器里,有独立文件系统,过程可审计 |
| Skills | 结构化能力模块(通常是 Markdown),定义工作流和最佳实践,按需加载 |
| 长期记忆 | 跨会话积累用户偏好和知识背景,数据保存在本地 |
| 上下文工程 | Sub-Agent 之间上下文隔离,长会话自动压缩和转存 |
| 可观测性 | 内置 LangSmith 集成,追踪所有 LLM 调用、Agent 运行和工具执行 |
| 消息网关 | 支持 Telegram、Slack、飞书等渠道接入 |
这些能力单独看都不算新鲜。但放在一起看,会发现它们恰好覆盖了 Harness Engineering 的核心要素。
Harness Engineering 的落地实现
这是本文最重要的判断。
Harness Engineering 的核心要素通常包括五个:约束机制、反馈回路、沙箱隔离、上下文管理和可观测性。DeerFlow 逐一对应了每一个。
| Harness Engineering 要素 | DeerFlow 的实现方式 |
|---|---|
| 约束机制 | Skills 体系——用 Markdown 定义工作流、最佳实践和边界,Agent 按 Skill 约束执行 |
| 沙箱隔离 | 每个 Task 跑在独立 Docker 容器,完整文件系统(uploads / workspace / outputs),会话间隔离 |
| 上下文管理 | Sub-Agent 之间上下文完全隔离;长会话积极总结、压缩、转存中间结果,防止 Token 溢出 |
| 反馈回路 | Sub-Agent 执行失败后自动重试;Lead Agent 汇总时可判断是否需要重新分配任务 |
| 可观测性 | 内置 LangSmith 集成,追踪所有 LLM 调用、工具执行和 Agent 运行轨迹 |
这不是巧合。DeerFlow 2.0 的重写发生在 Harness Engineering 概念爆发的同一时期(2026 年初),与"Engineer the Harness"的理念在同期形成共鸣,DeerFlow 也因此把自己重新定位为 Super Agent Harness。
判断:DeerFlow 是目前开源社区里最接近 Harness Engineering 完整实现的框架之一。 它在理念上认同 Harness Engineering,同时在工程上把五大要素都落了地。
需要注意的边界:DeerFlow 的约束机制主要靠 Skills(Markdown 定义的工作流),而不是像 CI/CD 那样的硬门禁。这意味着约束的强度取决于 Skill 的设计质量——如果 Skill 写得不够严格,Agent 仍然可能跑偏。这是 DeerFlow 当前与"完美 Harness"之间的差距。
Agent Team 的运行底座
DeerFlow 的 Sub-Agent 机制本质上就是一个 Agent Team:
- Lead Agent 扮演 Manager 角色,负责理解任务、拆解子任务
- Sub-Agents 各自领一块活,拥有独立上下文、工具和终止条件,可以并行运行
- 最后由 Lead Agent 汇总结果
这和 Agent Team 的"按角色分工、协作完成任务"模式完全吻合。
但 DeerFlow 超出了 Agent Team 的范围。Agent Team 只管分工和协作,DeerFlow 还管运行环境。具体来说:
| 维度 | 纯 Agent Team | DeerFlow |
|---|---|---|
| 分工协作 | ✅ 有 | ✅ 有(Sub-Agents) |
| 沙箱隔离 | ❌ 通常没有 | ✅ 每个 Task 独立 Docker |
| 上下文管理 | ❌ 靠 Agent 自己 | ✅ 隔离 + 压缩 + 转存 |
| 长期记忆 | ❌ 通常没有 | ✅ 跨会话记忆 |
| 可观测性 | ❌ 通常没有 | ✅ LangSmith 集成 |
| 约束机制 | ❌ 靠 Prompt | ✅ Skills 体系 |
一句话:Agent Team 是 DeerFlow 里的协作层,DeerFlow 是 Agent Team 的运行底座。
Workflow 之上加了什么
DeerFlow 的编排能力不是自己造的,而是直接用了 LangGraph。
LangGraph 是一个状态机驱动的 Workflow 引擎,擅长处理多步骤、有分支、需要状态管理的 Agent 编排。本地开发时,DeerFlow 的后端服务通过 langgraph dev 来运行。
但 DeerFlow 在 Workflow 之上加了 Harness 层。区别在于:
- Workflow 管的是"步骤能不能串起来":A 做完了该 B 做,B 做完了该 C 做。
- DeerFlow 管的是"每一步跑得住不住":A 跑在隔离沙箱里,B 拿到的上下文是干净的,C 失败了能自动重试,整个过程有迹可查。
这和本仓库另一篇文章的判断一致:Workflow 只能保证步骤能串起来,Harness 才能保证整条链路跑完以后不用逐个检查每一步的输出。
DeerFlow 就是在 LangGraph 的 Workflow 能力之上,叠加了 Harness 层。
技术底座:LangChain + LangGraph
DeerFlow 没有重复造轮子,而是深度依赖并封装了 LangChain 和 LangGraph。
LangChain 是模型连接层。DeerFlow 在配置模型时直接使用 LangChain 的类路径(如 langchain_openai:ChatOpenAI),这意味着任何 LangChain 支持的模型提供商都可以无缝接入。
LangGraph 是编排层。DeerFlow 的多 Agent 编排、状态管理和工作流控制都建立在 LangGraph 之上。
DeerFlow 自己加了什么? 文件系统、沙箱环境、长期记忆、Skills 体系、上下文压缩、消息网关——这些都是 LangChain 和 LangGraph 不管的"生产级基础设施"。
一张表理清三者关系:
| 层级 | 谁负责 | 管什么 |
|---|---|---|
| 模型连接 | LangChain | 对接各家 LLM,统一调用接口 |
| 编排调度 | LangGraph | 多步骤工作流、状态机、分支和并行 |
| 运行保障 | DeerFlow | 沙箱、记忆、上下文、Skills、可观测、消息网关 |
类比:LangChain 是发动机(管动力),LangGraph 是变速箱(管档位和传动),DeerFlow 是整车(管能不能安全上路、跑长途、出了问题能修)。
什么时候该用、什么时候别用
适合用 DeerFlow 的场景:
- 需要多 Agent 协作完成复杂任务(研究、编码、内容生成)
- 需要沙箱隔离,Agent 要执行代码或操作文件
- 长周期任务,需要跨会话记忆和上下文管理
- 需要生产级部署,接入飞书、Slack 等消息渠道
不太适合的场景:
- 只需要单轮对话或简单问答——用 DeerFlow 太重了
- 轻量 RAG 场景——直接用 LangChain 就够
- 不想引入 Docker 依赖——DeerFlow 的沙箱能力强依赖 Docker
安全提醒: DeerFlow 具备执行系统指令和操作资源的能力,默认设计仅部署在本地可信环境(127.0.0.1)。如果要部署到公网,必须配置 IP 白名单、反向代理认证等安全措施。
结论
DeerFlow 是 Harness Engineering 从论文走向工程的一个标杆实现——它用 LangChain 接模型,用 LangGraph 编排工作流,然后在上面盖了一整套让 Agent 跑得住的运行系统。
理解 DeerFlow,不能只看它的功能列表。要看它在整个 AI Agent 工程体系里的位置——它不等于模型或 Prompt,也不同于 Workflow 引擎和 Agent Team,而是那个让这些东西组合在一起以后还能稳定运行的底座。
本文由本人构思并把控,借助 AI 辅助整理成文,仅代表个人观点,欢迎交流。
浙公网安备 33010602011771号