Skip to main content

reson_agentic/
lib.rs

1//! # Reson - Agents are just functions
2//!
3//! Production-grade LLM agent framework with structured outputs,
4//! multi-provider support, and native tool calling.
5//!
6//! ## Quick Start
7//!
8//! ```rust,no_run
9//! use reson_agentic::prelude::*;
10//!
11//! #[tokio::main]
12//! async fn main() -> Result<()> {
13//!     // Coming soon: agentic macro support
14//!     Ok(())
15//! }
16//! ```
17
18pub mod error;
19pub mod retry;
20pub mod runtime;
21pub mod types;
22
23// Module declarations (implementations coming in phases)
24pub mod parsers;
25pub mod providers;
26pub mod schema;
27pub mod templating;
28pub mod tools;
29pub mod utils;
30
31#[cfg(feature = "mcp")]
32pub mod mcp;
33
34// Re-export proc macros from resonai-macros crate
35pub use resonai_macros::{agentic, agentic_generator, Deserializable, Tool};
36
37// Re-export McpServer for convenience
38#[cfg(feature = "mcp")]
39pub use crate::mcp::McpServer;
40
41// Prelude for convenient imports
42pub mod prelude {
43    pub use crate::error::{Error, Result};
44    pub use crate::runtime::{RunParams, Runtime};
45    pub use crate::types::{
46        CacheMarker, ChatMessage, ChatRole, CreateResult, Provider, ReasoningSegment, TokenUsage,
47        ToolCall, ToolResult,
48    };
49}