pub mod cursor;
pub mod error;
pub mod executor;
pub mod metrics;
pub mod operations;
pub mod rag;
pub mod safety;
pub mod session;
pub use cursor::{CursorNeighborhood, TraversalCursor, ViewMode};
pub use error::{AgentError, AgentSessionId, Result};
pub use executor::{execute_ucl, ExecutionResult, UclExecutor};
pub use metrics::{MetricsSnapshot, OperationMetrics, SessionMetrics};
pub use operations::{
AgentTraversal, BlockView, ExpandDirection, ExpandOptions, ExpansionResult, FindResult,
NavigationResult, NeighborhoodView, SearchOptions,
};
pub use rag::{
MockRagProvider, NullRagProvider, RagCapabilities, RagMatch, RagProvider, RagSearchOptions,
RagSearchResults,
};
pub use safety::{
BudgetTracker, CircuitBreaker, CircuitState, DepthGuard, GlobalLimits, OperationBudget,
SessionLimits,
};
pub use session::{AgentCapabilities, AgentSession, SessionConfig, SessionInfo, SessionState};
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_crate_exports() {
let _: AgentSessionId = AgentSessionId::new();
let _: SessionLimits = SessionLimits::default();
let _: GlobalLimits = GlobalLimits::default();
let _: ViewMode = ViewMode::default();
}
}