phpboyscout Rust toolkit

Small, framework-free Rust crates — each independently versioned, dependency-inverted, and usable on its own.

Extracted from rust-tool-base, the batteries-included CLI framework these crates power. Cards marked in monorepo still live there and are published from it; each flips to extracted as its repo lands under gitlab.com/phpboyscout/rust/. Sibling toolkit: Go.

New here? These are written up end to end, in the order they make sense: Rust, and what survived the port

Modules

redact

gitlab.com/phpboyscout/rust/redact
extracted

Strip credential-like content — URL userinfo, API-key prefixes, auth headers, long opaque tokens — from free-form strings before they reach logs or telemetry.

error

gitlab.com/phpboyscout/rust/error
extracted

Error types and the miette diagnostic report pipeline — rich terminal diagnostics, help text, and process exit codes attached to the error itself.

config

gitlab.com/phpboyscout/rust/config
extracted

Strongly-typed layered configuration — embedded defaults, files, env, flags — with hot reload. A Store rewrite (provenance, structure-preserving writes) is on the roadmap.

assets

gitlab.com/phpboyscout/rust/assets
extracted

Embedded-asset overlay filesystem — ship defaults inside the binary, let users override them on disk, resolve through one virtual view.

credentials

gitlab.com/phpboyscout/rust/credentials
extracted

User-secret storage behind one seam — env-var reference, OS keychain, or literal config — with zeroize-on-drop secrecy types throughout.

tui

gitlab.com/phpboyscout/rust/tui
extracted

Reusable terminal-UI building blocks — multi-step wizards with escape-to-back, tables, spinners — shared by every tool built on the framework.

app

gitlab.com/phpboyscout/rust/app
extracted

The application context: tool metadata, version info, typed config, assets, and cancellation — the App<C> every command receives. Ships with its test-support crate.

telemetry

gitlab.com/phpboyscout/rust/telemetry
extracted

Opt-in, consent-gated anonymous usage telemetry with pluggable sinks — file, HTTP, OTLP — and automatic credential redaction on the way out.

mcp

gitlab.com/phpboyscout/rust/mcp
in monorepo

An MCP server that exposes a tool's commands as callable MCP tools — opt-in per command, so an AI agent sees exactly what the author chose.

chat

gitlab.com/phpboyscout/rust/chat
extracted

Unified AI chat client — Claude, OpenAI, Gemini, Ollama and compatibles behind one interface, with schema-validated structured output. Formerly rtb-ai; renamed at extraction for GTB-family convergence.

forge

gitlab.com/phpboyscout/rust/forge
extracted

Forge release providers — GitHub, GitLab, Gitea, Codeberg, Bitbucket, direct URL — plus git operations over gix. Formerly rtb-vcs; renamed at extraction for GTB-family convergence.

cli

gitlab.com/phpboyscout/rust/cli
extracted

The CLI runtime family — clap application builder and built-in commands (rtb-cli), the interactive docs browser and server (rtb-docs), the signed self-update subsystem (rtb-update), and the MCP server (rtb-mcp).