使用说明
Universal orchestration engine for AI agents.
Every workflow coordinated. Every step tracked. Every failure recovered. Always.
Problems Solved · Quickstart · 24 Capabilities · How It Works · MCP Tools · Benchmarks · Install · API · Paper
每个编排工具都解决一个模式。
Airflow运行DAGs,但需要Kubernetes。Temporal可以持久执行,但需要服务器。GitHub Actions执行CI,但不能动态分支。Zapier连接触发器,但无法回滚。 每个工具都需要基础设施,没有一个是人工智能原生的。
当前的修复不起作用。YAML管道是僵化的——你不能在运行时添加一个步骤。Cron调度程序不知道假期或服务健康状况。重试逻辑是一刀切的。审批门是“是/否”复选框。没有编排工具可以让你的AI代理 创建、修改和推理 工作流程本身。
代理工作流程 编排 每 单个引擎中的协调模式。DAGs、状态机、批处理、流处理、扇出/扇入——所有这些都通过124个MCP工具实现。不是“配置YAML文件”。你的代理 认为 关于工作流——计划它们、验证它们、执行它们、智能重试、回滚失败,并从每次执行中学习。
已解决的问题(请先阅读)
- 问题: 每个编排工具都需要基础设施(Kubernetes、服务器、云服务)。
解决了的: 单个
.awf二进制文件。零基础设施。离线工作。 - 问题: 工作流工具处理一种模式(DAGs、状态机或批处理,永远不会全部)。 解决了的: 一个引擎适用于所有模式——DAGs、FSM、批处理、流、扇出、触发器、调度。
- 问题: 无论失败类型如何,重试都是“3次回退”。 解决了的: 故障分类重试——针对速率限制、网络错误、身份验证失败的不同策略。
- 问题: 当步骤5失败时,步骤1-4会留下部分结果,无法撤消。 解决了的: 每一步回滚操作,使用加密收据以相反的顺序执行。
- 问题: “部署到生产环境”自动执行,无需人工检查。 解决了的: 具有升级链、有条件自动批准和有时限决策的批准门。
- 问题: “凌晨3点发生了什么导致生产中断?”需要原木考古。 解决了的: 结构化、可查询的审计跟踪。“显示所有涉及计费数据库的工作流。”
use agentic_workflow::{Workflow, StepNode, StepType, Edge, EdgeType};
use agentic_workflow::engine::DagEngine;
let mut engine = DagEngine::new();
// Define a deployment pipeline
let mut wf = Workflow::new("deploy-pipeline", "Build, test, approve, deploy");
let build = StepNode::new("Build", StepType::Command {
command: "cargo".into(), args: vec!["build".into(), "--release".into()],
});
let test = StepNode::new("Test", StepType::Command {
command: "cargo".into(), args: vec!["test".into()],
});
let approve = StepNode::new("Approve", StepType::ApprovalGate {
approvers: vec!["lead@team.com".into()], timeout_ms: Some(3600_000),
});
let deploy = StepNode::new("Deploy", StepType::McpTool {
sister: "connect".into(), tool: "deploy".into(),
params: serde_json::json!({"target": "production"}),
});
let (bid, tid, aid, did) = (build.id.clone(), test.id.clone(), approve.id.clone(), deploy.id.clone());
wf.add_step(build); wf.add_step(test); wf.add_step(approve); wf.add_step(deploy);
wf.add_edge(Edge { from: bid, to: tid.clone(), edge_type: EdgeType::Sequence });
wf.add_edge(Edge { from: tid, to: aid.clone(), edge_type: EdgeType::Sequence });
wf.add_edge(Edge { from: aid, to: did, edge_type: EdgeType::Sequence });
// Validate and execute
engine.register_workflow(wf).unwrap();
四个步骤。一个DAG。生产前的审批门。重试情报。失败后回滚。适用于Claude、Cursor、Windsurf或任何MCP客户端。
24种能力
六类。二十四种能力。存在或将存在的每种编排模式。
核心引擎(功能1-4)
| # | 能力 | 它解决了什么 |
|---|---|---|
| 1 | 通用DAG引擎 | 一个图中的每个协调模式——线性、并行、条件、循环 |
| 2 | 执行意识 | 全面的执行意识——实时状态、进度、预计到达时间、干预 |
| 3 | 智能调度 | 上下文感知cron——跳过假期,尊重服务健康,学习最佳时间 |
| 4 | 触发全科学 | 通用触发器--文件、webhook、计划、API、工作流输出、自定义 |
弹性(能力5-8)
| # | 能力 | 它解决了什么 |
|---|---|---|
| 5 | 重试智能 | 按故障类型重试——速率限制为指数级,死锁为立即级 |
| 6 | 回滚架构 | 每一步撤销验证——逆序,加密收据 |
| 7 | 断路器智能 | 工作流感知断路器——如果步骤3的服务中断,则不要启动步骤1 |
| 8 | 死信情报 | 对故障进行分类,恢复时自动重试,显示可操作的摘要 |
处理(能力9-11)
| # | 能力 | 它解决了什么 |
|---|---|---|
| 9 | 批处理 | 受控并行、进度检查点、中断恢复 |
| 10 | 流处理 | 连续数据——文件监视、webhooks、轮询——带背压和窗口 |
| 11 | 扇出/扇入 | “并行查询5个API,等待3个,合并结果”作为一级原语 |
治理(能力12-14)
| # | 能力 | 它解决了什么 |
|---|---|---|
| 12 | 审批门 | 升级链、有条件自动批准、有时限、委托 |
| 13 | 审计跟踪 | 结构化、可查询的事件——谁做了什么、什么时候、对什么资源做了什么 |
| 14 | 幂等性 | 内置重复数据消除功能——永远不要发送重复的电子邮件或重复收费 |
状态(能力15-16)
| # | 能力 | 它解决了什么 |
|---|---|---|
| 15 | 状态机引擎 | 一流的FSM——已创建→ Paid → 已发货→ 交付时有警卫条件 |
| 16 | 变量范围 | 层次范围——工作流→ 分支→ step → 迭代,带类型检查 |
情报(能力17-24)
| # | 能力 | 它解决了什么 |
|---|---|---|
| 17 | 工作流模板 | 参数化的可重用模式——“部署”模板采用(应用程序、主机、环境) |
| 18 | 自然语言工作流 | “每天早上,检查库存并重新订购”→ 可执行DAG |
| 19 | 执行考古学 | 比较执行情况,检测异常,识别瓶颈 |
| 20 | 预测性执行 | “多久?会成功吗?要花多少钱?”来自历史 |
| 21 | 工作流演进 | 健康评分、漂移检测、优化建议 |
| 22 | 梦幻之州 | 空闲时间维护——预检查deps、验证配置、表面洞察 |
| 23 | 复合代数 | 工作流的工作流——整个工作流上的序列、并行、条件运算符 |
| 24 | 工作流集合 | 通过隐私验证跨团队共享工作流模式 |
基准测试
锈芯。内存引擎。压力测试的真实数字:
| 操作 | 时间 | 规模 |
|---|---|---|
| DAG验证+拓扑排序 | <50ms | 1000步 |
| 开始执行 | <100ms | 100并发 |
| 批量创建 | <500ms | 10000件 |
| 死信摄取+摘要 | <500ms | 10000件 |
| Idempotency商店 | <500ms | 10000个密钥 |
| 标识检查 | <200ms | 10000个密钥 |
| 审计记录+查询 | <500ms | 10000次活动 |
| FSM转换 | <100ms | 1000步 |
| .awf写入+读取 | <200ms | 100个工作流 |
| 异常检测 | <100ms | 1000次处决 |
| 可变级联 | 瞬间 | 1000深度 |
所有压力测试都是在苹果ARM64、Rust 1.82、发布配置文件上测量的。每个基准都有一个相应的命名测试(
stress_dag_1000_steps_linear_chain,stress_batch_10k_items等等)。
Comparison with existing systems
| 气流 | 时间 | GH动作 | Zapier | 代理工作流程 | |
|---|---|---|---|---|---|
| 所有协调模式 | 仅DAG | Saga | DAG | 触发动作 | 全部 |
| 所需基础设施 | Kubernetes | 服务器 | 云 | 云 | 无 |
| 人工智能原生(MCP) | 否 | 否 | 无 | 否 | 是 |
| 重试智能 | 基本 | 内置 | 基本 | 基本 | 按故障类别 |
| 回滚 | 否 | 传奇 | 否 | 否 | 每一步+验证 |
| 断路器 | 否 | 否 | 无 | 否 | 工作流感知 |
| 审批门 | 否 | 否 | 环境门 | 否 | 升级链 |
| 审计跟踪 | 日志 | 日志 | 记录 | 日志 | 结构化+可查询 |
| 状态机 | 否 | 否 | 不 | 否 | 头等舱 |
| 自然语言WF | 否 | 否 | 不 | 否 | 是 |
| 预测执行 | 否 | 否 | 不 | 否 | 是 |
安装
一个衬垫 (桌面配置文件,向后兼容):
curl -fsSL https://agentralabs.tech/install/workflow | bash
下载预构建 awf 和 agentic-workflow-mcp 二进制文件 ~/.local/bin/ 并将MCP服务器合并到您的Claude Desktop和Claude Code配置中。如果发布工件不可用,安装程序会自动回退到 cargo install --git 源代码安装。
环境概况 (每个环境一个命令):
# Desktop MCP clients (auto-merge Claude Desktop + Claude Code when detected)
curl -fsSL https://agentralabs.tech/install/workflow/desktop | bash
# Terminal-only (no desktop config writes)
curl -fsSL https://agentralabs.tech/install/workflow/terminal | bash
# Remote/server hosts (no desktop config writes)
curl -fsSL https://agentralabs.tech/install/workflow/server | bash
| 通道 | 命令 | 结果 |
|---|---|---|
| GitHub安装程序(官方) | curl -fsSL https://agentralabs.tech/install/workflow | bash |
安装发布二进制文件;合并MCP配置 |
| GitHub安装程序(桌面) | curl -fsSL https://agentralabs.tech/install/workflow/desktop | bash |
显式桌面配置文件 |
| GitHub安装程序(终端) | curl -fsSL https://agentralabs.tech/install/workflow/terminal | bash |
仅限二进制;不写入配置 |
| GitHub安装程序(服务器) | curl -fsSL https://agentralabs.tech/install/workflow/server | bash |
服务器安全行为 |
| crates.io(官方) | cargo install agentic-workflow-cli agentic-workflow-mcp |
安装 awf CLI和MCP服务器 |
| 目标 | 命令 |
|---|---|
| 只需给我工作流 | 运行上面的一个liner |
| Rust开发人员 | cargo install agentic-workflow-cli agentic-workflow-mcp |
MCP 服务器
任何兼容MCP的客户端都可以即时访问通用工作流编排。 这 agentic-workflow-mcp 板条箱将整个发动机暴露在外 模型上下文协议 (JSON-RPC 2.0通过标准输入)。
cargo install agentic-workflow-mcp
配置Claude桌面
添加 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"agentic-workflow": {
"command": "agentic-workflow-mcp",
"args": ["serve"]
}
}
}
配置VS代码/光标
添加 .vscode/settings.json:
{
"mcp.servers": {
"agentic-workflow": {
"command": "agentic-workflow-mcp",
"args": ["serve"]
}
}
}
LLM能得到什么
| 类别 | 计数 | 示例 |
|---|---|---|
| 工具 | 124 | workflow_create, workflow_run, workflow_validate, workflow_fsm_transition, workflow_approve_decide, workflow_predict_duration ... |
| 资源 | -- | 计划中 |
| 提示 | -- | 计划中 |
连接后,LLM可以创建工作流、验证DAG、执行管道、管理状态机、批准部署、查询审计跟踪和预测执行结果——所有这些都有相同的支持 .awf 二进制文件。
快速入门
创建并运行工作流--MCP工具
→ workflow_create { name: "daily-report", description: "Generate metrics" }
← { workflow_id: "wf-a1b2c3", steps: 0, status: "created" }
→ workflow_step_add { workflow_id: "wf-a1b2c3", name: "Query DB", type: "mcp_tool" }
← { step_id: "s-d4e5f6", position: 1 }
→ workflow_validate { workflow_id: "wf-a1b2c3" }
← { valid: true, steps: 3, edges: 2, warnings: [] }
→ workflow_run { workflow_id: "wf-a1b2c3" }
← { execution_id: "ex-g7h8i9", status: "running" }
→ workflow_progress { execution_id: "ex-g7h8i9" }
← { completed: 2, total: 3, percent: 66.7, eta_ms: 45000 }
状态机——订单生命周期
→ workflow_fsm_create { name: "order", initial: "Created", states: [...], transitions: [...] }
← { fsm_id: "fsm-j0k1l2" }
→ workflow_fsm_transition { fsm_id: "fsm-j0k1l2", event: "pay" }
← { from: "Created", to: "Paid", timestamp: "..." }
→ workflow_fsm_transition { fsm_id: "fsm-j0k1l2", event: "ship" }
← { from: "Paid", to: "Shipped" }
运作原理
AgenticWorkflow通过六个子系统协调每种协调模式:
| 子系统 | 目的 | 关键操作 |
|---|---|---|
| 发动机 | DAG执行、调度、触发器、批处理、流、扇出、FSM | 创建、验证、执行、暂停、恢复、取消 |
| 韧性 | 失败生存 | 重试、回滚、断路器、死信、幂等性 |
| 治理 | 控制和合规性 | 审批门、审计跟踪、变量范围 |
| 模板 | 可重用模式 | 模板、自然语言、组合代数 |
| 智能 | 从历史中学习 | 考古学、预测、进化、梦境 |
| 格式 | 持续状态 | .awf 带有BLAKE3校验和的二进制文件 |
.awf file format details
+-------------------------------------+
| HEADER 16 bytes | AWFL magic . version . counts
+-------------------------------------+
| WORKFLOW REGISTRY | All workflow definitions
| (type u8 | length u32 | JSON | BLAKE3)
+-------------------------------------+
| TEMPLATE LIBRARY | Stored templates
+-------------------------------------+
| EXECUTION HISTORY | Past execution records
+-------------------------------------+
| SCHEDULE TABLE | Active schedules
+-------------------------------------+
| STATE MACHINE TABLE | FSM definitions + current states
+-------------------------------------+
| TRIGGER INDEX | Active triggers
+-------------------------------------+
| AUDIT LOG | Structured audit events
+-------------------------------------+
| IDEMPOTENCY CACHE | Deduplication keys
+-------------------------------------+
| VARIABLE STORE | Scoped variables
+-------------------------------------+
每个部分独立BLAKE3校验和。一个部门的腐败不会影响其他部门。LZ4压缩可用。
验证
| 套件 | 测试 | |
|---|---|---|
| 类型系统+序列 | 59 | 所有变体,序列化往返 |
| 发动机操作 | 31 | DAG、FSM、批处理、流、扇出、调度器、触发器 |
| 韧性 | 27 | 重试、回滚、断路器、死信、幂等性 |
| 治理 | 27 | 审批门、审计跟踪、变量范围 |
| 模板+智能 | 31 | 模板、NL、构图、考古学、预测、进化 |
| 边缘案例 | 28 | 边界值、损坏检测、错误路径 |
| 压力测试 | 14 | 1K-100K规模,有时间预算 |
| 坚持+执行 | 39 | 存储往返、步骤执行、输出传播 |
| 并发访问 | 11 | 多执行、多作用域、多FSM |
| 内联单元测试 | 14 | 核心模块自检 |
| 总计 | 281 | 全部通过 |
一篇研究论文:
仓库结构
agentic-workflow/
├── Cargo.toml # Workspace root
├── crates/
│ ├── agentic-workflow/ # Core library (types, engines, resilience, governance, intelligence)
│ ├── agentic-workflow-mcp/ # MCP server (124 tools, stdio transport)
│ ├── agentic-workflow-cli/ # CLI binary (awf)
│ └── agentic-workflow-ffi/ # FFI bindings (C/Python/WASM)
├── assets/ # Agentra design system SVGs
├── paper/ # Research papers (I: Orchestration Engine)
├── scripts/ # Install + guardrail scripts
├── docs/ # Quickstart, API ref, concepts, benchmarks
└── .github/workflows/ # CI/CD pipelines
运行测试
# All workspace tests (unit + integration)
cargo test --workspace
# Stress tests only
cargo test -p agentic-workflow stress
# Single phase
cargo test -p agentic-workflow --test phase7_stress
部署模型
- 默认情况下为独立: AgentWorkflow可独立安装和操作。与AgentMemory、AgentCodebase或其他姐妹的集成是可选的,从来不是必需的。
- 零基础设施: 没有数据库,没有云服务,没有Kubernetes。单
.awf文件包含所有内容。
| 区域 | 默认行为 | 控件 |
|---|---|---|
| 数据存储 | ~/.local/share/agentic-workflow/ |
AWF_DATA_DIR |
| 日志级别 | info |
AWF_LOG=debug|info|warn|error |
| 传输 | stdio(MCP默认) | --transport sse 适用于HTTP/SSE |
路线图
| 功能 | 状态 |
|---|---|
| 步骤执行运行程序(shell、HTTP、MCP) | 已计划 |
| 通过gRPC分布式执行 | 计划 |
| 条件语句的表达式语言 | 已计划 |
| 实时触发器集成(inotify、kqueue) | 已计划 |
| Python SDK | 计划中 |
| Docker镜像 | 计划中 |
.awf文件
您的代理的编排状态。一个文件。零基础设施。
| 格式 | 二进制,BLAKE3校验和,LZ4压缩 |
| 包含 | 工作流、模板、执行、计划、FSM、触发器、审计日志、变量 |
| 适用于 | 克劳德、Cursor、Windsurf、科迪、任何MCP客户端 |
| 可移植性 | 单个文件,可复制到任何地方 |
哲学
“编排工具不应该需要比它们编排的工作流更多的基础设施。”
AgentWorkflow将所有内容存储在一个二进制文件中。没有Kubernetes。没有托管服务。没有YAML。你的代理人在工作流程中思考——顺其自然。
