Rajeev Belani

20 August 2026

What actually breaks when you put agents in production

Every agent demo you have seen runs one task, once, with a cooperative model and a network that behaves. Production is none of those things.

I learned that first in a newsroom. Software could research, draft and assemble at real volume. None of it published itself. An editor still said yes. The organisations I meet now have the opposite problem: they have a working prototype and no one who will sign for a write.

The demo skips the gate

A demo is a completed path. Production is a path that can stop. The moment software may refund, send, post or publish, someone has to answer four questions in writing: what may be drafted, what may be executed, what the approver sees, and how you undo it the same day.

Until those are written, you do not have an agent in production. You have a pilot that is waiting for permission it will never get. More tooling does not move that. A better model does not move that.

Layers one and two are not the gap

Most organisations already have an assistant layer — Claude, Copilot, ChatGPT, Gemini — and an orchestration layer that can run a job when something happens. Almost none have the third layer: approval, a record, and a way to reverse the write.

That is why the second use case costs as much as the first. There is no reusable constraint. Each team invents a ceremony, or skips one, and audit asks the same question either way.

What surprised me when I had to build it

I built Onroll so I would not advise from above this. Three things were harder than the frameworks suggested.

Ambiguous state. A job that fails halfway is not “retry.” It is a draft that may already have been shown to a person, or a write that may already have touched a system. If you cannot say which, you cannot offer undo.

Model choice in the chat window. If an operator can pick a model, cost and behaviour both drift. The allowlist has to be bound per hire by an administrator. Approve and reject should not call a model at all. A human decision stays a human decision.

Pause has to be real. If you cannot withdraw the tools from every desk when a hire is paused, you do not have a hire. You have a plugin someone will find in six months.

What I would teach first

Not the stack. The specimen: a gate specification a risk function can sign before anything runs. Write boundary, approver, thresholds, record, reversal. Take it and use it, including on work I did not build.

If your pilot worked and you cannot switch it on, start there. The missing piece is almost never another model.

← All writing