everruns 0.17.24

Build and run durable AI agents in Rust — the application-facing entrypoint to the Everruns agentic framework
Documentation

everruns

The application-facing entrypoint to the Everruns agentic framework.

everruns is a thin, publishable facade over the in-process runtime. Add a single dependency and run an agent turn — without wiring up everruns-core or everruns-runtime directly.

This first release is a compatibility facade: it moves no engine code and re-exports the minimum needed to construct and run an in-process session. Default features stay offline — no provider, MCP, filesystem, SQLx, server, or worker integrations are activated by default. APIs not yet promoted onto the facade remain reachable through the escape-hatch everruns::core and everruns::runtime modules.

Example

use everruns::{DriverId, InProcessRuntimeBuilder, InputMessage, LlmSimConfig, ResolvedModel};

#[tokio::main]
async fn main() -> Result<(), everruns::AgentLoopError> {
    let runtime = InProcessRuntimeBuilder::new()
        .single_session(|s| {
            s.harness("assistant", "You are a helpful assistant.")
                .agent("assistant-agent", "Answer the user.")
        })
        .llm_sim(LlmSimConfig::fixed("4"))
        .default_model(ResolvedModel {
            model: "llmsim-model".into(),
            provider_type: DriverId::LlmSim,
            api_key: Some("fake-key".into()),
            base_url: None,
            provider_metadata: None,
        })
        .build()
        .await?;

    let session_id = runtime.default_session_id().expect("single_session id");
    let result = runtime
        .run_turn(session_id, InputMessage::user("What is 2 + 2?"))
        .await?;

    assert_eq!(result.response, "4");
    Ok(())
}

License

MIT