An AI agent is a program in which a language model is given a goal, has tools to act on other systems, and decides in a loop what the next step should be until it is done. Model, tools and loop: those are the three parts. Take one away and you have something else, usually a chatbot or an automation.
Definitions of the term are easy to find. This article starts somewhere else: the agents we build and run at Bamboo Tech Studio, what they actually do, and how we decide when a problem deserves one.
What an AI agent is, part by part
- A language model that reads the situation and reasons about it. It is the one making decisions.
- Tools: functions the model can call to read or change something in the world. Look up a customer in the CRM, create a ticket, edit a file, reply in a group.
- A loop: the model calls a tool, reads the result, decides the next step and repeats until the goal is met or it concludes there is nothing for it to do.
A real example. In a WhatsApp group, someone writes that a contact needs a call on Monday. Our CRM agent creates a follow-up dated for the correct Monday and confirms in the group what it did. Nobody told it which tool to use or in what order; it worked that out from the message. That is what makes it an agent.
AI agent vs chatbot vs automation
One question separates the three: who decides the next step?
| Chatbot | Automation (n8n, Zapier) | AI agent | |
|---|---|---|---|
| Who decides the next step | A script, or a model only to word the reply | Whoever designed the flow | The model, on every turn of the loop |
| Input it handles well | Questions within its topic | Structured data and predictable events | Free text, ambiguous requests, messy messages |
| What it produces | A message | The same steps every time | Actions in other systems, plus a reply |
| How it fails | Says something off the mark | Stops when the input changes shape | Does something plausible but wrong |
| Cost to run | Low | Low and predictable | Higher: inference, testing and supervision |
That last row matters. An agent is the most flexible option and also the most expensive one to run well. Which is why the right answer is often an automation with a single AI step. Our support intake flow, described below, is exactly that: a fixed sequence in which a model only labels each message, and only a likely report goes any further. It picks no tools and runs no loop, and it works better that way.
Agents we run in production
These are the ones we operate today, described without client names. The failure modes that come with agents like these, and the rule we apply to each, are in WhatsApp AI agents in production.
A CRM agent in a WhatsApp group. It lives in a group we share with a business partner. It reads what people write, reads and updates the CRM through tools (clients, follow-ups, meetings) and replies in the group. It can add records but not close them; a person does that.
An intake flow that proposes support tickets. It listens to our WhatsApp groups with clients. A model classifies each client message as a report, a status question, conversation or noise. A report with high confidence becomes a draft ticket that keeps the client’s exact words, and a person confirms it with one click before the client gets an acknowledgment. Voice notes are transcribed and classified like text.
A draft assistant on a support inbox. It reads each incoming customer message and writes the reply as a private note. A person reviews it, edits it if needed and sends it. The assistant never replies to the customer directly.
A website editing agent. The client asks for a change in plain language (“replace this text with that”, “update this figure”). The agent prepares the change on a separate branch, the system builds a preview of the page, and a person clicks Publish. The agent can only touch content files and has no way to publish; the server does that, and only when someone approves. It runs on two client sites today, on a mid-sized open model served from our own inference.
A team requests agent. When someone on the team asks for something in an internal channel, the agent acknowledges it without revealing any content, prepares an answer from what our company wiki already knows and sends it privately to the person who decides. It only posts the approved version, and the approval is checked by code, not by the model.
ChatWise, on websites and WhatsApp. Our support chat product. It answers from the business’s own content (the technique explained in what is RAG), and on every message a router chooses between answering from the knowledge base, using a tool or handing the conversation to a person. The handoff happens when the customer asks for a person, and a second check makes sure a plain “thanks” or “ok” is not mistaken for that request.
Notice the pattern: in almost all of them the agent prepares and a person decides. That is not a lack of ambition. It is what lets an agent do real work from day one.
When your business needs an AI agent
An agent makes sense when all four conditions hold:
- There is repetitive judgment over messy input. WhatsApp messages, emails, plain-language requests, voice notes. If every case needs someone to read and decide, and the cases come in every day, there is room for an agent.
- The tools exist. The agent needs systems to act on: a CRM with an API, a repository, a database, a support inbox. Without tools it can only talk.
- The cost of a mistake can be contained. A badly worded draft gets corrected; a change on a branch gets discarded. A payment sent or a record deleted cannot be taken back.
- A person can review. At least at first, someone has to look at what the agent proposes before it reaches a customer.
And when you do not need one:
- The rules are clear and the data is structured. “When a paid order comes in, generate the invoice and email it” is an automation. An agent there only adds cost and variance.
- The task happens a few times a month. Building, testing and watching it will not pay for itself.
- Every mistake is irreversible and nobody can review. Design the approval step first, then the agent.
- There is nothing to connect it to. If the information lives in someone’s head, the first project is writing it down, not automating it.
If you are torn between an agent and an automation, start with the automation and add an AI step where judgment is needed. Moving up to an agent from there is easier than moving down. And if the pressure to “have an agent” comes from outside rather than from a concrete problem, read hype is making your AI decisions.
The minimum to run one safely
Our baseline rule: a rule that only lives in the prompt is not a rule. A model can ignore a rule given by instruction (work on a branch, respect a format), while the same rule enforced in code holds every time. What we build in from day one:
- Narrow tools. The website agent can only write inside the content folder, and its shell access is an allowlist of git and read-only commands. A blocklist falls short: an agent can create a blocked file with a shell redirect.
- Human approval for anything irreversible. Agents add; people close, delete, publish and invoice.
- Today’s date on every message. Models do not know what day it is. Without it, an agent can set a due date in a year that has already passed.
- Verified IDs. Code checks every record number the agent cites against the ones the tools actually returned. If the agent creates follow-up 4 and then confirms “follow-up 14”, that check catches it.
- Status that cannot lie. State comes from the system, not from what the agent says it did. An agent can tell a person a change is ready when the system blocked it. So in our website agent, the status the person sees is read from git, never from the agent’s words.
- An evaluation before launch. A set of cases with a pass mark. Our new agents get one before they go live. Writing the checks after the first incident is the order to avoid. How to build one is in the evals you actually need before shipping an LLM feature.
Each point answers a specific failure mode. Several are explained in detail in WhatsApp AI agents in production, and what an agent should remember between conversations is in agent memory in practice.
How to build an AI agent for your business: where to start
- Pick one process. One that happens every day and that someone handles today by reading and deciding. “Go through client messages and spot the bug reports” is a good first process. “Automate support” is not.
- Measure it before you touch it. How many cases a week, how long each takes, how many slip through. Without that baseline you will not be able to say whether the agent helped.
- Start in shadow mode. This is how we bring up flows like our support intake: before it creates a single ticket, it runs in log-only mode and records which messages it would have turned into tickets, without creating any or sending anything. If live traffic is too thin to judge it, earlier real messages go through it the same way. That gives you free precision data before it acts.
- Then draft mode. The agent proposes and a person approves with one click. Only once the drafts are consistently right do you talk about more autonomy, and always with a switch that rolls it back instantly.
- Add one tool at a time. Every new tool is a new way to be wrong. Add it when a real case calls for it, not just in case.
Once you have several agents the problem changes: where what they know lives, how they coordinate, who watches them. That is what what is an AI operating system covers.
If you have a candidate process and want to know whether it deserves an agent or a simpler automation, let’s talk. We design, build and run AI agents and automations with the same rules we apply to our own.
Frequently asked questions
What is an AI agent?
An AI agent is a program in which a language model is given a goal, has tools to act on other systems, and decides in a loop what the next step should be until it is done. The tools can search a CRM, create a ticket, edit a file or reply in a chat. What defines it is that the model chooses what to do, not a fixed script.
What is the difference between an AI agent and a chatbot?
A chatbot converses: it follows a script or generates replies, and its output is a message. An AI agent acts: it queries systems, creates records or prepares changes through tools, and decides at each step which one to use. Many modern chat products are agents underneath, because besides answering they can open a ticket or hand the conversation to a person.
How is an AI agent different from an automation built in n8n or Zapier?
An automation follows a fixed sequence someone designed: when X happens, do Y, then Z. It is predictable and cheap, but it breaks when the input does not have the expected shape. An agent decides its steps on the fly, which lets it handle free-form messages and ambiguous requests at the cost of being less predictable. Often the best option is an automation with a single AI step.
When does my business need an AI agent?
When four conditions hold: there is a repetitive task that needs judgment over messy input, such as WhatsApp messages or plain-language requests; there are systems the agent can act on; the cost of a mistake can be contained; and a person can review what it does. If the rules are clear and the data is structured, a simple automation is usually enough.
How do I start building an AI agent for my business?
Pick one process, measure how much volume and time it takes today, and start in draft mode: the agent proposes and a person approves. Before that, let it run for a while recording what it would have done without doing it. Give it narrow tools, inject today's date, and write a test set before launch. Widen its scope only once the drafts come out right.