sim_lib_agent_runner_core/lib.rs
1//! Provider-neutral runner contracts for SIM model fabrics.
2//!
3//! This crate defines the shared in-process objects used by SIM model runners:
4//!
5//! - [`ModelRequest`] for normalized task and transcript input
6//! - [`ModelResponse`] for final content and usage output
7//! - [`ModelEvent`] and [`ModelEventSink`] for streaming progress
8//! - [`ModelCard`] and [`ModelBid`] for routing and selection
9//! - [`ModelRunner`] for executable runner implementations
10//!
11//! Higher-level crates install concrete runners, policies, markets, and
12//! agent-model adapters on top of these contracts.
13
14#![forbid(unsafe_code)]
15#![deny(missing_docs)]
16
17mod card;
18mod events;
19mod expr;
20mod grammar;
21mod model;
22
23/// Cookbook recipes embedded from this crate's `recipes/` directory.
24pub static RECIPES: sim_cookbook::EmbeddedDir =
25 include!(concat!(env!("OUT_DIR"), "/cookbook_recipes.rs"));
26
27pub use card::{ModelBid, ModelCard, model_bid_class_symbol, model_card_class_symbol};
28pub use events::{ModelEvent, ModelEventSink, VecEventSink, model_request_kernel_event};
29pub use grammar::shape_to_grammar;
30pub use model::{
31 ModelRequest, ModelResponse, ModelRunner, ModelUsage, model_request_class_symbol,
32 model_response_class_symbol, model_usage_class_symbol,
33};