Skip to content
齿轮与轨道

Ultracode 编排模式图解

/ultracode 是 Peri 内置的编排引擎——你描述任务,Peri 生成并执行编排脚本,把多个代理按阶段组织起来。下面这张图是编排引擎的完整模式:并行扇出、流水线、阶段标记、条件分支、验证关口、模型分层、收敛循环。看懂这张图,一条复杂命令背后 Peri 是怎么拆解执行的,一目了然。

图例:绿色加粗=扇出(一个任务拆给多个代理),蓝色加粗=汇聚(结果合并),紫色=条件分支,橙色虚线=收敛回灌;绿节点=低成本模型档位,蓝节点=高档位。

flowchart TB
    ARGS["args = { targetDir }"]

    subgraph P_SCOPE["phase('Scope')"]
        SCOPE["agent('扫描目录', { model: 'haiku' })"]
    end

    subgraph P_AUDIT["phase('Audit')"]
        PARALLEL["parallel([() => agent(...), ...])
扇出 × N files"] subgraph P_PIPE["pipeline(files, ...stages) — 每文件串行"] SCAN["agent('扫描分类', { model: 'haiku' })"] DIAM{"if (severity === 'high')"} AUDIT_H["agent('深度审计', { model: 'sonnet' })"] AUDIT_L["agent('快速复核', { model: 'haiku' })"] end FINDINGS["findings[] 汇聚"] end subgraph P_VERIFY["phase('Verify')"] V1["agent('性能方面', { model: 'sonnet' })"] V2["agent('正确性方面', { model: 'sonnet' })"] V3["agent('安全性方面', { model: 'sonnet' })"] VDIAM{"if (newLeads.length > 0)"} end subgraph P_REPORT["phase('Report')"] RPT["agent('汇总报告', { model: 'sonnet' })"] end ARGS --> SCOPE SCOPE -->|"files[]"| PARALLEL PARALLEL -->|"file 1"| SCAN PARALLEL -.->|"file 2..N"| SCAN SCAN --> DIAM DIAM -->|"true"| AUDIT_H DIAM -.->|"false"| AUDIT_L AUDIT_H -->|"findings[]"| FINDINGS AUDIT_L -->|"findings[]"| FINDINGS FINDINGS -->|"分发给 3 镜头"| V1 FINDINGS -->|"分发给 3 镜头"| V2 FINDINGS -->|"分发给 3 镜头"| V3 V1 --> VDIAM V2 --> VDIAM V3 --> VDIAM VDIAM -->|"verified[]"| RPT VDIAM -.->|"newLeads.length > 0(dry < 2 追加回 files[])"| PARALLEL linkStyle 2,9,10,11 stroke:#2e7d32,stroke-width:2px linkStyle 3 stroke:#2e7d32,stroke-dasharray:5 5 linkStyle 5 stroke:#7b1fa2,stroke-width:2px linkStyle 6 stroke:#7b1fa2,stroke-dasharray:5 5 linkStyle 7,8,12,13,14 stroke:#1565c0,stroke-width:2px linkStyle 16 stroke:#e65100,stroke-width:2px,stroke-dasharray:6 3 classDef haiku fill:#e8f5e9,stroke:#2e7d32 classDef sonnet fill:#e3f2fd,stroke:#1565c0 classDef decision fill:#f3e5f5,stroke:#7b1fa2 classDef prim fill:#fff3e0,stroke:#e65100 class SCOPE,SCAN,AUDIT_L haiku class AUDIT_H,V1,V2,V3,RPT sonnet class DIAM,VDIAM decision class PARALLEL,FINDINGS prim style P_SCOPE fill:#fafafa,stroke:#bdbdbd style P_AUDIT fill:#fafafa,stroke:#bdbdbd style P_VERIFY fill:#fafafa,stroke:#bdbdbd style P_REPORT fill:#fafafa,stroke:#bdbdbd style P_PIPE fill:#fffbe6,stroke:#d4a017
模式作用图中位置
并行扇出一个任务拆给多个代理同时跑橙色 parallel 节点,绿色双路扇出(file 1 实线 / file 2..N 虚线),同构进入同一条流水线
流水线文件逐个经过「扫描分类 → 判断 → 审计/复核」串行处理P_AUDIT 内浅黄框
阶段标记每个阶段独立命名,任务分阶段推进子图标题 Scope / Audit / Verify / Report
条件分支按代理输出决定走哪条路(如 severity === 'high' 走深审,否则快速复核)紫色菱形(实线 true / 虚线 false)
验证关口多个视角并行审查,全部通过才放行到下一阶段三节点并行投票(性能 / 正确性 / 安全)→ 蓝色汇聚 → verified[] 才进 Report
模型分层扫描类用低成本档位,深审与汇总用高档位绿=haiku,蓝=sonnet
收敛循环发现新线索则回灌重新处理,直到没有新线索(dry < 2)才退出橙色虚线回边(新线索重新入扇出)