magi_core/lib.rs
1// Author: Julian Bolivar
2// Version: 1.0.0
3// Date: 2026-04-05
4
5//! # magi-core
6//!
7//! Multi-perspective analysis using three independent LLM agents
8//! (Melchior/Scientist, Balthasar/Pragmatist, Caspar/Critic).
9//!
10//! Each agent analyzes content from a different perspective, then a
11//! consensus engine synthesizes their verdicts into a unified report.
12//!
13//! ## Quick Start
14//!
15//! ```rust,no_run
16//! use magi_core::prelude::*;
17//! use std::sync::Arc;
18//!
19//! # async fn example() -> Result<(), MagiError> {
20//! // let provider: Arc<dyn LlmProvider> = /* your provider */;
21//! // let magi = Magi::new(provider);
22//! // let report = magi.analyze(&Mode::CodeReview, "fn main() {}").await?;
23//! // println!("{}", report.report);
24//! # Ok(())
25//! # }
26//! ```
27
28pub mod agent;
29pub mod consensus;
30pub mod error;
31pub mod orchestrator;
32pub mod prelude;
33mod prompts;
34pub mod provider;
35pub mod providers;
36pub mod reporting;
37pub mod schema;
38mod user_prompt;
39pub mod validate;