Skip to main content

kova_sdk/
lib.rs

1pub mod agent;
2pub mod embedding;
3pub mod error;
4pub mod mcp;
5pub mod models;
6pub mod provider;
7pub mod streaming;
8pub mod telemetry;
9pub mod tool;
10#[cfg(feature = "tools")]
11pub mod tools;
12
13pub use tool::ToolLifecycleHook;
14pub use tool::approval::{ApprovalDecision, ToolApprovalHandler};
15
16/// Convenience re-exports for the most commonly used types.
17///
18/// ```
19/// use kova_sdk::prelude::*;
20/// ```
21pub mod prelude {
22    pub use crate::agent::{Agent, AgentBuilder, AgentEvent, AgentResponse};
23    pub use crate::embedding::EmbeddingProvider;
24    pub use crate::error::{KovaError, ProviderErrorClass};
25    pub use crate::models::{
26        ContentBlock, ConversationMessage, InferenceConfig, ModelResponse, Role, StopReason,
27        StreamEvent, ToolDefinition, ToolResult, UsageStats,
28    };
29    pub use crate::provider::{LlmProvider, RetryConfig};
30    pub use crate::tool::approval::{ApprovalDecision, ToolApprovalHandler};
31    pub use crate::tool::registry::ToolRegistry;
32    pub use crate::tool::{Tool, ToolLifecycleHook};
33    /// Re-exported for `Agent::run_cancellable` / `run_stream_cancellable`.
34    pub use tokio_util::sync::CancellationToken;
35}