Skip to main content

leviath_runtime/
lib.rs

1//! # Leviath Runtime
2//!
3//! ECS-based agent execution engine using bevy_ecs.
4//!
5//! The runtime manages agent lifecycle, context window management, task scheduling,
6//! and inference execution through a game-loop-inspired architecture where agents
7//! are entities and their behaviors are systems.
8
9pub(crate) mod cancel;
10pub(crate) mod compaction_bridge;
11pub mod components;
12pub mod context_setup;
13pub(crate) mod context_tools;
14pub(crate) mod context_transform;
15pub mod control_socket;
16pub mod custom_region;
17pub mod dynamic_interaction;
18pub mod fanout;
19pub(crate) mod gate_prompt;
20pub mod host;
21pub(crate) mod inference_bridge;
22pub mod inference_pool;
23pub mod interaction_hub;
24pub mod interaction_points;
25pub mod persistence;
26pub(crate) mod persistence_bridge;
27pub mod pipeline;
28pub mod provider_creds;
29pub(crate) mod providers;
30pub(crate) mod repetition;
31pub mod restore;
32pub mod script_provider;
33pub mod taint;
34pub mod telemetry;
35pub(crate) mod tick_scope;
36pub mod title;
37pub(crate) mod title_bridge;
38pub mod tool_bridge;
39pub mod world;
40// test_support.rs gates itself with an inner `#![cfg(test)]` attribute, so no
41// `#[cfg(test)]` is needed here (adding one would trigger clippy's
42// `duplicated_attributes` lint under `-D warnings`).
43mod test_support;
44
45pub use components::{AgentState, AgentStatus, ContextWindow, ParentRef, SubAgentChildren};
46pub use fanout::{FanOutSpawner, FanOutSpawnerRes};
47pub use inference_bridge::RetryPolicy;
48pub use inference_pool::{InferencePoolConfig, InferencePools};
49pub use provider_creds::{ProviderCreds, build_provider_registry};
50pub use providers::ProviderRegistry;
51pub use taint::TaintGate;
52pub use tool_bridge::BoxedToolExec;