Model vs. Chatbot vs. Agent

A developer's reference for understanding the AI stack

Three terms everyone uses interchangeably — but they describe three distinct layers of the same stack. Getting them straight is the difference between knowing what you're building and knowing why it works the way it does.
The Full Stack — How It All Fits Together
🏢
Anthropic
The company. Builds and trains everything. Think AWS — invisible infrastructure, but everything runs on it.
Claude
The product family. Like EC2 is a product from AWS, Claude is the brand Anthropic sells.
🧠
Opus / Sonnet / Haiku
Individual models within Claude. Different capability and cost tradeoffs — Opus is most powerful, Haiku is fastest, Sonnet is the everyday workhorse.
💬
claude.ai
Anthropic's own chatbot, built on top of those models. Their consumer interface. But it's just one chatbot — you can build your own.

The One-Liner Summary
Model
The brains. Stateless, passive, no agency. Text in → text out.
Chatbot
The interface. Wraps the model in a conversation. You talk; it responds. No action.
Agent
Takes action. Uses the model to think, but has tools, a loop, and a goal.

The Question vs. Goal Test

Ask yourself: did you give it a question, or a goal?

💬 Chatbot phrasing (question) 🤖 Agent phrasing (goal)
How do I write a Lambda function?
Write and deploy a Lambda function that does X.
What's wrong with this code?
Fix the bug and make the tests pass.
How should I structure this S3 bucket?
Set up the S3 bucket, CloudFront distro, and wire the origin.

A question asks for knowledge transfer. A goal asks for work output. A chatbot talks. An agent does.

Full Comparison
🧠 Model 💬 Chatbot 🤖 Agent
What it is The AI brain The interface Takes action
Acts on its own? No No Yes
Has memory? No Session only Can persist
Uses tools? No Rarely Yes
Ease to build Very Hard Easy Moderate
Anthropic example Claude Sonnet / Opus claude.ai Claude Code

The Agent Loop

An agent isn't just a model that responds — it's a model in a loop with tools and goals. Instead of answering, it plans, acts, observes the result, and decides what to do next.

GoalThinkAct (call a tool)Observe resultThink againAct again → Done

Example — Claude Code fixing a bug:
  1. Read relevant files          (tool: read_file)
  2. Identify the bug             (reasoning)
  3. Edit the broken line         (tool: edit_file)
  4. Run the tests                (tool: run_command)
  5. Tests fail → diagnose again  (loop continues)
  6. Fix the root cause           (tool: edit_file)
  7. Tests pass → done            (loop exits)

Build Complexity Spectrum
Chatbot
30–50 lines · Hours
Simple Agent
150–300 lines · Weekend
Complex Agent
500+ lines · Weeks

The hard part isn't model access — that's the same API call. The hard part is the orchestration layer: the loop that runs until the goal is met, plus tool definitions, plus feeding results back in. Models are hard to create but chatbots and agents are cheap — you're standing on someone else's billion-dollar investment for a few dollars a month in API calls.


A Tale of Two Claudes — Same Model, Different Experience

What you say

  • "How do I build a basic website?"
  • "What's the best approach for my S3 bucket?"
  • "Explain this error to me."

What happens

  • Claude writes code and explains structure
  • You copy the code into your editor
  • You paste it, push to GitHub, wire up S3 yourself
  • Claude talked. You did the work.

What you say

  • "Build me a responsive landing page and push it to my repo."
  • "Fix the failing tests."
  • "Set up the S3 bucket and wire CloudFront."

What happens

  • Claude Code reads your existing files
  • Writes the code, commits it, pushes to GitHub
  • Runs tests, sees errors, iterates until they pass
  • It did the work. You gave the goal.

Same model under the hood. Completely different experience because of the scaffolding around it. Claude Code qualifies as an agent specifically because it can interact with GitHub — that GitHub interaction is a tool call.

Why This Matters
You don't build models — you build on top of them. Every chatbot or agent you build is an application layer on top of a model someone else trained at enormous cost. The model is the commodity. The value is in the right interface, the right context, and the right use case. When in doubt: did you give it a question or a goal? That's your answer.