Source: Building effective agents, Anthropic
TL;DR: My read: most small teams asking for an "AI agent" need a workflow: fixed steps, with an AI model doing one or two of them. Agents, where the model decides its own steps, are useful for open-ended work but cost more and can stack up errors. Start with the simplest version that does the job and add autonomy only when the job demands it.
A small team hears that AI agents will run the business. They buy a tool, give it access to the inbox and the CRM. Then someone spends a Friday undoing what it sent.
Usually the job never needed an agent.
Two different things with one name
Anthropic, which builds these systems, drew a useful line in its December 2024 post Building effective agents. The post now notes the tooling has changed since then. My read: the distinction still holds, though I haven't checked Anthropic's newer Managed Agents material. Workflows are "systems where LLMs and tools are orchestrated through predefined code paths." Agents are systems where the model dynamically directs "their own processes and tool usage."
In plain terms: in a workflow, you decide the steps. In an agent, the model does.
My read: a lot of marketing blurs the two, because "agent" sells better than "a script with a good step in the middle."
Why simple usually wins
The same post recommends "finding the simplest solution possible, and only increasing complexity when needed," and notes that this "might mean not building agentic systems at all." It also says agentic systems often trade latency and cost for better task performance.
Anthropic is direct that agent autonomy "means higher costs, and the potential for compounding errors." It recommends "extensive testing in sandboxed environments, along with the appropriate guardrails."
My read for a small team: every step a model chooses on its own is a step you have to check. A fixed workflow makes the checking boring, and boring is what you want from anything touching customers.
What this looks like in a real week
Take a team that answers the same pricing questions by email every day.
The workflow version: a new email arrives, a model drafts a reply from your approved pricing page, and a person clicks send. Three steps. You know where to look: the reviewer checks the price against the page.
The agent version: the model reads the inbox, decides which emails matter, looks things up, writes, and sends. More impressive. Also more ways to send a discount nobody approved.
For a team answering one repeated question, the first one saves the hours. The second one makes a better demo.
To be fair, the same Anthropic post names customer support as a natural fit for more open-ended agents, when success can be clearly measured and there's meaningful human oversight. The question is what the system may do without approval. Drafting a reply is cheap to get wrong. Issuing a refund isn't.
Does the model have your current price list?
The same post calls the basic building block "the augmented LLM": a model enhanced with retrieval, tools, and memory. Its advice is to tailor those capabilities to the specific use case and give the model an easy, well-documented interface to them.
That's the unglamorous part, and my read is that it's where small-team projects succeed or fail. Can the model actually read your price list? Is the price list current? Does anyone own it?
If the answer to any of those is "sort of", an agent won't fix it. It will quote last year's prices in seconds.
Signs you've been sold an agent you don't need
My own list.
- The demo used a made-up company, not your data.
- Nobody can tell you what happens when it's wrong.
- The pricing is per "agent", but the job is one task.
- The pitch says "autonomous" more often than it says "checked".
Any of these means I'd define the job before buying.
How to decide what you need
- Write the job down as steps. If you can list them, build a workflow.
- Put the model where judgment is needed, like drafting or sorting, and keep the rest as plain rules.
- Keep a person on anything that leaves the building: emails, invoices, posts. Tell them what to check (price, promise, name) so approval isn't a rubber stamp.
- Reach for an agent only when the steps really can't be known in advance, such as open-ended research. Then test it somewhere safe first.
- Measure hours saved and errors caught, not how autonomous it feels. Anthropic's own advice is to add complexity "only when it demonstrably improves outcomes."
- Limit access. Read-only CRM, draft-only mailbox, no send rights until the trial says otherwise.
- Run a one-week trial on real work. Take 20 real emails. Log minutes per email before and after, and count drafts with a wrong price or promise ("3 of 20").
- Ask the vendor three questions. What happens when it's wrong? Can it act without approval? Can you show me this on my data?
Sources
- Building effective agents, Anthropic