DeerFlow 系列教程 第八篇
本篇教程继续模块三:核心概念深度解析,从源码层面全面剖析 DeerFlow 的中间件体系。我们将拆解 15 层核心中间件的职责与实现、执行流程的正序/反序规则、条件中间件的动态组装逻辑,以及如何开发自定义中间件扩展 Agent 的能力边界。
前置知识
在开始之前,建议你已阅读:
- 第 07 篇:Lead Agent 深度解析——理解
make_lead_agent()工厂函数和ThreadState的基本结构 - 第 03 篇:DeerFlow 核心概念图谱——对五大支柱有基础认知
- 了解 Web 框架中间件的基本概念(如 Express/Koa 的洋葱模型)
一、中间件设计理念
1.1 为什么需要中间件?
在第 07 篇中,我们了解了 Lead Agent 的核心职责——接收用户消息、调用工具、委派子任务、组织响应。但一个完整的 Agent 执行过程远不止这些,还涉及大量横切关注点(Cross-Cutting Concerns):
- 线程目录的初始化与清理
- 用户上传文件的追踪
- 沙箱环境的获取与释放
- 工具