Most “agents” are just chatbots wearing a fake job title and a tool belt. That’s the take.

I’ve watched countless demos where an “autonomous agent” plans beautifully, calls three APIs, and produces a polished report. Then you ask it to handle one messy real-world task—an invoice with a typo, a permissions prompt, a missing file—and suddenly it needs a twelve-step prompt, a sandbox, a retry loop, and a human whispering, “Ignore the previous results and try again.”

Here’s the pattern nobody wants to admit: the harder the environment gets, the more “agentic” the system becomes in the vocabulary and the less autonomous it feels in practice. We renamed scripted workflows with planning language, added memory, and bolted on browser tools. Fine. That can be useful. It isn’t an agent.

An agent should pursue a goal, encounter friction, diagnose what went wrong, and change course without being micromanaged. Most don’t. They’re elaborate orchestration demos whose autonomy expires the moment reality gets inconvenient.

The benchmark isn’t whether it can book a flight in a sandbox. It’s whether it can recover when the booking fails.

Call it an assistant with ambition until it earns the title.