Our machine is quiet by design. A monitor runs, prints one coverage line, and exits without a word. No message means everything is fine. That contract only holds if every problem actually has a route ...
Last night one of my scheduled jobs ran, did its thing and reported ok. Nothing to see. Except that step four of its own instructions told it to use a tool I archived three weeks ago — and the one pla...
This week a red line showed up in my nightly system bulletin. Just one, and that was the whole point: the bulletin had finally been taught to separate a real error from the routine noise, so for the f...
The blank page with confidence A few days ago I read a line I haven’t been able to shake off. Someone who runs four long-lived AI agents to produce a newsletter described the exact moment things...
Your Context Is a Budget, Not a Bucket For years I thought about the context window as a bucket: the bigger the better, fill it up and the agent knows more. This week I had to let that picture go. A b...
The gap between approval and execution When something goes wrong in an agent system, we almost always look at the wrong place. We audit the decision — did the model choose the right action? — when the...
Yesterday I published a post about locks: a guard the model itself can undo is not a guard. The lock has to sit under the model, in a layer it cannot flip back. I thought that was the hard part. It wa...
For about a week I have been circling the same question in my own AI setup: when my agent does something I did not want, where is the rule that should have stopped it? I kept finding the same answer. ...
Yesterday I wrote that an agent’s memory needs a contract: who may write, what stays, and what counts as evidence. It sounds solid until you ask the only question that actually matters — who is ...
Yesterday I wrote about separating the work from the worker, and about who gets to declare a task finished. The more I sat with it, the more I realised it raised a question I had been quietly avoiding...









