sim_lib_cookbook/lib.rs
1//! Runtime `cookbook:` operations for SIM.
2//!
3//! This lib exposes the [`sim_cookbook`] engine as registered runtime
4//! operations over a shared recipe store: `cookbook:books|chapters|list|show|
5//! setup|search|next|reload` (ungated) and `cookbook:run` (read-eval gated,
6//! decodes a recipe's setup through its codec, evaluates it, and checks
7//! declared expectations).
8//!
9//! The engine stays in `sim-cookbook` (kernel-free); this crate holds the
10//! kernel integration so the boundary stays clean. CLI, WebUI, browse/help,
11//! and agent cookbook surfaces should call these operations or the same seeded
12//! store helpers instead of creating a second projection path.
13
14#![forbid(unsafe_code)]
15#![deny(missing_docs)]
16
17mod build;
18mod cli;
19mod ops;
20mod run;
21mod runtime;
22#[cfg(feature = "seed-recipes")]
23mod seeds;
24
25pub use ops::{CookbookOp, OpKind};
26pub use run::{decode_setup, missing_requires, require_eval_capability, run_recipe};
27pub use runtime::{
28 CookbookLib, CookbookStoreHandle, install_cookbook_lib, manifest_name, op_exports, store_symbol,
29};
30#[cfg(feature = "seed-recipes")]
31pub use seeds::{SEEDED_RECIPE_BOOKS, install_seeded_cookbook_lib, seeded_recipe_store};
32
33#[cfg(test)]
34mod tests;