← All work
Case Study — Infrastructure

Running 161 Production Workflows Solo: Inside My Multi-Agent AI Command Center

Why one operator, running dozens of automated product lines, had to stop being the person who does the work and become the person who manages a team of AI agents instead — plus three mistakes that shaped how the system verifies itself.

Somewhere around the fortieth automated workflow, I stopped being able to hold the whole system in my head. I run a handful of product lines alone — a daily podcast network, SaaS products, multi-language content sites, and ongoing automation work for outside clients. None of it pauses while I sleep, and every piece needs monitoring, fixing, and improving on its own schedule. The arithmetic doesn't work if I'm personally the one watching all of it: one person, dozens of moving parts, every failure competing for the same finite attention.

The fix wasn't "work faster." It was to stop being the one who executes every task and become the one who manages a team — except the team is AI agents, not employees, and the entire discipline of managing that team comes down to one question: how do you know something is actually done, when you can't personally check everything yourself?

Why a single assistant stops scaling

A single chat-based AI assistant that you personally read every output from works fine for a handful of tasks. It stops working once you're running enough workflows that reading every output yourself becomes a full-time job again — you've just moved the bottleneck, not removed it. The only way past that ceiling is to make verification structural: built into the system itself, not something I do by hand for every task, every day.

The architecture: three layers

The system that emerged has three distinct layers, each with a narrow job. None of them is allowed to do another layer's job — that separation is the whole point.

Main Orchestrator

Plans the work, breaks it into dispatchable units, decides who handles what, and is the only layer allowed to declare a task "accepted." Does not do deep implementation itself.

↓↓↓
Research agent
Build/fix agent
Content agent
Review agent
Translation agent
↓↓↓

Verification Gate

Independently re-checks every deliverable before it counts as done — a fresh read of the file, a live request against the real system, a second agent re-running the check. Nothing is accepted on an agent's own word.

Pass → orchestrator marks the task accepted. Fail → task goes back to the orchestrator with the specific gap, re-dispatched — not silently retried by the same agent that missed it.

Layer 1 — Main orchestrator

This layer's entire job is decomposition and acceptance. It takes a goal, splits it into pieces small enough that a single specialist agent can own one piece end to end, and decides which agent gets which piece. Critically, it is the only layer that gets to say "this is done" — and it only says that after the verification gate has signed off, not because a specialist reported success.

Layer 2 — Specialist agents

Each dispatched agent gets a narrow scope: one workflow to fix, one page to write, a specific set of files it's allowed to touch and a matching list of what it's not allowed to touch. Independent, unrelated tasks run in parallel rather than one after another — there's no reason to make five independent fixes wait in a queue behind each other. Every dispatch also has to specify, up front, how that agent will check its own work before reporting back. An agent that can't describe how it would verify its own output doesn't get dispatched.

Layer 3 — Verification gates

This is the layer that actually makes the other two trustworthy. Whatever a specialist agent reports gets checked again, independently — reading the actual file back, making a live request against the actual system, or having a second agent re-run the same check from scratch. A deliverable only counts as finished once someone other than the agent that produced it has confirmed it, using evidence, not narration.

161
n8n workflows in production
126
currently active
5
daily podcast channels, fully automated
1
solo operator

Those 161 workflows span content pipelines, bots, and internal operations tooling; the 5 podcast channels each publish daily without a human touching recording, editing, or upload; the same content pipeline ships static sites in multiple languages rather than maintaining separate build processes per language. None of that is impressive by itself — plenty of teams run more. What makes it hold together with one operator is that verification doesn't scale linearly with the number of workflows, because it isn't me doing the checking.

Three mistakes that shaped the system

1. A green light isn't a working pipeline

One of my content pipelines reported "success" on every single run for weeks — clean dashboard, no errors logged, right on schedule. It was quietly failing anyway. An upstream condition it depended on had changed, and instead of surfacing an error, the workflow routed itself down a fallback branch that completed "successfully" while producing nothing useful. The status field was telling the truth about execution and lying about outcome.

The fix wasn't a better alert on the status field — it was to stop trusting the status field for anything beyond "the workflow ran." Verification now checks the actual output artifact: did the target record really get created, did the count that should have gone up actually go up. A workflow that finishes without error and a workflow that did its job turned out to be two different claims, and I'd been treating them as one.

2. Agents report "done" with total confidence — and are sometimes wrong

Dispatched agents are good at writing a plausible completion report. "Fixed, deployed, verified" reads exactly the same whether it's true or not, because the agent is describing what it believes happened, not an independently confirmed fact — and an agent mid-task has every incentive to believe the task is finished.

The moment I stopped accepting an agent's own account of success at face value, and instead required a second, independent check — someone else re-fetching the live resource, re-reading the file, re-running the test from a clean state — the rate of quietly-broken "done" tasks dropped sharply. That's now a hard rule in the system, not a suggestion: nothing is marked complete on self-report alone. If a check can't be run independently of the agent that did the work, the task isn't actually verifiable yet, and it doesn't count as done.

3. The wrong copy of the truth

Two versions of the same project existed in different places under similar names, and only one of them was the copy actually running in production — the other was a leftover draft from an earlier pass. An agent edited the copy that looked more current on casual inspection, and the change never showed up anywhere, because it had been made to a file nothing was actually reading.

The lesson was uncomfortable because it was so basic: before touching anything already live, establish which copy is actually the deployment source of truth using hard evidence — what's actually running, what's actually being read right now — never by assuming the newer-looking file is the real one. A day of rework taught me to make that check step one, not an afterthought.

What I'd tell someone building this

  • Build verification as its own layer, not a step tacked onto the end. If you can't confirm a task's outcome independently of the agent that did it, you don't know it's done — you just have a convincing story about it.
  • Keep the orchestrator planning and accepting, not implementing. The moment it starts doing the deep work itself, it loses the distance it needs to judge whether that work is actually correct.
  • Scale with narrow specialists, not one broad agent doing everything. A tighter scope makes both the execution and the check on that execution easier to reason about — and easier to run in parallel.
  • Default to disbelief on self-reported completion. Assume the first version of "done" is wrong until an independent check says otherwise. That single habit is what makes running this many systems solo survivable.

Takeaway

"An AI agent that can execute tasks isn't the hard part anymore. An AI agent system you can trust to tell you the truth about whether it worked — that's the actual engineering problem, and it's the one worth solving first."

Open to full-time remote roles

AI content engineering, AI automation, or multi-agent systems work. Based in Taiwan, working async-friendly hours.

Email Harvey See all work →