The word "agent" now gets attached to almost everything. A support widget, an email summarizer, a coding tool that edits files on its own. They all get called agents, which makes it hard to tell what you're actually looking at.
That matters if you're choosing a tool for your team or building one. The label affects how much you trust it, how you set it up, and what can go wrong. So here's a way to tell them apart that doesn't depend on the marketing. Ignore the name and ask one question: who decides the next step?
Three patterns, not three product types
Chatbot, assistant, and agent aren't separate boxes of software. They're patterns of behavior, and one product can show more than one. An agent will happily answer a simple question like a chatbot. A chatbot can be wired to call a tool. What matters is what the system is doing at that moment.
- Chatbot pattern: mostly conversation. You ask, it responds. It isn't pursuing a goal across multiple steps.
- Assistant pattern: it works with you on a task. It can draft, look things up, and sometimes act, but you're steering.
- Agent pattern: you give it a goal, and it decides the steps, carries them out, and adjusts as it goes.
That last one has a typical shape, and it's the most useful idea in this article: plan → act → observe → adapt → repeat. The system decides what to do, does it, looks at what happened, and changes course if needed. Then it goes again until the goal is met or it gets stuck. Real systems vary in how they do this. Some write out an explicit plan, others just pick the next action as they go. What they share is the decision loop.
That's the kind of autonomy that matters here. It doesn't mean the system operates without limits. It means it can choose its next action without you specifying every step.
Tool use alone doesn't make something an agent. A script that calls an API every time a form is submitted uses a tool, but it isn't deciding anything.
These three patterns also aren't a maturity ladder. Think of them as conversation, collaboration, and delegated decision-making. A chatbot isn't a broken agent, and an agent isn't automatically the better choice.
| Chatbot | Assistant | Agent | |
|---|---|---|---|
| Main role | Answer | Help | Complete a goal |
| Who usually decides the next step? | User or fixed logic | Mostly the user | The system |
| Multi-step work | Limited | Some | Core capability |
| Adapts to results | Usually limited | Sometimes | Core behavior |
The chatbot pattern: answer, then stop
Older chatbots follow scripts. Newer ones use a language model to write the reply. Either way, the primary job is to answer rather than independently pursue a goal.
Answering can still have consequences. In 2022, Jake Moffatt asked Air Canada's website chatbot about bereavement fares. It told him he could book at full price and claim the discount afterward, which contradicted the airline's real policy. A British Columbia tribunal found Air Canada responsible for the information its chatbot provided and ordered it to compensate him. The amount was small. The lesson isn't: a chatbot that only talks can still cost you money when it's wrong.
The assistant pattern: help while you drive
An assistant works alongside you, and you stay in the loop.
Say you ask one to prepare a weekly sales report. It pulls the numbers from your spreadsheet and drafts a summary. You notice the Europe figures look off and tell it to recheck. It fixes them, you approve. It did a lot of the work, but every meaningful decision passed through you.
Klarna offers a large-scale version. Klarna reported that its AI assistant handled 2.3 million customer-service conversations in its first month, about two-thirds of its support chats, while average resolution time fell from 11 minutes to under 2. Those are the company's own figures. What they show is how much routine work an assistant can absorb without taking over the whole decision process. Klarna later said human support still matters for the more complicated cases.
The agent pattern: you hand over the goal
Coding agents are the easiest place to watch the loop run.
A developer tells a coding agent such as Claude Code or OpenAI's Codex: "The checkout tests are failing on main. Find out why and fix it." The agent reads the failing test, checks recent commits, runs the suite, and reads the error output. It edits the code it thinks is responsible and runs the tests again. Still failing? It reads the new error and tries something else. When the tests pass, it can open a pull request, a proposed code change a teammate reviews before merging. Each step was chosen based on what the previous one showed. (Exact behavior varies by product, settings, and permissions, but this is the general pattern.)
It isn't only a coding thing. Give an agent the goal of processing incoming refund requests. It reads each request, looks up the order, checks it against the refund policy, and gathers any missing details. Clear cases it processes. Unusual ones it sends to a person for approval. The exact order of steps wasn't predetermined for every request. The difference isn't simply that it performs several steps, since a fixed workflow can do that too. It's that the agent decides which step to take next based on the goal, the tools it has, and what it finds.
For a deeper look at how this works and where it fits against fixed automation, see our guide to what AI agents are and how they compare to RPA.
There's a tradeoff. When a chatbot is wrong, it says something wrong. When an agent is wrong, it does something wrong, and quickly. That's why teams limit what an agent can touch. A common approach is a sandbox, an isolated copy of your project where mistakes can't reach real systems, plus human review on anything involving money or customer data.
How to spot agent washing
Agent washing means calling something an “AI agent” when it is really just a chatbot, assistant, or fixed automation with little or no ability to make its own decisions.
Gartner uses "agent washing" for the rebranding of existing products, such as assistants, robotic process automation (RPA), and chatbots, as agents without substantial agentic capabilities. In mid-2025 it estimated that only about 130 of the thousands of vendors claiming agentic AI had genuine agentic capabilities. Treat that number as a snapshot, but the test for it is simple. Ask four questions:
- Can I give it a goal instead of specifying every step? If every step is predetermined, that part of the system is behaving like a workflow or traditional automation. Many real systems combine fixed workflows with an agent handling the open-ended parts, so the question is which part you're being sold.
- Can it choose the next action based on what it discovers? The path should depend on what it finds, not only on what someone planned.
- Can it check the result and change its approach when something fails? If it can't, you're probably looking at a fixed workflow rather than an agentic system. This is one of the clearest tells.
- Can it choose between available tools based on the task? Not just call the one tool it was wired to.
And a caution about demos: a rehearsed one can make a scripted workflow look autonomous. Ask to try your own messy case instead.
Also, an agent isn't always the right pick. In a June 2025 prediction, Gartner said more than 40% of agentic AI projects could be canceled by the end of 2027 because of rising costs, unclear business value, or inadequate risk controls. That's a forecast, not a measured result, but it's a fair warning. If a chatbot or a plain script solves your problem, use that.
The takeaway
The question isn't whether a product is called a chatbot, assistant, or agent. It's how much of the work it can decide and carry out on its own. If you specify every step, it's behaving more like a traditional workflow. If the system helps you decide each step, it's behaving like an assistant. If it plans, acts, checks, and adjusts, it's behaving like an agent. And the more it decides, the more it matters that someone reviews what it did.
FAQ
Is ChatGPT a chatbot, an assistant, or an agent?
Depends on what you're doing. Asking a question is the chatbot pattern. Working through a draft together is the assistant pattern. Running a multi-step task on its own with tools is the agent pattern.
Can a chatbot become an agent?
It can be extended into one. They can share the same language model. What changes is the system around the model: tools, permissions, memory or context, and a decision loop that lets it act, evaluate results, and continue.
Are agents safe to run unsupervised?
It depends on the task, the tools, the permissions, and the safeguards. Low-risk tasks in a properly isolated environment can be suitable for greater autonomy. Anything involving money, sensitive data, external communication, or production systems should have human review and appropriate controls.


Comments