#![forbid(unsafe_code)]
#![deny(missing_docs)]
#![deny(unreachable_pub)]
#![warn(rust_2018_idioms)]
pub mod adapt;
pub mod agent;
pub mod config;
pub mod context;
pub mod error;
pub mod prelude;
pub mod provider;
pub mod runtime;
pub mod store;
pub mod token;
pub mod tool;
pub mod tool_output;
pub mod tool_scope;
#[cfg(feature = "rag")]
pub mod rag;
#[cfg(feature = "queue")]
pub mod queue;
#[cfg(feature = "server")]
pub mod grpc;
pub use crate::error::{ContextError, Error, ProviderError, Result, StorageError, ToolError};
pub use crate::runtime::{
AgentEvent, AgentRuntime, CompactionResult, CompactionService, Control, EmitRequest, EventKind,
FileSnapshotStore, InvocationError, InvocationEvent, InvocationHandle, ModelRouter, RunId,
RunOutput, RunRequest, RunStatus, RuntimeError, RuntimeEventBridge, RuntimeEventBridgeError,
RuntimeEventBridgeHandle, RuntimeEventEnvelope, RuntimeEventId, RuntimeEventStore,
RuntimeEventStoreError, RuntimeInvocation, RuntimePolicy, RuntimeRoom, RuntimeStreamAdapter,
RuntimeStreamError, RuntimeSubscription, RuntimeSubscriptionError, RuntimeSubscriptionHub,
SessionContext, Snapshot, SnapshotStore,
};
pub use crate::tool_output::{ToolOutputConfig, TruncationResult};