大模块流程
ExecutionGraphsequence / parallel / dag
->
Scheduler找可运行节点
->
Envelope注入 parent/session/deps/skills
->
LocalAgentRunner启动子 AgentLoop run
->
NodeRunResult输出、证据、错误
小模块拆分
models
定义 AgentDescriptor、ExecutionNode、ExecutionGraph、DelegationEnvelope、NodeRunResult 和 TeamRunResult。
ExecutionNode 包含 node_id、task、agent、depends_on、constraints、expected_output、pinned skills。
ExecutionGraph.validate() 检查 strategy、节点 id、依赖合法性。
DelegationEnvelope 是真正传给 LocalAgentRunner 的运行包。
TeamGraphScheduler
按照 sequence、parallel 或 dag 策略运行节点。依赖节点完成后,其 output 会进入后续节点的 dependency_outputs。
sequence:按 nodes 顺序逐个运行。
parallel:无依赖节点可并行运行。
dag:每轮选出依赖已满足节点,运行后更新完成集。
汇总 success、node_results、run_ids、errors。
LocalAgentRunner
本地委派执行器。它给每个 node 生成 child session id,并把 node task 作为 user input 交给 AgentLoop。子 agent 的 execution_context 和 skill_selection_context 都在这里拼装。
child session id = parent_session:team:node:随机后缀。
execution_context 写入 parent task/run、delegated worker、constraints、expected output、dependency outputs、pinned skills、ephemeral guidance。
skill_selection_context 写入 node task、phase=team_node、skill query、required capabilities、dependency outputs 和选择指令。
AgentLoop 完成后用 EvidenceBuilder 建 node evidence。
详细字段见 Prompt Atlas。
registry / resolver
AgentRegistry 和 TargetResolver 是后续多 agent/多运行目标扩展点。当前主要路径用 generic_skill_worker 和本地 AgentLoop。
注册 agent descriptor。
解析目标 provider/model 或本地 runner。
为将来远程/专用 agent 留边界。