Almost every stalled agentic programme we see has the same shape. The demo worked. The model reasoned fine. Then it met the enterprise, and the questions started: which identity is it acting as, what exactly can it write, what happens when it is wrong, and who can reconstruct what it did last Tuesday.
Those are not AI questions. They are the questions every integration has answered for twenty years — authentication, authorisation, scope, schema validation, rate limiting, idempotency, audit. An agent calling your order system is simply an API consumer with unusually poor judgement and an unusually large action space.
Which is why we think the useful work sits in the layer beneath the model. Not prompt engineering, not another framework — a tool and context layer over the systems you already run, where each capability is defined narrowly enough that the agent cannot reach past its remit, and every call leaves a record.
Build that, and the model becomes swappable. You can change providers, upgrade to whatever ships next quarter, or run several models against the same tools, without renegotiating access to your ERP each time. Skip it, and you have a pilot that will never pass review.