oxo-call 0.11.0

Model-intelligent orchestration for CLI bioinformatics — call any tool with LLM intelligence
Documentation
//! Programmatic API for oxo-call.
//!
//! This module re-exports the public types and key modules so that downstream
//! crates (including the benchmark suite) can depend on `oxo-call` as a library
//! without reaching into private internals.
//!
//! # Example
//!
//! ```rust,ignore
//! use oxo_call::skill::{Skill, SkillManager, validate_skill_depth};
//! use oxo_call::history::{HistoryEntry, CommandProvenance};
//! use oxo_call::mcp::McpClient;
//! ```
//!
//! The binary entry point lives in `main.rs`; this file only surfaces the
//! library interface.

pub mod config;
#[cfg(not(target_arch = "wasm32"))]
pub mod copilot_auth;
pub mod docs;
pub mod engine;
pub mod error;
pub mod handlers;
pub mod history;
pub mod index;
pub mod job;
pub mod license;
pub mod llm;
pub mod mcp;
pub mod runner;
pub mod sanitize;
pub mod server;
pub mod skill;
pub mod workflow;

/// A single crate-wide mutex that **all** test modules must acquire before
/// reading or writing `OXO_CALL_DATA_DIR` (or any other process-global
/// environment variable used by tests).  Using a shared instance prevents
/// the race conditions that arise when separate modules each define their
/// own `ENV_LOCK`.
#[cfg(test)]
pub(crate) static ENV_LOCK: std::sync::Mutex<()> = std::sync::Mutex::new(());