← ClaudeAtlas

ainb-fleetfleet-needslisted

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.
stevengonsalvez/agents-in-a-box · ★ 14 · AI & Automation · score 77
Install: claude install-skill stevengonsalvez/agents-in-a-box
# ainb fleet:fleet-needs — workflow-backed cockpit The session "face" of the sensor-fusion hybrid. The deterministic brain is the `hangar` workflow (verb=needs); this skill renders its output and handles the irreducibly-interactive last mile (HUD + AskUserQuestion + routing). ``` SESSION (this skill) ──Workflow({name:'ainb-fleet:hangar', args:{verb:'needs'}})──▶ brain render HUD ◀──{banner,cards,asks}──────────────────────────────────────────┘ AskUserQuestion per ask ──answer──▶ tmux send-keys (write leg) ``` ## Read/write split — architectural principle | Direction | Channel | Why | |-----------|---------|-----| | **Reads** | JSONL (source of truth) — `ainb fleet needs/standup` tails JSONL + pane | content already committed; replayable; ground truth | | **Writes** | **tmux send-keys** — direct keystrokes to the target pane (verify with capture-pane) | deterministic, no broker latency or delivery gap | | Fallback writes | peers/broker via `ainb fleet broadcast` | only when no tmux_session known; broker has a known delivery gap | All write routing below uses tmux first. Broker is a last resort, not the default. ## Step 0 — gate check (fallback if workflows off) ```bash [ -n "$CLAUDE_CODE_WORKFLOWS" ] && echo "gate on" || echo "gate off" ``` If gate off → **stop and invoke `/ainb-fleet:needs`** (the prompt-skill). The workflow path only works when `CLAUDE_CODE_WORKFLOWS=1` is set. ## Step 1 — run the hangar workflow with verb=needs `hangar` is the single multi