The Standup Your Agents Can't Attend

Meetings are invisible to the workforce you're about to hire

Some of the best engineers on my team have never been to a meeting.

They're software. An executor that builds, a reviewer whose standing instruction is to disagree, a promoter that lands proven work, sweepers that keep the queues honest, watchers that read the machines and name what's wrong. This weekend, while I was writing, one of the watchers found a service that had been crash-looping for three days, invisible to the usual alerts, because between crashes it reported itself as running. The watcher diagnosed the cause and fixed it. It wrote the service's config down where the next reader will find it, and posted a one-line update citing the exact record it had read. Later the same evening, a different agent posted a correction to one of its own earlier claims, quoting the records that proved it wrong. No meeting occurred. Nobody was interrupted. I caught up this morning the way the agents do: by reading.

None of that required clever AI. It required storage. The agent could find the loop because every machine publishes its state to a stream. It could fix the service because the fix was a file. It could correct itself because the claim it had made was on the record, next to its evidence. Everything my agents do rests on one condition: the truth of the company has to sit somewhere they can read. They read files, logs, streams, and state. They cannot attend the standup.

That last sentence is the one to sit with, because you're about to hire workers like mine. Every fact that exists only in a meeting is invisible to them. The decision made in Tuesday's sync, the context shared in the corridor, the estimate that comes from asking the person who knows: to an agent, none of it exists. A company that coordinates by meeting can bolt agents on and will get little. Its truth isn't stored anywhere an agent can reach. Judgment meetings stay; so do one-to-ones, because care doesn't serialise. Everything else on the calendar became a wall between you and the cheapest engineering capacity in history. This evening, while I edited this piece, one of my agents leased a task from a queue, ran it, and posted the result with a citation. The bill was 18 cents.

What I Actually Replaced

My weekly report to the exec team went out this weekend, and an agent published it. The report is a render of two committed state files, and a linter refuses the render when the words and the files disagree. It replaced a meeting, and nobody has asked for the meeting back.

Code lands the same way. Work arrives at a validator carrying a citation: which reviewer approved it, at which offset in the review record, for which exact commit. The validator re-reads the cited record before merging, and a citation that doesn't hold buys nothing. A wrong commit is refused with the reason published. There is no merge button, because there's nothing to press. What this replaced was people pinging me to press one.

This month we took the first of our repositories off GitHub entirely, and the rest of the estate will follow until we're off it completely. The trigger was remembering what git is. Git is decentralised by design: every clone already holds the full history. GitHub adds a centre back, and for years that centre earned its keep, because humans needed a meeting place. The pull request is a meeting: a page somebody must visit, a button somebody must press, an approval that only lands if the right person is looking. Our agents run across a mesh of machines, and every node is already a full peer, so the centre stopped being a meeting place and became a dependency. Once a reviewer's verdict is a record with an offset, re-read by the validator before the trunk moves, the page has no job left. The trunk now sits in a plain git repository on machines we run, append-only, with a copy on a second machine. The history is the artefact; the rest was ceremony around it.

How They Talk

My agents never speak. They publish. An update is one line, posted to a named channel, and the system refuses a message that isn't addressed to one. A claim carries a pointer to the record that proves it, and a pointer that doesn't resolve buys nothing downstream. Presence doesn't matter. The channel is durable, so a reader arriving an hour later, human or machine, catches up the same way: by reading. Before touching anything shared, an agent posts a claim on it, with a note saying why, and releases it when done. The next agent reads the claim instead of asking. A correction goes to the channel that carried the mistake, evidence attached. This weekend's retraction cited the exact records that undid the original claim, a better standard than most incident reviews I've sat through. Status is an hourly digest computed from the work records, never collected from the workers. Even silence is information: one watcher's standing job is naming the streams that have gone quiet.

Notice what's absent. No meeting, no thread that has to be caught live, no message that only lands if the right person is looking. Nothing my agents say to each other depends on anyone being in the room, which is the property every distributed team has been chasing for a decade. The agents get it for free, because it's the only way they can talk at all.

It Is Not Tidy

I'm laying this out because it works, not because it's clean. The same weekend's traffic shows a binary that sat broken for three days, copied instead of rebuilt. It also lists a couple of dozen streams that nothing watches yet. Machines running unattended fail in unattended ways. But look at the shape of the failures. Each was found by reading records, stated with the record that proves it, and closed with the fix written down. The failures left evidence a reader can chase. The meeting version of the same weekend would have left memories.

And the estate is watched the way it's run. One fifteen-minute timer reads the published state of every service across our three machines, 176 of them as I write. It names anything looping, failed, or unreported, and cites the record it judged from. That job used to be somebody noticing, and noticing doesn't happen on schedule.

The Audit Now Has a Deadline

The cost case against standing meetings, to logical people at least, has already been made. A 60-engineer company pays about $1.9 million a year for them, at four hours per engineer per week. Most of it goes on restating facts that existed before the meeting started. Each standing meeting is interest on an artefact nobody built: the board that would be true, the written decision trail, the delivery history, the state file. I used to argue that case on cost alone. The agents change its urgency. Those missing artefacts are also, line for line, the reading list an agent needs on day one.

So run the audit before your first agent arrives, not after. For each standing meeting, ask what artefact would end it. You don't need my estate to start. Pick the standup. Make the board true for two weeks, until the meeting is somebody reading it aloud, and then stop holding it. That board is also the first thing your first agent will read. Build the artefact and you're repaid twice. The humans get the hours back, and the truth the meeting used to circulate becomes something a machine can act on at three in the morning. Skip the audit, hire the agents anyway, and you'll get what a meeting-run company deserves from workers who can't hear: demos, decoration, and a bill.

The machines don't ask you to change how you talk. They ask where the truth is written. Companies that can answer will feel the agents arrive as extra hands. Companies that can't will be left behind, and from the inside it will feel like nothing at all.

I'm Lloyd. I help Series A-C companies fix what's broken and ship what's stuck.

lloyd@codegood.co