blazen 0.1.93

Blazen - A Rust-native AI workflow engine with event-driven orchestration
Documentation

Blazen

A high-performance, event-driven workflow framework for Rust.

Blazen models computation as a directed graph of steps connected by typed events. The runtime maintains an internal event queue, routing events to matching step handlers and spawning them concurrently until a [StopEvent] terminates the workflow.

Quick start

use blazen::prelude::*;

#[derive(Debug, Clone, Serialize, Deserialize, Event)]
struct GreetEvent { name: String }

#[step]
async fn greet(event: StartEvent, _ctx: Context) -> Result<StopEvent, WorkflowError> {
    let name = event.data["name"].as_str().unwrap_or("World");
    Ok(StopEvent { result: serde_json::json!({ "greeting": format!("Hello, {}!", name) }) })
}

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    let workflow = WorkflowBuilder::new("greeter")
        .step(greet_registration())
        .build()?;
    let result = workflow.run(serde_json::json!({ "name": "Zach" })).await?.result().await?;
    println!("{}", result.to_json());
    Ok(())
}

Feature flags

Feature Description
llm (default) LLM provider integrations
openai OpenAI + OpenAI-compatible providers
anthropic Anthropic Claude provider
persist Checkpoint storage via redb
telemetry Observability, tracing spans, and workflow history
all Everything