rtb-docs 0.7.1

Interactive docs browser, embedded-HTML docs-serve server, and AI Q&A seam. Part of the phpboyscout Rust toolkit.
Documentation

rtb-cli

Part of the phpboyscout Rust toolkit — small, framework-free crates extracted from rust-tool-base.

The CLI runtime family: a four-crate workspace sharing one version line. rtb-cli builds the application; the other three each register a built-in command into the same link-time registry:

  • rtb-cli — the entry-point crate every downstream tool's main() touches: Application::builder typestate, clap integration of BUILTIN_COMMANDS, tracing + miette wiring, signal binding, and the built-in command suite (version, doctor, init, config, credentials, telemetry).
  • rtb-docs — interactive docs browser (ratatui two-pane TUI), loopback docs serve HTML server, tantivy full-text search, and a streaming AI Q&A seam (ai feature → rtb-chat).
  • rtb-update — signature-verified self-update: select, download, verify (Ed25519 + SHA-256), atomically swap, roll back. Composes on rtb-forge.
  • rtb-mcp — Model Context Protocol server (via the official rmcp SDK) exposing mcp_exposed commands as MCP tools.
use rtb_cli::prelude::*;

#[tokio::main]
async fn main() -> miette::Result<()> {
    Application::builder()
        .metadata(ToolMetadata::builder().name("mytool").summary("a tool").build())
        .version(VersionInfo::from_env())
        .build()?
        .run()
        .await
}

Development

just ci runs the full local gate (fmt, clippy, nextest, doc, deny), including --all-features clippy + test passes that exercise rtb-docs' ai feature. Tests include a cucumber BDD suite (crates/rtb-cli/tests/bdd.rs) and trybuild compile-fail fixtures (run isolated — see .config/nextest.toml; nextest is required). Releases are cut by release-plz from Conventional Commits — do not tag manually.

License

MIT