Every horror story about AI talking to customers has the same shape. The model didn't fail to generate a reply — it generated one confidently. A discount that doesn't exist. A booking confirmed for a slot that's taken. A warm, fluent answer in the wrong language. The failure was never "no output." It was unchecked output.
The fix is an old idea from every craft that ships things that matter: the person who makes the thing is not the person who signs off on it. Writers get editors. Code gets review. Pilots get checklists and a second pilot. In an AI agent, that second set of eyes is called a presend judge — and if you're evaluating any system that talks to your customers, it's the first thing you should ask about.
The pipeline, in one breath
Cura's agent runs every conversation through four stages: Receive → Understand → Act → Learn.
A message comes in on WhatsApp, Instagram, LINE, Messenger, SMS, or your website chat (Receive). The agent works out who this is, what they're asking, and what it knows from your knowledge base and the customer's history (Understand). Then it acts — and Act is really two jobs wearing one name:
- The drafter writes the reply: your tone, your policies, this customer's context.
- The judge reads that reply as a skeptical second pair of eyes — and decides whether it's allowed to leave the building.
Only a reply that clears the judge gets sent (or, in Draft mode, shown to you for approval). What the judge learns from its verdicts feeds back into the system (Learn), so the same correction doesn't need to happen twice.
What the judge actually checks
The judge isn't a profanity filter or a vague "safety layer." It's a checklist auditor with your business's rulebook in hand. Concretely, it asks questions like:
- Is this factually grounded? Does every claim — price, opening hours, service detail, availability — trace back to the knowledge base, or did the drafter improvise? Improvised facts are the cardinal sin, and they're blocked outright.
- Does it match the customer's language? This one is a hard block in Cura. If the customer writes in Spanish and the draft comes back in English, the reply doesn't get a style note — it gets rejected. Answering someone in the wrong language is a small thing that reads as "nobody here actually saw me."
- Does it follow policy? No promising refunds you don't offer, no quoting discounts that expired, no confirming things that need a deposit first.
- Is the tone right? Your house voice, appropriate to the situation. A breezy reply to a complaint fails even if every fact in it is true.
- Should a human take this? Some messages — anger, medical questions, anything legally delicate — shouldn't be answered by software at all. Routing to a person is a passing outcome.
Pass, fix, retry
Every draft gets one of three verdicts:
- Pass — the reply is grounded, on-policy, in the right language. It ships.
- Fix — almost right. A small correction (tone, a missing detail, a softened promise) is applied and the result is re-checked.
- Retry — wrong enough that patching won't help. The draft is thrown away and the drafter starts over with the judge's objection as guidance. If a good reply can't be produced, the conversation goes to a human instead. "I couldn't answer this safely" is a feature. The worst systems are the ones that always produce something.
"Why not just write a better prompt?"
The most common objection: if the drafter is told to follow policy, why does it need a second model checking?
Because generation and verification are different jobs, and they fail differently. The drafter is optimizing for a helpful, fluent, complete answer — and fluency is exactly what makes its mistakes dangerous, because wrong answers come out sounding as confident as right ones. The judge isn't generating anything. It's holding a finished reply in one hand and a rulebook in the other, doing comparison rather than creation. Models are markedly more reliable at "does X violate Y?" than at "never violate Y while doing ten other things."
There's a structural benefit too: your rules live in one place. When your cancellation policy changes, you update the knowledge base the judge reads from — you don't archaeology your way through prompt instructions hoping the drafter absorbs the change.
The judge is what makes autonomy reasonable
In Cura, every conversation type sits somewhere on a trust ladder — Off, Draft, or Auto. In Draft mode, the AI writes and a human approves every message; the judge has already screened what you see. In Auto mode, replies send without a human in the loop — and the judge is the reason that's a sane thing to allow. Auto doesn't mean "unsupervised." It means the supervision became systematic: every message gets the same review you were doing manually, including the 2 am ones, including the four-hundredth reschedule of the month, with attention that never gets tired or bored.
That's the honest pitch for autonomy. Not "the model is so good it doesn't make mistakes" — no model clears that bar — but "the system is built so one model's mistake doesn't reach your customer."
Questions to ask any vendor
If you're evaluating AI for your inbox — ours or anyone's — five questions separate a pipeline from a wrapper:
- Is there a separate check between generation and sending?
Or does the first draft go straight to the customer?
- What does it verify against?
"General safety" is not your refund policy. The check should run against your knowledge base.
- What happens on failure?
Fix and retry paths, with human handoff as the floor — or nothing?
- Is language matching enforced?
If you serve customers in more than one language, this will bite you monthly otherwise.
- Can you see the verdicts?
You should be able to see what was blocked and why. That log is both your audit trail and your early-warning system for gaps in your knowledge base.
A judge adds a second or two before each reply goes out. What it removes is the failure mode that kills these projects: the one confident, fluent, wrong message that teaches a customer — and your team — not to trust the system.
Your customers never see your AI's first draft. That's the whole point.