One diagram, the whole box: the ainb Rust TUI and its 11-crate workspace, the JSON-RPC plugin host, fleet orchestration over every live agent session, the portable toolkit that deploys 91 skills and 37 agents to 9+ AI coding tools, and the reflect GraphRAG memory loop that turns transcripts into durable learnings.
ainb-core is the single binary: ratatui screens (home, sessions, usage,
inbox, code review) plus the CLI (run, list, attach,
fleet, plugin, usage). It provisions Docker containers via
Bollard, isolates each session in a git worktree, and keeps everything alive in tmux.
Provider adapters spawn claude / codex / gemini / copilot behind one trait.
Plugins are separate subprocess binaries speaking JSON-RPC 2.0 over stdio:
burndown (usage + cost analytics), session-reader (JSONL parsing with a
SQLite cache), notifyd (inbox feed), witr (process causality). A 14-axis
conformance suite (cts-v2) keeps the ABI honest.
Write a skill once in toolkit/packages/, and bootstrap.js deploys it to
every tool home (~/.claude, ~/.codex, ~/.copilot, ~/.gemini, …) with
TOOL_DIR templating. /sync-learnings flows user-level edits back into
the repo.
ainb fleet discovers every session on the host (ainb list, the claude-peers
SQLite registry, background jobs), merges by cwd, reads state from JSONL tails and tmux
panes, then delivers prompts — peers broker (HTTP :7899) first, tmux send-keys fallback.
Verbs: standup, broadcast, sequence, needs, daemon.
The reflect plugin drains learnings at PreCompact and recalls them at SessionStart.
The reflect-kb CLI indexes them into nano-graphrag + nano-vectordb with entity
sidecars, all stored under ~/.claude/global-learnings/. Correct once, never again.
The binary ships through a Homebrew tap; the single docs/ tree feeds a
Starlight site published to GitHub Pages.