AI agent vs chatbot: one answers, the other acts
A chatbot produces words. A person reads them and decides what to do, which means a wrong answer is a bad answer somebody can disregard. An agent takes actions: it files the ticket, sends the message, updates the record. A wrong action has already happened by the time anyone notices. The underlying model can be identical and the error rate can be identical, and the two systems still belong in different categories, because the question that matters is not how often it is right but what happens when it is wrong. This is why the interesting difference is not technical. It is that an agent needs an approval model, an audit log and an answer to who is accountable, and a chatbot needs none of those. Organisations that treat an agent as a chatbot with extra features discover this in the wrong order.
The line is the consequence, not the interface
Both frequently look like a chat window, which is why the terms get used interchangeably. The interface is not the distinction. A system with no chat window at all, triggered by an incoming email and acting on it, is an agent. A system with an elaborate conversational interface that only ever returns text is a chatbot.
The test is simple: after the system responds, has anything changed other than what is on the screen. If not, it is a chatbot and the person is still the one acting. If something changed in a system of record, it is an agent, and every question about permissions, logging and liability has just become live.
Retrieval sits on the boundary and is worth being precise about. A chatbot that reads your database to answer a question is still a chatbot: the consequence is words. The moment it can write to that database, it is an agent. The capability that changes the category is writing, not knowing.
What changes when it acts
Approval becomes a design question. Not whether to have it, but where. Asking a person to confirm every action removes most of the value and produces approval fatigue, where people click yes without reading. Asking for nothing is indefensible for anything irreversible. The workable answer is nearly always drawn on reversibility: automatic for actions you can undo, approval for actions you cannot.
Logging becomes mandatory. A chatbot's logs are useful. An agent's logs are the only way to answer the question that will eventually be asked, which is why did it do that. The log needs the action, the inputs it was working from and the reasoning, and it needs to be retained long enough to cover whatever review cycle your organisation has.
Accountability has to be assigned before launch. When an agent sends the wrong message to a customer, someone is responsible, and if that was not decided in advance it will be decided in the worst possible circumstances. The answer can be the team that owns the process, or the person who approved the deployment, but it must exist and be written down.
Build the chatbot first
This recommendation is not about difficulty. It is about information.
Nobody predicts accurately what people will ask a system. The questions that arrive are consistently different from the ones anticipated in the design session, and they are different in ways that change what the eventual agent should do. Three months of real questions is the best specification you will ever get, and it costs a fraction of building the wrong agent and discovering the same thing afterwards.
There is a second benefit that matters more than it sounds. A chatbot lets the organisation build trust in the underlying system's judgement while the consequences are still zero. People who have spent three months seeing the answers, including the wrong ones, have a calibrated sense of where it can be relied on. That calibration is what makes the approval boundaries for the agent sensible rather than arbitrary.
The common mistakes in each direction
Building an agent where a chatbot was enough. The work someone actually wanted was the answer; the action was one click they did not mind doing. Automating the click added an approval flow, an audit requirement and a class of failure, in exchange for a second of somebody's time.
Building a chatbot where an agent was needed. The system produces a perfect summary of what should happen next, and then a person retypes it into another system. The value stops at the copy-paste, and users abandon it within a month because the effort saved does not cover the effort of using a second tool.
Letting a chatbot become an agent without noticing. The most dangerous of the three, and the most common. A tool is added, then another, and one of them writes something. No decision was taken, no approval flow exists, and the logging was designed for a system whose worst outcome was a bad sentence. The moment to stop and redesign is the first write capability, and it is easy to miss because it arrives as an incremental feature.
A practical way to decide
Write down the three things the system would do most often, and for each one ask what happens if it does it wrongly at three in the morning with nobody watching. If the answer is that somebody reads something incorrect and disregards it, build a chatbot. If the answer involves undoing something, you are building an agent, and the design work starts with the undo rather than with the model.