Skip to content

Components

ˢ = standalone module of the phpboyscout Rust toolkit; the linked page points to its microsite.

What each crate is for, how it fits, and where its own documentation lives. For a conceptual overview that cuts across crates, see Concepts; for flags, keys and defaults, see Reference.

Only two crates still live in this repository

Most of the framework has been extracted into standalone toolkit modules that version and release independently. This repository is now the umbrella crate rust-tool-base (published as rtb) and the scaffolder binary rtb-cli-bin; everything else is consumed as a pinned dependency. The pages below marked ˢ therefore describe a crate that ships elsewhere, and point at that module's microsite for its full API.

Two of those crates were renamed on the way out — rtb-ai became rtb-chat, and rtb-vcs became rtb-forge. The old page URLs redirect.

Shipped

Crate Purpose Key types
rtb-error ˢ Canonical Error enum + miette hook pipeline. Error, Result, hook::install_*
rtb-app ˢ App context, ToolMetadata, Features, Command trait, BUILTIN_COMMANDS. App, ToolMetadata, Command, BUILTIN_COMMANDS
rtb-config ˢ Typed layered config over figment with atomic reload. Config<C>, ConfigBuilder<C>
rtb-assets ˢ Overlay asset FS over rust-embed + dirs + memory. Assets, AssetSource, AssetsBuilder
rtb-cli ˢ Application::builder, clap wiring, built-in commands. Application, HealthCheck, Initialiser
rtb-credentials ˢ CredentialStore + Resolver for env/keychain/literal/fallback. CredentialStore, Resolver, CredentialRef
rtb-redact Free-form secret redaction for logs + telemetry — standalone module (docs). string, SENSITIVE_HEADERS, is_sensitive_header
rtb-telemetry ˢ Opt-in events with pluggable sinks + salted machine ID. TelemetryContext, TelemetrySink, Event
rtb-test-support ˢ Sealed-trait test helper for constructing App. TestAppBuilder, TestWitness
rtb-forge ˢ Release-provider trait (GitHub/GitLab/Bitbucket/Gitea/Codeberg/Direct) + the Repo git-ops type — now rtb-forge (formerly rtb-vcs). ReleaseProvider, Repo, Release
rtb-update ˢ Signature-verified self-update flow. Updater, RunOptions, CheckOutcome
rtb-chat ˢ Multi-provider AI chat — genai + Anthropic-direct — now rtb-chat (formerly rtb-ai). AiClient, ChatRequest, Config, Provider
rtb-mcp ˢ MCP server — registered Commands as tools over rmcp. McpServer, Transport, McpError
rtb-docs ˢ Docs browser TUI + embedded HTML server + full-text search. DocsBrowser, DocsServer, Index
rtb-tui ˢ Reusable TUI building blocks — Wizard, render helpers, TTY-aware Spinner. Wizard, WizardStep, Spinner, render_table, render_json
rtb-cli-bin The rtb binary — scaffolder + AI codegen. rtb generate project / command / flag / setting / docs, rtb remove command / flag / setting, rtb regenerate manifest / project. Two presets (minimal, cli); marker-driven file edits; linkme-based command dispatch in generated tools; rtb-chat-driven --prompt / --script codegen with a cargo check-driven verifier loop. rtb binary (CLI grammar)

Which crate a Cargo feature pulls in

The umbrella crate gates most of these behind a feature, and the mapping from feature to crate — plus which are on by default — is in Cargo features. Four crates (rtb-app, rtb-assets, rtb-config, rtb-error) have no gate and are always compiled in.

Reading guide