Tools matter more than the model
An agent’s quality depends first on the quality of the functions it can call. A tool with an ambiguous description, unhelpful error messages or overly permissive parameters produces an erratic agent — whatever the model.
So most of the development work goes into the tools: narrow scope, unambiguous description, strict parameter validation, actionable error messages and unit tests. It is classic software engineering that makes the difference, not prompt tuning.
Three non-negotiable guardrails
Scope is technical. What the agent must not do, it cannot do: the control lives in the tool code, never in a written instruction.
Limits are hard. Maximum steps, token budget, execution deadline. An agent that exceeds them stops and hands over.
Everything is logged. Every reasoning step, tool call and result. Without that trace, an incident cannot be analysed and improvement is impossible.
What can reasonably be promised
Across the deployments we run, a well-built agent handles 40 % to 65 % of a repetitive workflow without human involvement, with a measured error rate between 1 % and 3 %. The rest is escalated — and that is a good result, not a failure.