Skip to main content

bamboo_engine/runtime/
mod.rs

1//! Agent execution runtime: loop, stream handling, task evaluation.
2
3pub mod agent;
4pub mod complexity_classifier;
5pub mod config;
6pub mod context;
7pub mod execution;
8pub mod gold_evaluation;
9pub mod hooks;
10pub mod managers;
11pub mod model_roster;
12pub mod runner;
13#[allow(clippy::module_inception)]
14pub mod runtime;
15pub mod stream;
16pub mod task_context;
17pub mod task_evaluation;
18
19pub use agent::{Agent, AgentBuilder};
20pub use bamboo_domain::RuntimeSessionPersistence;
21pub use complexity_classifier::{ComplexityClassifier, TaskComplexity};
22pub use config::{GoldConfig, ImageFallbackConfig, ImageFallbackMode};
23// `AgentLoopConfig` is intentionally NOT re-exported: its fields are `pub(crate)`,
24// so it is unconstructible outside the engine. Internal call sites reach it via
25// `crate::runtime::config::AgentLoopConfig`. External code drives the loop only
26// through `AgentRuntime::execute`.
27pub use execution::runner_state::{AgentRunner, AgentStatus};
28pub use hooks::HookRunner;
29pub use managers::{
30    LifecycleManager, LlmManager, MemoryManager, MiniLoopExecutor, PromptManager, ToolManager,
31};
32pub use model_roster::{ModelRoster, RoleModel};
33pub use runtime::{AgentRuntime, AgentRuntimeBuilder, ExecuteRequest, ExecuteRequestBuilder};
34pub use task_context::TaskLoopContext;
35pub use task_evaluation::{evaluate_task_progress, TaskEvaluationResult};
36
37#[cfg(test)]
38mod tests;