diff --git a/STATE_MACHINE_AGENT_LOOP.svg b/STATE_MACHINE_AGENT_LOOP.svg new file mode 100644 index 0000000..0b90029 --- /dev/null +++ b/STATE_MACHINE_AGENT_LOOP.svg @@ -0,0 +1,75 @@ + +任务状态机与 agent loop 的三层嵌套(sundynix-agentix / dispatcher) +外层任务状态机由 NATS 事件驱动、状态落 PG;running 展开为 Eino compose.Graph 的 DAG 调度;每个 agent 节点内是 Eino react.Agent 的推理-调工具-观察循环。 + + + + + + + + +任务状态机 & agent loop —— 三层嵌套 + + +Eino 编排 / 循环 + +状态 / 结构 + +外部:工具 / 总线 + + +① 任务状态机(dispatcher 无状态,转移走总线) + +submitted + + +running + + +done · failed · timeout +rejected · waiting(HITL 暂停) +转移 = setStatus → NATS(status.task) → 网关 UpdateTaskStatus 落 PG + +▼ running 展开为 + + +② Eino compose.Graph —— 按 DAG 调度节点 + +agent 节点 + + +branch ◇ + + +节点 ∥ 节点 +无依赖并行 +真假边路由 · HITL→checkpoint + +▼ 每个 agent 节点放大为 + + +③ Eino react.Agent —— 节点内的 ReAct 循环 + +推理 (LLM) + + +调工具 +MCP / NATS + + +观察结果 + + +流式输出 +停止 + + +循环:还要调工具 → 再推理(至 MaxStep 或不再调工具) +