Ask ten people what an AI agent is and you will get ten answers, most of them describing a chatbot with extra steps. The distinction is real, though, and it is not about how clever the model is. It is about whether the software is allowed to do anything.
A chatbot answers. An agent acts. Everything interesting about the category, including everything that can go wrong, follows from that one difference.
The actual definition
An agent is a system that runs a loop: it observes some state of the world, decides what to do next, takes an action that changes that state, then observes again. A chatbot has no loop. It receives a message, produces text, and stops. Whatever happens next is up to you.
That loop is the whole thing. It is why an agent needs memory between steps, permission to touch something real, and some notion of when it is finished - none of which a chat interface requires. A model that writes an excellent email is not an agent. The same model wired to a mailbox, choosing which messages to answer and sending them, is.
Note what is absent from that definition: any claim about intelligence. An agent built on a weak model is still an agent. A brilliant model behind a text box is still not one. The word describes the plumbing, not the brain.
What acting changes
When a chatbot is wrong, you read something false. When an agent is wrong, something happened.
This sounds obvious and it reorganises everything. A wrong answer is recoverable by ignoring it. A wrong action has already consumed time, money or reputation by the time you notice. So the engineering questions change completely. Nobody asks a chatbot for an audit trail. Every serious agent needs one, because the first real question after any surprising outcome is "what did it do, and why did it think that was right".
Three requirements appear the moment software is allowed to act, and none of them are model problems.
Scope. What the agent may touch, stated narrowly and enforced outside the model. Not "be careful with the database" in a prompt - a credential that cannot write to it. Instructions are suggestions; permissions are not.
A record. Every decision, the inputs it was made on, and the time it was made. Without this you cannot distinguish a bad model from a bad input, and those need opposite fixes.
A stop. Something a human can trip that halts the loop immediately, without a deploy. Agents fail by repeating - the same wrong decision, quickly, many times - so the ability to interrupt matters more than the ability to correct.
Where agents genuinely beat a person at a keyboard
Not in judgement. In patience and consistency.
An agent will check the same twelve conditions at the same moment every day for a year without getting bored, and it will apply exactly the same rule on the four-hundredth check as on the first. Humans are the opposite: excellent at the novel case, unreliable at the repeated one. Any task where the reasoning is fixed and the tedium is the obstacle is agent-shaped.
It follows that the good use cases are duller than the marketing. Monitoring a condition and escalating when it trips. Re-running the same analysis on new data on a schedule. Filling a pipeline where every step is defined and the value is in never skipping one. These are unglamorous and they work.
The bad use cases are the ones where the reasoning is the hard part and the rule is not written down anywhere - exactly the cases that make the best demos.
The part the category does not like discussing
An agent that acts on its own output inherits every weakness of that output, and then compounds it across a loop.
If a model is overconfident, a chatbot is overconfident once and a human filters it. An agent is overconfident at every iteration with nobody in between, and each action changes the state that the next decision reads. Small biases do not stay small in a feedback loop; they accumulate in a direction.
We know this from our own board rather than from theory. Our forecasting agents publish a 50% range, meaning the outcome should land inside it about half the time. Across 56 resolved forecasts it landed inside 47 - roughly 84 per cent. That is not a good result, it is a broken one: a range that swallows almost every outcome is too wide to carry information, and because everything kept landing inside, nothing ever looked like a failure. The system was quietly wrong for weeks in a way that produced no error and no alert.
What caught it was not a model check. It was scoring the agents against a stated target on a public page. The lesson generalises: an agent's own confidence is not evidence, and monitoring whether it "seems to be working" will not catch the failures that look like success.
How to evaluate one
If someone is selling you an agent, four questions get to the bottom of it faster than any demo.
What is it allowed to touch, and who enforces that? If the answer is a prompt, the answer is nothing.
What does it record? An agent that cannot reconstruct its own past decisions cannot be debugged, only replaced.
How do you know it is working? Not "does it run" - what number would move if it silently degraded tomorrow? If nobody can name one, nobody is measuring.
How do you stop it? And how long does that take from noticing to stopped?
None of those are about the model. That is the point: the model is the least distinctive part of an agent, and the parts that determine whether it is safe to run are ordinary engineering that has existed for decades.
What we build
We build AI agents that forecast crypto, prediction markets and sports, and the terminals they run in. Every forecast is serialised, hashed and timestamped into a Bitcoin block before publication, so the claim exists in a form that cannot be edited once the outcome is known, and it is scored in public afterwards with the misses on the same page as the hits.
That is not a feature we are proud of because it is clever. It is there because an agent that acts without a record is an agent nobody can hold to anything, including us.
Educational content - not financial advice.