Mission Control · System design · v0

Mission Control

One screen for the whole company - cost, revenue, product and CI - watched by a fleet of agents that explain what they see, propose actions, and act within a guardrail envelope. Every action is measured, which is what lets the system close its own loop and improve overnight.

Layers 5Agents 4Autonomy guardrailedFirst slice CostOps
IngestAgent fleetPolicy engineAct + learn
00

Why mission control

An AI-native company runs on a small team with a large fleet of agents. The leverage only compounds if you can see everything in one place and let the agents act, not just alert. Mission control is that surface: a read layer over a fleet that detects, explains, proposes and - within limits - executes.

$3.5M
Revenue per employee
AI-native benchmark, ~6x SaaS
5-30x
Tokens vs a chatbot
why cost needs its own agent
4
Ops agents on one loop
cost · revenue · product · CI
WHYAgents act, guardrails contain

The 2026 consensus is human-on-the-loop, not full autonomy: agents operate inside a policy envelope and escalate past it. This design takes that literally - the policy engine in layer 3 is the spine everything else hangs from.

01

Five-layer architecture

Read top-down. The one rule that makes autonomy safe: agents never touch the world directly - every action passes through the governance layer. Click any layer to expand it.

02

The canonical agent loop

All four agents run the same six-step skeleton. Build it once, instantiate four times - only the connectors and detectors differ. Step through it, or press play to watch it cycle. The last step feeds the first.

Step 1 / 6touches the outside world

Ingest

Pull raw signals from connectors - token usage, invoices, Stripe events, CI runs, Sentry releases. Direct API for core vendors, wrapped FinOps tool for the long tail.

Step 6 writes the outcome that step 3 reads back as a lesson on the next run. That return arrow is the whole game - it is what turns a cron job into something that improves.
03

The policy engine

This is what "autonomous with guardrails" actually means. An agent emits a typed action envelope; the engine routes it to auto-execute, escalate, or block. Drag the inputs - or load a scenario - and watch the verdict flip.

Try:
Action class
verdict
Auto-execute

Agent acts now. Logged to the ledger with an undo handle.

Within every guardrail. The agent executes and logs the outcome.
action envelope
class: reversibledollar_impact: -120blast_radius: 2freeze_window: false
guardrails evaluated in order
No auto-act during a freeze window
Irreversible actions always escalate (v1)
Net spend must stay within $200
Blast radius must stay within 5 resources
04

The dreaming loop

Overnight, each agent reflects on its own ledger - expected outcome vs actual - and distills lessons and skills back into memory. But self-improvement only works where the outcome is objectively measurable. So dreaming is gated per agent. Pick one to see why.

verifiable on: Spend deltaDreaming on

Did the action drop spend? Measured directly against the next billing window. Clean ground truth, so it learns aggressively every night.

!Why ProductAnalytics dreams last

With no ground truth, a self-improving loop would reinforce whatever it already believes. It surfaces insights for humans first; only once there is a labeled good vs bad insight dataset does it earn a loop.

05

The four agents

Same loop, different lenses. CostOps ships first - it is the most verifiable and the fastest to a dollar number.

CostOps

first slice
Ingests
AI APIs, Heroku, Supabase, R2, SaaS invoices
Detects
Spend spikes, waste, idle resources
Proposes
Route / cache / cancel, dollar savings
Verifiable
Strong
Open design page

RevenueOps

Ingests
Stripe, subscriptions, churn signals
Detects
MRR moves, churn risk, failed payments
Proposes
Dunning, expansion flags
Verifiable
Partial
Open design page

ProductAnalytics

Ingests
App usage events, Amplitude / Pendo
Detects
Drop-off, gaps, dead features
Proposes
Experiments, ticket ideas
Verifiable
Weak
Open design page

CIOps

Ingests
GitHub Actions, Sentry releases
Detects
Flaky tests, slow pipelines, fail rate
Proposes
Retry / pin / quarantine
Verifiable
Strong
Open design page
06

Guardrails & the ledger

2
Kill switches
global + per-agent
append-only
Ledger retention
append-only, audited
dry-run
Default for new actions
prove before it acts

Every action - auto or approved - lands in an immutable ledger with its envelope, executor, timestamp, undo handle and measured outcome. It is both the audit trail and the dataset the dreaming loop learns from.

ActionAgentVerdictOutcome
Enable prompt cache on chat routeCostOpsautosaved $312/mo
Quarantine flaky import specCIOpsautoflake rate 11% to 0%
Buy 1yr reserved capacity ($1.8k)CostOpsescalateapproved by human
Retry 4 failed subscription chargesRevenueOpsauto$540 recovered
07

Decisions & open questions

Locked in the design session. The forks that are still open sit below.

ForkDecision
HomeNew ac-mission-control repo + this design doc in ac-docs
Service shapeOne service - FastAPI + thin Vue dash, design-system as npm dep
AutonomyAutonomous with guardrails (policy engine + ledger + kill switch)
ConnectorsOwn vendor clients; direct Supabase reads for business data; no runtime dep on ac-python-api
IngestHybrid - direct for AI / Stripe / CI / Sentry, wrap a FinOps tool for the infra long tail
First sliceCostOps - verifiable, immediate dollar value, proves the whole pattern
?Still open
  • Which FinOps tool to wrap for the infra long tail (Finout / Vantage / Amnic)?
  • Per-agent autonomy thresholds - start every agent at the same caps, or tune per agent from day one?
  • Does the dashboard live on its own subdomain behind Cloudflare Access, like ac-docs?
  • When does ProductAnalytics earn a dreaming loop - what is the labeled-insight dataset that unlocks it?
08

Build sequence

Substrate first, then one agent end to end to prove the loop, then clone. Nothing acts for real until the policy engine is trusted in dry-run.

1

Data backbone + ledger schema

Stand up the event store, metric rollups and the action ledger. No agents yet - just the substrate every layer reads and writes.

2

Policy engine + kill switch

Implement envelope evaluation and the guardrails in dry-run mode. Prove auto vs escalate verdicts before any action touches a real vendor.

3

CostOps as the full vertical slice

One agent end to end - connectors, detectors, real actions through the policy engine, and the dreaming loop closing on spend delta.

4

Dashboard + Slack for CostOps

The read surface and the approve / reject card path, scoped to one agent so the loop is observable before it multiplies.

5

Clone the pattern

CIOps, then RevenueOps, then ProductAnalytics (dreaming off). Same skeleton, new connectors and detectors each time.

AgencyCore · Mission Control system designac-mission-control · v0