Mission Control — Chat-First UX Journey
How a request should flow, step by step — what you do, what you see, what to expect. Target for MC-3754. Telegram and MC are twin doors into the same orchestrator.
1Start a conversation — two doors
DOOR A — Telegram DOOR B — Mission Control
┌─────────────────────┐ ┌─────────────────────┐
│ Telegram · Luci │ │ Mission Control │
│ │ │ [ + New Session ] │
│ (just start typing) │ │ │
│ ____________________ │ │ Threads: │
│ [type a message... ] │ │ · Padel app 2h │
└─────────────────────┘ │ · HA fix 5h │
└─────────────────────┘
YouMessage Luci on Telegram, OR open MC and tap New Session.
ExpectBoth land in the same place — a fresh chat thread with the orchestrator. Telegram is a real chat interface, equal to MC; MC adds multiple threads.
↓
2Say what you want — plain words
┌──────────────────────────────────────┐
│ Luci Good morning, Elmar. │
│ │
│ The kitchen lights don't │
│ turn off at night — fix it│
│ ______________________________________ │
│ [ type a message... ] [↑] │
└──────────────────────────────────────┘
YouDescribe the intent however you'd say it to a person. No syntax, no forms.
ExpectYou never fill in a ticket form. You talk; the orchestrator works out the rest.
↓
3The orchestrator thinks
┌──────────────────────────────────────┐
│ ...fix it │
│ │
│ ● Luci is working… │
│ reading HA config · checking history │
└──────────────────────────────────────┘
You seeA live "working" indicator — not a frozen screen.
ExpectThe orchestrator reads context, checks history, decides the outcome. A few seconds to ~½ a minute.
↓
4The orchestrator responds — one of three
┌──────────────────────────────────────┐
│ Luci Found it — the night automation │
│ has no "turn off" trigger. │
│ │
│ ┌────────────────────────────────┐ │
│ │ ⚡ Fix it now │ │
│ │ add the off-trigger, deploy │ │
│ │ [ Run now ] │ │
│ ├────────────────────────────────┤ │
│ │ 🎫 Make a ticket for later │ │
│ │ [ Create ] │ │
│ └────────────────────────────────┘ │
└──────────────────────────────────────┘
Branch A — just an answer. If you asked a question, Luci simply answers. No cards. Done.
Branch B — action cards. Run-now / make-a-ticket / send-to-Larry — you choose.
Branch C — ticket proposals. A big ask is split into several ticket cards, each "Create".
ExpectThe orchestrator decides; you only ever approve. You never wire up the workflow yourself.
↓
5You approve — one tap
┌──────────────────────────────────────┐
│ │ ⚡ Fix it now [ Run now ] ←tap│ │
│ │
│ ✓ Dispatched — worker MC-3801 started │
└──────────────────────────────────────┘
YouTap the card. That's the whole interaction.
ExpectA ticket is created + a worker dispatched behind the scenes — confirmed inline. Nothing else to do.
↓
6Work runs — visible in the thread
┌──────────────────────────────────────┐
│ ● Worker running · MC-3801 │
│ ⚙ Used 3 tools ▾ │
│ ✎ Edited automations.yaml │
│ ✓ $ ha core restart │
│ ── Worker finished · 15:48 ── │
└──────────────────────────────────────┘
You seeGlass-box progress — tool calls, file edits, commands — collapsed but expandable. Not a black box.
ExpectYou can watch or ignore. It updates live in the same thread.
↓
7Quality loop — behind the scenes
┌──────────────────────────────────────┐
│ Checking the work… │
│ ✓ code review ✓ council │
│ ✓ Tessa — human-experience │
└──────────────────────────────────────┘
You seeCheckpoints, not noise. The loop (review / QA / Tessa) runs inside the ticket — it's not new threads or new messages spamming you.
ExpectIf a gate fails, the orchestrator handles the fix loop itself. You only hear about it if a real decision is needed.
↓
8Result — back where you started
┌──────────────────────────────────────┐
│ Luci Done. The kitchen lights now │
│ switch off at 23:00 — added the │
│ trigger, tested, deployed. │
│ [ view ticket MC-3801 ] │
└──────────────────────────────────────┘
You seeA plain-language result in the same thread — Telegram or MC, wherever you started.
ExpectThe loop closes where it began. One conversation, start to finish.
Multi-thread — MC's edge over Wingman. In MC you can run several of these conversations at once — "padel app", "HA fix", "briefing pipeline" — each its own thread, switchable from the thread list. Wingman has only one. Telegram is one of those threads; MC shows them all.
The principle. You only ever do two things: say what you want, and approve. The orchestrator owns everything between — decomposing, routing, dispatching, gating, recovering. That is chat-first.