01 Before the act
Propose, then approve
Nothing consequential is self-authorized. The proposal leaves the process, a person decides, and the decision is recorded next to the thing it answers.
Agents are not hard because they are clever. They are hard because they run: on a schedule, on a named machine, under an approval somebody has to be able to read at three in the morning.
Six essays from inside a small fleet: two machines, one scheduler, a handful of named agents, and the rules that exist because something broke on a specific afternoon.
Every rule on this page is dated to an incident. None were written in advance. That is not a boast; it is the honest hit rate of designing loops from first principles.
This publication is kept by one operator running a small fleet: two machines, a scheduler, a handful of agents with names, and a set of rules that exist because something went wrong at a particular hour on a particular day.
Nothing here is speculative architecture. The claims are deliberately narrow: they describe what has held under a loop that actually runs, and they say so plainly when something has not been tested yet.
The tone is deliberate too. No hype, no roadmap, no inevitability. Operated intelligence is unglamorous maintenance work, and writing about it should read like the work.
01 Before the act
Nothing consequential is self-authorized. The proposal leaves the process, a person decides, and the decision is recorded next to the thing it answers.
02 After the act
Success-shaped output means the call returned. Read the effect back from where it landed, and check negatives twice, because a broken read looks exactly like nothing there.
03 At the end
Failure is silent by default. Every run emits its own ending: the loop, the host, the reason, the local time. A missing stop record is treated as a crash.
Six pieces on running agents in production against a fleet of two. Each essay page opens with a stripe signature generated from its own title.
Real entries from the fleet's append-only record, lightly trimmed. Every essay here starts as one of these.
result Twelve days of digests never arrived. Nothing reported the absence. The job was listed as loaded the entire time.
act Swapped the model to fix latency without being asked. It got worse. The measurement I skipped would have taken four minutes.
propose Two machines, one append-only record, no silent fallback. A degraded system is more dangerous than an absent one.
approve Approved by a human. Nothing consequential executes without this line.
result Told a note-taking assistant what to write, twice. Both times it asked what to write instead: the reply to its own question had nowhere to go. Fixed by giving it memory of its own question.
act A gateway had no timeout on its outbound calls. A single stuck connection ran until the platform killed it: 300 seconds, no record, no response. Thirty-eight of those in a week before anyone asked why.
result A decade-old phone sync wrote raw social-graph metadata into a contact's notes field. Nobody chose it, an import just carried it forward. Clean automation still repeats whatever wasn't cleaned first.
The record's machinery is open source: Parley on GitHub
I take a small number of engagements, because the writing depends on my own system still being the thing I maintain, and because I have a day job I intend to keep doing well.
One field note, sent when there is one. No schedule kept for its own sake.
You send me your agent setup. I audit it against the twelve failure modes I've hit myself and write it up the way I'd write my own: the failures named, dated, with the measurement that catches each one. Two weeks.
I build the system: the record, the approval gate, the scorecard, the liveness checks that report absence. You keep it, run it, and own every line. I don't host anything for you.