The phrase “AI agent” now covers everything from a chat window with a search button to a system that runs a department. The version that holds up in a working office is narrower than the marketing and more useful than the sceptics expect. After building and running agents for operators in logistics, professional services, health care and distribution, we can describe it fairly precisely.
The work is specific
An agent that “handles the inbox” does not exist. An agent that separates messages needing a reply from FYIs and cold outreach, summarises the former and drafts an answer in the owner’s voice, does. The difference is the specification. Every agent we have shipped does one job that a named person used to do, and the job was written down before the first line of code: what comes in, what goes out, what is allowed, what must wait for a person.
That sounds obvious. It is also where most projects fail, because the specification is only available from the person doing the job, and only if someone sits with them for a day. The architecture principal who filed his own email for fifteen years had rules he had never written down: tracked senders only; a job number in the body outweighs one in the subject; “RFI 011” and “RFI 014” are different issues even when the words match. Those rules became the system. No amount of prompt engineering would have found them.
Deterministic core, model at the edges
The single most important design decision is which parts of the job are computed and which are judged.
A quote for a freight load is computed. Rate benchmarks, fuel, accessorials and margin policy are a function, and the function is code the dispatcher can read. The model’s job is to extract the fields from a load-board posting, which is messy text, and to review the finished quote against the posting for anything the parser missed. It may move the number only within a small cap, and the cap is enforced outside the model. If the market changes, someone edits a table. Nobody re-prompts.
The same split appears everywhere. Insurance coverage rules are deterministic: minimum liability and cargo limits, a minimum remaining term, the right certificate holder. The model classifies the document and extracts the numbers; the rule says pass or fail, and the audit shows both. A segmentation quality tool has families of checks that are pure arithmetic and a model that combines them; an empty label or blank slices inside a structure turn a case red before the model is consulted.
When we describe this to engineering teams they sometimes hear it as distrust of the model. It is the opposite. Models are extraordinary at reading, classifying, extracting and drafting, and we use them for exactly that. They are a poor place to store a price list.
Ask, don’t guess
Every production agent needs an answer to the question: what happens when it is not sure?
The answer that works is a queue. The email filer identifies the job by evidence that votes: the thread, the body, the subject, the sender’s history, the model’s read. When the subject names one job and the body discusses another, that is a conflict, and a conflict is not a coin toss. It becomes a quick check: the principal sees the email, the candidate folder and the reason for the doubt, picks the job and confirms. Nothing is written until he does.
Two things follow. First, the quick-check queue is short, because most email is unambiguous, and the queue contains precisely the cases a person would have got wrong on a busy afternoon. Second, every confirmation teaches: the sender-to-job map updates, and the next email from that contractor files itself.
The alternative, an agent that always acts, produces silent errors, and silent errors in a paper trail are discovered a year later by a lawyer.
Evidence on every decision
A dashboard that shows what the agent did is table stakes. A dashboard that shows why is what makes the system trusted. Each filed email keeps its votes. Each screened standard carries the tool calls the assistant made, shown as chips under the answer. Each carrier certificate shows which rule passed and which failed. Each scored mask shows a heatmap of where the evidence was weakest.
This costs little to build if it is designed in from the start and is nearly impossible to retrofit. It also changes the conversation with the client from “do you trust it?” to “do you agree with this one?”, which is a conversation people are happy to have.
One file to edit
Who the business is, what it sells, what a good lead looks like, which states count as the territory: these change, and they change more often than the code. We put them in one configuration file. The voice agent’s answers, the lead-scoring rubric, the outreach emails and the dashboard copy all read from it. When a brokerage told us its real service mix after the system was live, the change was one file.
The discipline this imposes on the build is useful too. If a fact about the business is hard-coded anywhere else, that is a bug.
Runs without a key
Every system we ship starts with no API key, no network and no credentials, and does something sensible: quotes still price with a regex parser, the fleet board runs on a simulator, alerts are simulated and shown under “sent”, the regulatory assistant falls back to a rule-based screener. This began as a way to make demos robust. It turned out to be what makes production robust, because vendors have outages and keys expire, and a system that degrades to rules is a system that is still working at nine in the morning.
What the agent is not
It is not a colleague, and we do not let it pretend to be one. The phone screener says what it is. The website assistant never says something the site does not say, and we measure that with a retrieval evaluation rather than assume it. The contract agent drafts; a person approves and sends, and the “send” is a PDF the person can read first.
The systems that hold up are the ones built on these lines. They are less exciting to describe than an autonomous agent and much more exciting to run, because they give back the hours, keep the evidence, and ask when they should.
About the authors. Neugent Consulting designs and builds AI systems for operators. The examples in this piece come from client work; clients are anonymised and details are simplified.



