1pub mod config;
2pub mod events;
3pub mod protocol;
4
5pub const UIRA_DIR: &str = ".uira";
6pub const DEFAULT_ANTHROPIC_MODEL: &str = "claude-sonnet-4-20250514";
7pub const DEFAULT_OPENAI_MODEL: &str = "gpt-4o";
8pub const ENV_ANTHROPIC_API_KEY: &str = "ANTHROPIC_API_KEY";
9pub const ENV_OPENAI_API_KEY: &str = "OPENAI_API_KEY";
10pub const ENV_GEMINI_API_KEY: &str = "GEMINI_API_KEY";
11pub const ENV_GOOGLE_API_KEY: &str = "GOOGLE_API_KEY";
12
13pub use config::*;
14pub use events::*;
15
16pub use protocol::{AgentError, AgentState, ExecutionResult, Item, Progress, ThreadEvent};
23
24pub use protocol::{
26 ContentBlock, ContentDelta, ImageSource, Message, MessageContent, MessageDelta, ModelResponse,
27 Role, StreamChunk, StreamError, StreamMessageStart, ToolCall,
28};
29
30pub use protocol::{
32 ApprovalRequest, ApprovalRequirement, CacheControl, JsonSchema, ReviewDecision,
33 SandboxPreference, SuggestedAction, ToolOutput, ToolOutputContent, ToolResult, ToolSpec,
34};
35
36pub use protocol::{
38 MessageId, ModelTier, Provider, SessionId, StopReason, ThreadId, TodoItem, TodoPriority,
39 TodoStatus, TokenUsage, WorkspaceConfig, TODO_CONTINUATION_PROMPT,
40};
41
42pub use protocol::{
44 atomic_write, atomic_write_secure, HookContext, HookEvent, HookEventParseError, HookOutput,
45 HookResult, PermissionDecision, PermissionMode, PostToolUseInput, PreCompactInput,
46 PreToolUseInput, SessionInfo, StopInput, ToolResponse, UserPromptSubmitInput,
47};