From 632057f29b4c83de3595542e2d5c40a6053d273b Mon Sep 17 00:00:00 2001 From: Blizzard Date: Thu, 9 Jul 2026 17:12:55 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E7=8A=B6=E6=80=81=E6=9C=BA=20&=20agent?= =?UTF-8?q?=20loop=20=E4=B8=89=E5=B1=82=E5=B5=8C=E5=A5=97=E5=9B=BE?= =?UTF-8?q?=EF=BC=88=E7=8B=AC=E7=AB=8B=20SVG=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 任务状态机(NATS→PG) → Eino compose.Graph DAG 调度 → react.Agent ReAct 循环。 自包含 SVG(内联样式),任意浏览器/编辑器可开。 Co-Authored-By: Claude Opus 4.8 --- STATE_MACHINE_AGENT_LOOP.svg | 75 ++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 STATE_MACHINE_AGENT_LOOP.svg 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 或不再调工具) +