xcodeai/lib.rs
1//! xcodeai library crate.
2//!
3//! This file exists so that integration tests in `tests/` can access internal
4//! types via `xcodeai::http::AppState`, `xcodeai::config::Config`, etc.
5//!
6//! A Rust binary crate only exposes its modules to integration tests if a
7//! `lib.rs` exists. The binary entry point (`main.rs`) still works normally;
8//! `lib.rs` just provides the public API surface for the test harness.
9//!
10//! All modules declared here are the same modules declared in `main.rs` via
11//! `mod` statements. Rust compiles them once and shares the code between the
12//! binary and the library crate.
13pub mod agent;
14pub mod auth;
15pub mod config;
16pub mod context;
17pub mod http;
18pub mod io;
19pub mod llm;
20pub mod lsp;
21pub mod mcp;
22pub mod orchestrator;
23pub mod repl;
24pub mod sandbox;
25pub mod session;
26pub mod tools;
27pub mod tracking;
28pub mod ui;