Szál
Szál (Hungarian: thread) — Workflow orchestration engine for Rust
Define steps, wire them into flows with branching, retry, and rollback — then execute sequentially, in parallel, or as a DAG. Part of the AGNOS ecosystem.
Quick start
[]
= "0.26"
Sequential flow
use ;
use StepDef;
let mut flow = new;
flow.add_step;
flow.add_step;
flow.add_step;
flow.validate.unwrap;
DAG workflow
use ;
use StepDef;
let build = new;
let unit_test = new.depends_on;
let integ_test = new.depends_on;
let deploy = new
.depends_on
.depends_on;
let mut flow = new;
flow.add_step;
flow.add_step;
flow.add_step;
flow.add_step;
flow.validate.unwrap; // cycle detection + dependency validation
State machine
use WorkflowState;
let state = Created;
assert!;
assert!;
Modules
| Module | Description |
|---|---|
step |
Atomic workflow steps — timeout, retry, rollback, DAG dependencies |
flow |
Flow composition — sequential, parallel, DAG (Kahn's), hierarchical |
engine |
Execution config and flow result aggregation |
state |
Workflow state machine with validated transitions |
error |
Typed errors — step failure, timeout, retry exhaustion, cycle detection |
Execution modes
| Mode | Description |
|---|---|
Sequential |
Steps run one after another |
Parallel |
Steps run concurrently (no dependencies) |
Dag |
Dependency graph with cycle detection (DFS) |
Hierarchical |
Manager step delegates to sub-steps |
Roadmap to v1.0
| Version | Milestone | Status |
|---|---|---|
| 0.22 | MCP protocol layer, majra integration, ai-hwaccel, examples, fuzz targets | Done |
| 0.23 | Agent orchestration + LLM gateway (~200 tools) | Done |
| 0.24 | Security/governance + integration tools (~350 tools) | Done |
| 0.25 | Knowledge, training, simulation tools (~490 tools) | Done |
| 0.26 | Consolidation, hardening, supply chain security | Current |
| 1.0 | Stable unified MCP engine | — |
License
AGPL-3.0-only