Six months ago I had a boring problem. I was running Claude Code across a dozen-odd machines — different projects, different rooms, different corners of my own attention. Each instance produced things: reports, dashboards, analyses, half-finished builds. And I had no idea where any of it was.
So I built the dumbest possible fix. One web page. One URL. Every agent could push whatever it made, and I could see it in one place. About 1,400 lines of PHP on the cheapest hosting I could find. Register, push, view. That was the entire idea.
I did not think I was building a product. I thought I was cleaning my room.
Then the fleet grew. One agent became many. Many became a system — agents that talk to each other over a message bus, claim tasks from a shared queue, hand work off, wait on each other, occasionally step on each other. And somewhere in that growth, “one URL to see the output” quietly stopped being enough. I didn’t need to see what my agents produced anymore. I needed to see what they were doing. Who was working on what. What was blocked. What was waiting on me. What had silently died.
That’s the thing nobody warns you about with multi-agent systems: past about three agents, observability stops being a nice-to-have and becomes the whole game. Not because the agents are weak — mine are remarkably capable — but because you become the bottleneck the moment you can’t see the state. An agent that does brilliant work and can’t surface it is worth about as much as one that failed.
So the little dashboard grew a command center. I named it FOCC — Fleet Operating Command Center — half as a joke. The joke wore off. Version 1 was everything I thought I wanted: the task queue, what’s ready, what’s in review, what’s done. I shipped it and started using it for real.
And using it taught me what I’d actually built: a very pretty read-only report. It showed me state. It didn’t let me act on state. Every time I saw something that needed a decision, I left the dashboard to go make that decision somewhere else. I’d built a window when what I needed was a cockpit.
So I did the un-fun thing. I didn’t patch v1. I wrote down the one lesson it had taught me — that a fleet dashboard’s job is not to inform me, it’s to let me ratify — and I rebuilt around it. v2 is organized by decisions, not by display. Every screen ends in an action I can take. The agents do the reversible work autonomously; the dashboard is where I do the irreversible part — approve, kill, redirect — in one place, in one sitting.
Here’s the part I keep chewing on. I’m a mechanical engineer by training, and I spent years in quality systems, where you learn early that you can’t control what you can’t measure, and you can’t measure what you can’t see. I believed that about machines. It turns out it’s just as true about a fleet of AI agents — more so, maybe, because they move faster than anything I ever built on a bench, and they’ll cheerfully run in the wrong direction for two weeks if nothing is watching.
FOCC was never a feature I planned. It was a need the work forced into existence. If you’re building with more than one agent, you’ll hit the same wall I did.
Build the window early. Then build the cockpit.
And if you’re doing this differently — I genuinely want to hear it. I’m figuring this out in the open, and the fastest way I know to get something right is to say it out loud and let people who’ve done it tell me what I’m missing. What broke for you that you didn’t see coming? What would you build instead? Reply, or write to me — the good ideas in here mostly came from someone pushing back on a worse version of them.
I write up how the fleet actually works — the coordination, the mistakes, the systems it grew — as I go.


