rust-tool-base 0.8.0

Rust Tool Base — the batteries-included CLI application framework. Umbrella crate re-exporting the full public API.
//! Rust Tool Base — batteries-included CLI application framework.
//!
//! This is the umbrella crate that re-exports the public API of the framework.
//! Opt into feature areas with Cargo features; the default feature set is
//! `cli`, `update`, `docs`, `mcp`, `credentials`.
//!
//! See the [project documentation](https://rtb.phpboyscout.uk) for a guided tour.

#![cfg_attr(docsrs, feature(doc_auto_cfg))]

pub use rtb_app as core;
pub use rtb_assets as assets;
pub use rtb_config as config;
pub use rtb_error as error;

#[cfg(feature = "cli")]
pub use rtb_cli as cli;

#[cfg(feature = "update")]
pub use rtb_update as update;

#[cfg(feature = "docs")]
pub use rtb_docs as docs;

#[cfg(feature = "mcp")]
pub use rtb_mcp as mcp;

// Renamed from `ai`/`rtb::ai` at the Wave-4 extraction (rtb-ai →
// rtb-chat) — a deliberate pre-1.0 breaking rename, spec
// 2026-07-23-multi-repo-decomposition D4.
#[cfg(feature = "chat")]
pub use rtb_chat as chat;

#[cfg(feature = "credentials")]
pub use rtb_credentials as credentials;

#[cfg(feature = "tui")]
pub use rtb_tui as tui;

#[cfg(feature = "telemetry")]
pub use rtb_telemetry as telemetry;

// Renamed from `vcs`/`rtb::vcs` at the Wave-4 extraction (rtb-vcs →
// rtb-forge) — a deliberate pre-1.0 breaking rename, spec
// 2026-07-23-multi-repo-decomposition D4.
#[cfg(feature = "forge")]
pub use rtb_forge as forge;

/// The prelude — glob-import for typical application wiring.
pub mod prelude {
    pub use crate::core::prelude::*;
    pub use crate::error::{Error, Result};
}