pub mod agent; pub mod billing; pub mod chat; pub mod client; pub mod compact; pub mod embed; pub mod error; pub mod model; pub mod orao; pub mod perception; pub mod react; pub mod skills; pub mod sync; pub mod task; pub mod tokent; pub mod tool; pub use billing::{ BillingRecord, BillingResult, check_balance, check_user_balance, initialize_project_billing, initialize_user_billing, persist_billing_error, record_ai_usage, record_user_ai_usage, }; pub use chat::{ AgentExecutionProfile, AgentRole, AiContextSenderType, AiRequest, AiStreamChunk, ChatService, Mention, RoomMessageContext, StreamCallback, }; pub use client::types::ChatRequestMessage; pub use client::{AiCallResponse, AiClientConfig, call_with_params, call_with_retry}; pub use compact::{ CompactConfig, CompactLevel, CompactService, CompactSummary, MessageSummary, RoomCompactContext, RoomCompactRecord, }; pub use embed::{ EmbedClient, EmbedMemoryInput, EmbedService, QdrantClient, SearchResult, TagEmbedInput, new_embed_client, }; pub use error::{AgentError, Result}; pub use orao::{ ActionExecutor, ActionResult, ActionType, ActionVerdict, OraoConfig, OraoExecutor, OraoExecutorBuilder, OraoOutcome, OraoStep, PerceptionSnapshot, PlannedAction, ReasoningOutput, RoundRecord, SafetyLevel, }; pub use perception::{PerceptionService, SkillContext, SkillEntry, ToolCallEvent}; pub use react::{ DEFAULT_SYSTEM_PROMPT, PERSONAL_CONTEXT_PROMPT, ROOM_CONTEXT_PROMPT, ReactConfig, ReactStep, }; pub use skills::{ BuiltInSkill, SKILL_TEMPLATES, all_skill_slugs, all_skills, get_skill, get_skill_by_tool, is_built_in_skill, match_skill_by_keyword, skills_by_category, }; pub use sync::list_accessible_models; pub use task::TaskService; pub use tokent::{TokenUsage, resolve_usage}; pub use tool::{ ToolCall, ToolCallRecord, ToolCallRecorder, ToolCallResult, ToolContext, ToolDefinition, ToolError, ToolExecutor, ToolHandler, ToolParam, ToolRegistry, ToolResult, ToolSchema, }; #[cfg(feature = "rig")] pub use agent::RigAgentService; #[cfg(feature = "rig")] pub use tool::{RecordingTool, RigToolSet, is_retryable_tool_error};