stevengonsalvez
Usercontext engineering for agentic coding
Categories
Indexed Skills (17)
ainb-fleet
Fleet orchestration overview — the `ainb fleet ...` Rust subcommand namespace for driving every claude session on the host. Routes to the sub-skills (standup / broadcast / sequence / needs / daemon / atc). Invoke this for an at-a-glance map of what fleet can do; reach for the specific sub-skill for the verb you want.
ainb-fleetatc
ATC (Air Traffic Control) — the persistent orchestrating brain of the fleet. A plain `ainb` Claude session running a generated CLAUDE.md policy, woken on an OS-timer heartbeat (default 15 min) built from the LLM-free `fleet needs` read — which is itself HOOKS-PRIMARY (event-sourced): ATC learns ASK/WAIT/IDLE from the materialized `current_state` table, not by scraping panes, with a tmux fallback for non-Claude agents. `atc setup` installs the global Claude Code hooks into ~/.claude/settings.json. It auto-clears the safe/blocked sessions via the fleet verbs (confident ASK → broadcast; ERR → continue within a retry cap) and escalates the uncertain ones to the phone bridge. Supersedes the `daemon` skill for managed fleets. Use to provision / inspect / tear down an ATC instance.
ainb-fleetbridge
Native phone bridge — relay messages two-way between a chat channel (Telegram, Slack, and/or Discord) and your ainb sessions. Inbound chat messages route to a target session (by `name:` prefix, else a conductor- first default) and are delivered via tmux send-keys; the session's reply is captured from its JSONL transcript and sent back to the chat. Config lives in ~/.agents-in-a-box/config/config.toml under [fleet.bridge.*]; tokens resolve from $ENV / keychain refs and are NEVER passed on argv. Use to run, install, or check the bridge — this is the channel ATC pages you through.
ainb-fleetbroadcast
Fan out a single prompt to selected claude sessions across the fleet. Use when you need to apply the same instruction (e.g. `/clear`, `git pull`, `remote-control disconnect`) to many sessions at once. Routing: tmux send-keys by default (the broker is an opt-in fallback, toggled via AINB_FLEET_TRANSPORT). Refuses to run without an explicit targeting flag (--all, --filter <regex>, or --cwd <substring>) — no implicit fan-out.
ainb-fleetcost
Show fleet spend — per-session, per-model, per-day, and per-group USD cost rollups for every claude/codex session, sourced live from ainb's burndown analytics (which already prices every provider call). Use when you need spend visibility across a multi-session fleet, want to find the most expensive session/model, or are checking whether any session/group has crossed a configured budget cap. Budget breaches are also delivered as notifyd alerts. Default output: text tables. Pass --format json for LLM consumption.
ainb-fleetdaemon
Long-running watcher that scans every claude session every 5s and auto-sends `continue` to any session whose recent tmux pane buffer matches a known API-error regex (rate_limited, overloaded_error, internal_server_error, request_timeout, socket_hang_up, fetch_failed, ECONNRESET). Use this when you want unattended recovery from transient API failures across the fleet.
ainb-fleetdaemons
Runtime-health view of the four fleet daemons — phone bridge, notifyd, ATC, and the fleet auto-continue daemon — in one table. Each row reports state (running / stopped / unknown), pid, uptime, last activity, error count, and a HEALTH reason that distinguishes a clean stop from a crash (stale heartbeat) or a pid-recycle. Use this when you need to answer "are my background daemons actually alive?" — not just installed, but serving. Default output: a fixed-width text table. Pass --format json for tooling.
ainb-fleetfleet-needs
Workflow-backed Jarvis control panel. Runs the deterministic `hangar` workflow with verb=needs (discover → enrich → prioritize), renders the Jarvis HUD from its render-ready cards, fires AskUserQuestion per blocked session, and routes each answer back via tmux send-keys (broker fallback only). Requires the workflow gate (CLAUDE_CODE_WORKFLOWS=1). If the gate is off, fall back to the prompt-driven `/ainb-fleet:needs` skill.
ainb-fleetneeds
Center control panel — enumerate every claude session that is blocked waiting on something: a user answer (AskUserQuestion fired), an API error retry, an idle assistant turn-end with no follow-up, or an explicit WAITING: marker. Returns rich JSON with signal kind + context per session. Use this when you've stepped away from the fleet and want one place to see everything that wants your attention and answer it.
ainb-fleetsequence
Ordered multi-step prompts to fleet targets, ack-gated between steps via JSONL assistant-turn-end detection. Use for cycles like disconnect→reconnect→verify, or any flow where step N+1 requires step N to have completed first. The skill BLOCKS until each target's transcript shows the next assistant turn finishing OR per-step timeout fires (default 300s).
ainb-fleetstandup
Show fleet status — every claude session running on the host, merged across ainb + claude-peers broker + background jobs. Use when you need to enumerate sessions before composing an action, check the `summary` of each session, or pipe the list into jq for filtering. (Writes go via tmux by default; a `peer_id` is just an extra discovery signal / fallback channel, not a routing requirement.) Default output: text table. Pass --format json for LLM consumption.
disk-space-cleaner
Reclaim disk space by finding and deleting regenerable build/dependency directories (node_modules, target, .next, dist, build, .gradle, .turbo) and optionally running `cargo clean` and Docker prune. Dry-run by default, age-gated, and protects git-locked worktrees plus recently-touched work so active sessions are never clobbered. Use when disk is low, when `df` shows the volume near full, or when the user says "clean disk", "free up space", "disk-space-cleaner", or "what's eating my disk".
illustrationpopa
Generate intricate hand-drawn sketchnote illustrations starring Popa, a cute pink blob with a green sprout and a notepad, on soft pastel scenes. One busy page of many linked boxes, notes, arrows and icons — busy but fully legible. Use for dev/product/system explainers, how-it-works, architecture, walkthroughs, and friendly social/blog/README art.
tmux-ui-tripwire
Write or debug tmux-driven end-to-end TUI tests ("tripwires") for the ainb terminal app. Use when the user asks to "write a tmux test", "add a tripwire", "verify the TUI in tmux", "test feature X by pressing key Y", "validate plugin Z renders", or when editing any file under `crates/ainb-core/tests/tripwire_*.rs`. Codifies the silent traps we hit during Phase 7 plugin testing — macOS AMFI SIGKILL of staged binaries (exit 137, no stderr), first-run wizard intercepting keystrokes, EnvFilter crate-name drift hiding logs, and substring-OR assertions that pass while the feature is broken. Use proactively before writing any new `tripwire_*.rs` test, and reference whenever an existing tripwire fails for non-obvious reasons.
tmux-verify
The outer "is this TUI feature ACTUALLY done?" proof loop for the ainb terminal app. Use when the user asks to "verify the TUI is actually done", "prove this TUI feature works", "validate per tmux-verify", "vhs verify each journey", "frame-truth check the UI", "is the diff actually shown correctly", or to define the acceptance contract for a TUI goal. Orchestrates 6 gates — (1) comprehensive tmux-ui-tripwire passes, (2) a vhs recording per user journey whose frames are READ with /media-processing to assert the EXACT user-visible outcome (not "screen shows something"), (3) one recording per journey, (4) fix-loop until acceptance + tripwire green, (5) a continuous /explain-to-me explainer (tests + commits + GIFs) hosted on /here-now, (6) final HTML-solid validation with the human as the last gate. References (does not reimplement) tmux-ui-tripwire, /media-processing, /explain-to-me, /here-now.
tui-screen
Create TUI screens, components, and views for the agents-in-a-box terminal UI. Use when building new ratatui components, adding panels, creating list views, or styling any terminal interface element. Provides color palette, component patterns, and quality checklist.
illustration
Generate intricate hand-drawn sketchnote illustrations starring Popa (a pink blob with a green sprout and a notepad). Use when the user wants illustrations/diagrams/explainer images/shot lists for an article, post, README, deck, system, or idea. Alias of illustration:popa.
Bio shown is the top-scored skill's repo description as a fallback — real GitHub bios land in a future update.