rust-tool-base 0.5.1

Rust Tool Base — the batteries-included CLI application framework. Umbrella crate re-exporting the full public API.
[package]
# Published as `rust-tool-base` — the bare `rtb` name is taken on
# crates.io by an unrelated tool. Downstreams import it as `rtb` via a
# `package = "rust-tool-base"` dependency rename (see examples/minimal);
# the `[lib] name = "rtb"` below keeps the crate's own targets + doctests
# referring to it as `rtb`. The `rtb` CLI binary (rtb-cli-bin) and all
# `rtb-*` library crates are unaffected.
name = "rust-tool-base"
description = "Rust Tool Base — the batteries-included CLI application framework. Umbrella crate re-exporting the full public API."
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
readme.workspace = true
categories.workspace = true
keywords.workspace = true

[lib]
name = "rtb"

[lints]
workspace = true

[features]
default = ["cli", "update", "docs", "mcp", "credentials", "tui"]
cli = ["dep:rtb-cli"]
update = ["dep:rtb-update"]
docs = ["dep:rtb-docs"]
mcp = ["dep:rtb-mcp"]
ai = ["dep:rtb-ai", "rtb-docs?/ai"]
credentials = ["dep:rtb-credentials"]
# Opt-in reboot-persistent Linux keychain via freedesktop Secret Service.
# Requires libdbus-1-dev + pkg-config on the build host. Off by default
# to keep the build hermetic on Linux.
credentials-linux-persistent = ["credentials", "rtb-credentials/linux-persistent"]
tui = ["dep:rtb-tui"]
telemetry = ["dep:rtb-telemetry"]
vcs = ["dep:rtb-vcs"]
full = ["cli", "update", "docs", "mcp", "ai", "credentials", "tui", "telemetry", "vcs"]

[dependencies]
rtb-app = { path = "../rtb-app", version = "0.5.1" }
rtb-error = { path = "../rtb-error", version = "0.5.1" }
rtb-config = { path = "../rtb-config", version = "0.5.1" }
rtb-assets = { path = "../rtb-assets", version = "0.5.1" }
rtb-cli = { path = "../rtb-cli", version = "0.5.1", optional = true }
rtb-update = { path = "../rtb-update", version = "0.5.1", optional = true }
rtb-docs = { path = "../rtb-docs", version = "0.5.1", optional = true }
rtb-mcp = { path = "../rtb-mcp", version = "0.5.1", optional = true }
rtb-ai = { path = "../rtb-ai", version = "0.5.1", optional = true }
rtb-credentials = { path = "../rtb-credentials", version = "0.5.1", optional = true }
rtb-tui = { path = "../rtb-tui", version = "0.5.1", optional = true }
rtb-telemetry = { path = "../rtb-telemetry", version = "0.5.1", optional = true }
rtb-vcs = { path = "../rtb-vcs", version = "0.5.1", optional = true }