# Product ## Register product ## Users A single technical operator (a developer) managing every interactive shell and agent — Claude Code, opencode, plain bash — running across multiple machines. The job-to-be-done: from any device (laptop, desktop, **phone**), get an accurate at-a-glance picture of all live sessions across all hosts, then attach to one and drive its terminal. Usage is often glance-and-go: checking on a long-running agent, killing a stray session, or hopping into a shell mid-task. Mobile-first is a hard requirement — touch targets, viewport-fit safe areas, and bottom-sheet modals already reflect this. ## Product Purpose Maestro is a unified terminal-session orchestrator: one place to see and attach to every interactive session running across every machine the operator cares about. tmux for persistence, WebSocket for transport, a daemon-per-host federated by a small always-on registry. The web UI is the browser face of that system — it renders the cross-host session catalog and provides the attach terminal (xterm.js). Success = the operator trusts the picture is accurate and current, and can get from "open the page" to "typing in the right session" in seconds, on any device. ## Brand Personality Three words: **precise, calm, alive.** This is infrastructure tooling — it must read as trustworthy and exact, never toy-like — but it watches living processes, so status must feel present and current, not static. Voice is terse and technical, matching the CLI and the repo's terse house style. It is a craftsman's tool: opinionated, monospace-literate, with quiet personality rather than decoration. Emotional goals: in control / confident, fast / efficient, calm / uncluttered, with earned moments of delight. ## Anti-references - Generic Tailwind-admin / SaaS-cream dashboards. - Heavy gradients, glassmorphism, glass cards as decoration. - Playful, rounded, "friendly app" aesthetics that undercut the infrastructure-tool trust. - Whitespace-maximalist layouts that trade away the at-a-glance scan for "elegance." - Anything where you could guess the design from the category alone ("terminal tool → CRT-green-on-black novelty"): the orchestrator identity is earned through restraint, not costume. ## Design Principles 1. **The scan is the product.** Optimize for instant comprehension of "what's running, where, and is it healthy" across many sessions and hosts. Status legibility beats everything else. 2. **Calm under load.** Stay uncluttered whether there are 3 sessions or 300; hierarchy and grouping carry the weight, not color-shouting every row. 3. **Fast and keyboard-literate.** Low-friction, efficient, gets out of the way; honor keyboard navigation, don't make the operator hunt. 4. **Monospace as identity.** Treat the mono/sans pairing as deliberate brand typography, not just terminal output. Ids, hosts, counts, and state read as precise technical data. 5. **Earned delight.** Personality lives in motion and micro-detail (live-status pulse, attach transitions, cursor cues), never in noise — always craft. ## Accessibility & Inclusion Standard good practice, applied rigorously: WCAG AA contrast for all text and status, visible keyboard focus on every interactive element, and a full `prefers-reduced-motion` alternative for every animation. Status must never rely on color alone (pair the dot with a label/shape). Dark and light themes are equal citizens, driven entirely by CSS custom-property tokens.