What separates an AI agent from a pretty demo
A demo passes five hand-picked cases. Production has the other ninety-five.
It is easy to build an agent that impresses in a meeting. You pick three good inputs, the model gets them right, everyone applauds. The trouble starts at the fourth input — the one with a broken accent, an empty field, and a question nobody anticipated.
Evaluation before scale
Before widening any agent's reach, I build a case set with expected answers, including the ugly ones: truncated input, ambiguous data, out-of-scope requests. Without that set, every prompt change is a bet — you fix one case and break three without knowing.
It is boring work and it is the difference between a system you can change and one nobody dares touch.
Tools with contracts, not hope
An agent that calls tools needs a contract: validated input, typed output, anticipated errors. If the tool can fail — and it can — the agent needs to know what to do with the failure, not improvise friendly text saying everything went fine.
Explicit limits and a human exit
Every agent in production needs two limits: cost and competence. Cost, because one badly closed loop burns a month's budget overnight. Competence, because some requests it should not attempt — and the right answer there is handing off to a person, fast and without drama.
What I measure
Cost per call, accuracy on the evaluation set, how often it handed off to a human, and why. An agent without those four numbers is not in production — it is in an extended demo.