采用 Planner → Excutor → Reviewer 三角色迭代编排模式,通过 ReAct Agent 循环将用户意图自动分解为多步骤计划并调度下游 Agent 执行。
通过 Hook 和 Memory 进行状态传递。
CheckpointService 负责每个步骤后的 MySQL 持久化与恢复
ContextCompressor 实现了上下文压缩功能,触发阈值可配(默认128200字节≈125.4KB,非常接近128KB)
Pipeline + Interceptor 体系存在于 Agent 调用层(非旧设计中的 Executor 层),包含 Metrics、Logging、Tracing、Schema校验、熔断、指数退避等

一次请求的完整步骤:

  1. 先构建 Runcontext,通过共享状态的方式实现Agent各个步骤间的通信。

  2. Planner规划:Planner本身是一个reactAgent,它会通过多轮迭代,输出任务执行规划。

  3. excutor:步骤级执行,根据每个步骤对应的subAgent/skill/tools一步步向前推进,并持续更新共享状态。Excutor Pipeline包括:拦截器、链路追踪、Schema校验、指标上报、熔断、指数退避重试、日志上报、Hook桥接、实际传输。

  4. 上线文压缩:每轮 Planner 输出后检查上下文大小。超过 128KB 阈值触发 ContextCompressor:LLM 摘要压缩(保留最近 6 条原始消息,旧消息压缩为摘要)。LLM 失败时降级为直接截断一半最早消息。

  5. Reviewer 审查(可选)。加载 agentic-reviewer-prompt.md,Reviewer ReActAgent 检查 Worker 执行结果是否满足 Planner 的预期。

  6. checkPoint 持久化:每格步骤结束后都将快照落到MySQL。

    存在 MySQL 里,是 RunContext 的子集 + 元数据,用于恢复和追溯

    字段 说明
    runId / reqId 本次运行的唯一标识
    stepIndex 当前步骤序号
    stepStatus PENDING / RUNNING / DONE / FAILED
    stepResult 该步骤的输出摘要(不是完整 RunContext)
    errorInfo 失败时的错误堆栈
    timestamp 快照时间
  7. 记忆回写:提取有价值的记忆写入记忆服务。

  8. 返回结果:** SSE 流式推送每轮 Planner/Worker/Reviewer 的输出事件,最终返回 complete 帧。