Give events one safe front door You publish normalized events into an inbox where policies authenticate, authorize, retry, dead-letter, and route them. Source callbacks never call a model directly. rust academy academy/topics/event-runtime-core website/content-src/academy/course.mjs academy Give events one safe front door
Unit 10 · React safely to live events

Give events one safe front door

You publish normalized events into an inbox where policies authenticate, authorize, retry, dead-letter, and route them. Source callbacks never call a model directly.

AxEventRuntime10 focused minutesNot started
Worked example

See the idea in context

let mut target = AxEventTarget::new("inventory-agent", invoke_agent);
target.map_input = Some(Arc::new(|event, _|
    Ok(json!({"uri": event.data["uri"]}))
));
let route = AxEventRoute {
    id: "resource-wake".into(), action: "wake".into(),
    r#match: json!({"types":["mcp.resource.updated"]}),
    target_id: Some("inventory-agent".into()),
    require_authenticated: true, ordering: "strict".into(),
    debounce_ms: 0, instance_key: None,
};
let mut runtime = AxEventRuntime::new(vec![route], json!({}))?;
runtime.register_target(target);
runtime.start()?;
Run itIn your own project
cargo add axllm

use axllm::{ai, ax};
use serde_json::json;

let llm = ai("openai", json!({"apiKey": std::env::var("OPENAI_API_KEY")?}))?;
let classify = ax("review:string -> sentiment:class \"positive, negative, neutral\"")?;

Set OPENAI_APIKEY in your environment before running provider-backed code.

In the ax repo

From a clone of the ax repo:

npm run example -- rust src/examples/rust/mcp/resource_wake_agent.rs
Active practice

Show that you can use it

Answer 2 in a row to learn this · attempt 1
Keep exploring

Source-backed follow-up