⌂ Home ☷ Board

Mission Control — Current Strengths Inventory

Purpose: Honest inventory of what MC (Luci's dashboard, ~/workspace/mission-control/app.py, port 3001) does WELL today, before a Wingman-style UX redesign. Anything in "Must-Not-Regress" is a feature a polished black-box consumer agent (Wingman by Emergent) almost certainly lacks — do not lose it.

Research only. No code changed. Date: 2026-05-18.


1. Feature Inventory

MC is a single Flask app (app.py, ~10,966 lines) + models.py (~263KB query layer), Jinja2 templates, Alpine.js + HTMX, SSE + WebSocket, PWA service worker. ~150 routes. Surfaces:

Core ticket / worker surfaces

Real-time plumbing

Health / observability

Cost / provider control

Content / knowledge surfaces

App / service dashboards (MC as hub)

Telegram / persistent integration

Ticket lifecycle APIs

PWA


2. Must-Not-Regress Strengths

Each of these is real, working, and almost certainly absent from Wingman. Losing any in the redesign is a regression.

Top 5 (priority order)

  1. Multi-worker, multi-host orchestration with live tmux-backed sessions. MC dispatches per-ticket background workers (mc_pickup.py), runs the Runtime Workbench against a real tmux session per active ticket (start/send/harvest/stop/retry/switch provider mid-run), AND remote-dispatches to Larry over SSH (elmar@46.225.208.1). Wingman is a single-agent consumer chat — no fleet, no remote hosts, no per-ticket session you can attach/reattach to. This is MC's core differentiator.

  2. Provider switching + true cost/token accounting. MC routes work across Anthropic / GLM / Kimi / MiniMax via runtime profiles, with preflight checks, per-task profile pinning, and a Cost page + usage APIs recording real USD/token spend per run. A consumer product hides the model and the bill entirely — you cannot switch backends or see what a session cost. This is load-bearing for Luci's centralized cost control (CLAUDE.md runtime-profile rule).

  3. Scheduled task engine with full transparency. scheduler.py tick runs everything in ~/workspace/tasks/; MC exposes the task list, run history, per-run logs, definition editor, schedule editor, notify-destination editor, and runtime-profile editor — all in-browser. Wingman has no cron, no recurring autonomous jobs, no run-history audit trail. The Tasks surface is an operational control plane, not a chat feature.

  4. Deep health / observability instrumentation. Heartbeat age, worktree disk usage (count + GB + empty-count, color-thresholded), persistent-Luci online state, a 20-feed Data Freshness grid, server-health + latency endpoints, dispatch-7d analytics, MC canary. This is genuine ops monitoring — a consumer agent shows none of its own internals.

  5. Full data ownership + glass-box ticket history. Everything lives in local mc.db (218MB SQLite, WAL) — tickets, comments, raw ticket_messages (thinking/tool_use/assistant/user), ticket_events (replayable stream-json), sessions FTS5 index, task_runs, heartbeats, ticket_context vault bridge. Nothing is in a vendor's cloud; every worker action is queryable, replayable, and auditable. Wingman is a black box — no export, no replay, no DB.

Other must-not-regress strengths


3. UX Weaknesses (where MC is genuinely behind a polished product)


4. Tech Constraints (redesign must respect)