Skip to content
Rubatt

Human in the loop AI, enforced at the write path

Most systems that claim a human is in the loop mean a person can review logs afterwards. We mean the agent physically cannot complete an irreversible action until a named person approves the specific change, and it shows them exactly what that change will be.

Reads are free, writes are not

The split runs through everything we build. An agent can query your accounting system, read a ticket history or search a document store as often as it needs to, because none of that changes anything. The moment it wants to apply a credit note, send an email, refund an order or update a record, it stops. That asymmetry is what lets the useful part run unattended without the dangerous part ever doing so.

A diff, not a request for permission

A prompt that says the agent would like to update an invoice is not a control, because nobody can evaluate it. What our gates present is the concrete change: this field, from this value, to this value, on this record, because of this evidence. It reads like a pull request, and it is reviewable in seconds rather than requiring the reviewer to reconstruct the agent’s reasoning.

  • The exact records and fields that will change
  • The before and after values
  • The evidence the agent used to decide
  • What it considered and rejected, when that is relevant

Permission is granted, never assumed

Each agent holds a narrow set of capabilities, granted explicitly and scoped to the workflow it runs. There is no general purpose write access sitting behind a system prompt asking it politely not to use it. If a capability was not granted, the failure mode is that the agent cannot find a tool to call, which is a very different thing from an agent that decided not to.

The gate is also your audit trail

Because every write passes through the same choke point, the record of what happened is a by-product of the architecture rather than something a developer remembered to log. Who approved what, when, on what basis, and what the system did next. This is usually the part that makes a compliance conversation short.

Loosening a gate is a decision, not a default

Plenty of teams relax a specific gate after watching a few hundred correct proposals, and that is reasonable. It happens per action type, it is a config change rather than a rebuild, and it is reversible in one deploy. What we will not do is ship with gates off and let you discover the consequences.

Questions about this

Does this not make the agent slow?

It adds the time a person takes to click approve, and removes the time a team spends verifying that nothing went wrong. Teams that measure both usually find the gated version faster end to end, because unverified automation gets checked manually anyway.

What happens to gated actions out of hours?
Can approvals happen in Slack rather than another dashboard?

See a gate in a real workflow

We will run one of our systems in demo mode and stop it mid write so you can see what the reviewer actually gets.