Skip to main content

osp_cli/
lib.rs

1//! `osp-cli` is the canonical single-crate package for `osp`.
2//!
3//! - [`app`] for the main CLI entrypoints and stateful host surface
4//! - [`config`] for configuration types and resolution
5//! - [`core`] for shared output, row, and runtime types
6//! - [`dsl`] for pipeline parsing and execution
7//! - [`ui`] for rendering and message formatting
8//! - [`repl`] for REPL engine types
9//! - [`completion`] for command/completion tree types
10//! - [`plugin`] for plugin discovery/dispatch management
11//! - [`api`], [`ports`], and [`services`] for the service/client layer
12//!
13//! The old multi-crate mirror still lives under `workspace/`, but the root
14//! crate's canonical implementation now lives in the module tree below.
15
16pub mod api;
17pub mod app;
18pub mod cli;
19pub mod completion;
20pub mod config;
21pub mod core;
22pub mod dsl;
23pub mod plugin;
24pub mod ports;
25pub mod prelude;
26pub mod repl;
27pub mod runtime;
28pub mod services;
29pub mod ui;
30
31pub use crate::app::{App, AppBuilder, AppRunner, run_from, run_process};
32pub use crate::core::command_policy;
33pub use crate::native::{
34    NativeCommand, NativeCommandCatalogEntry, NativeCommandContext, NativeCommandOutcome,
35    NativeCommandRegistry,
36};
37
38mod native;
39
40#[cfg(test)]
41mod tests;