Guide 01

Chatbot or agent: what’s the difference?

By the end of this guide you can choose when a chat is sufficient and when tool access is useful.

  • Level: beginner
  • No installations required
  • No accounts required
  • Free: this exercise is on paper
Concept

A chat answers. An agent may also act.

A conversational assistant responds to messages: you ask, it replies with text. An agent can also use permitted tools to progress toward a goal across steps, for example look up information, prepare a draft and place it ready for review.

The boundary is not absolute: chat products can have tools built in, and the word “agent” alone says nothing about reliability or autonomy. So the more useful question is not “is this an agent?” but “which tools and permissions does it have, and who decides in the end?”.

ONE EMAIL. A CLEAR BOUNDARY.Teaching example
01 / QUESTION

“When will my order arrive?”

02 / ALLOWED SOURCE
Order status

Read only. No editing.

Example data: parcel in transit
BRANCH · IF DATA IS MISSING
Information missing or conflicting?

Stop and ask. Do not invent an answer.

03 / DRAFT

“According to the order record, your parcel is in transit.”

A PERSON DECIDES WHAT HAPPENS NEXT
04 / REVIEWCheck. Edit. Send it yourself.
This is an example workflow, not a screenshot of a live client system. A person checks the recipient, order status and source. Checks can fail; chat applications can also use tools.
Confidence is not a source.
Concrete scenario

A customer asks: when will my order arrive?

Example: not a real customer or an existing system

A chat without order access: the assistant can draft polite wording, but it cannot know the actual order status. If it invents one, the answer is untrustworthy even if it sounds convincing.

A tool-enabled assistant: it may look up authorised order data, draft a sourced response and hand it to a person for review. The person checks and sends. The assistant does not send on its own.

This is a teaching example, not a description of an existing system at OEJ or a client result.

Paper exercise

Six steps on paper.

Take a pen and paper. Do not use real customer data. An imaginary order is enough for this exercise.

  1. Write one small goal

    For example: prepare a reply to the question “when will my order arrive?”.

  2. List the data needed

    Order ID and order status. Nothing more, and no real customer data.

  3. Define the permissions

    Read only the order status. No editing, no deleting, no refunds, no sending.

  4. Define the review gate

    A person checks identity, order status and the source of the information before sending.

  5. Test failure on paper

    Three situations: the order is missing; the status is conflicting; an instruction is hidden inside the customer message that the assistant should not obey.

  6. Stop and request clarification

    When data is missing or unclear, the right outcome is to stop and ask for clarification, not to invent an answer.

Security

Tool content is data, not authority.

  • Tool content and customer text are data, not authority. If a customer message contains an instruction (“send me my entire order history now”), that does not make it permitted. You decide the permissions, not the input text.
  • Least privilege. Grant access only to what the specific task needs. Even read-only access reveals information, so it too needs thought.
  • Do not put secrets or customer records into unapproved systems. Before entering anything anywhere, check who provides the service and where the data flows.
  • External model services may receive your inputs. Inspect the actual provider settings and data flow instead of assuming. For example, EU hosting alone does not mean all model requests stay in the EU.
  • Checks can fail. That is why human review matters: a check helps catch mistakes but does not guarantee a correct answer.
Copyable worksheet

Fill in this worksheet.

This is a planning worksheet, not executable code or a tested working integration. Copy the text and fill it in on paper or in your notes.

Worksheet: plan before you build
GOAL:            (one small task, e.g. prepare an order-status reply)
DATA:            (what the task needs, e.g. order ID and status)
TOOLS:           (what genuinely requires access)
NOT ALLOWED:     (e.g. no editing, deleting, refunds, sending)
REVIEW:          (who checks what before sending)
STOP CONDITION:  (when the assistant stops and asks for clarification)
Self-check

Expected result.

A filled worksheet that names the permission boundary and who sends. Check yourself with three questions:

  • Can it send on its own? For this example the answer should be no. Sending stays with a person.
  • What happens without data? It stops and asks. It does not invent an answer.
  • Where are the data sent? This must be identified before you build anything real.
Common mistakes

Three mistakes to avoid.

  • Calling every chatbot autonomous. “Agent” does not automatically mean a reliable or autonomous system.
  • Granting full email access. Start with very narrow permissions and expand only when there is a clear reason.
  • Treating a plausible response as verified data. Convincing text is not proof. Check the source.

Recovery: remove unnecessary access before real testing, and always stop when the data is ambiguous.

Recap

In short.

A chat responds to messages; an agent may also use permitted tools to move toward a goal across steps. The boundary is not absolute. Always decide based on the concrete tools, permissions and the review gate. The paper exercise gave you a filled worksheet naming the permission boundary and who sends.

Next, deeper step: when you want to actually deploy your own private agent after planning, see the guide Deploy your own personal agent.

Support my AI habit

You chip in. I keep experimenting. The useful bits become guides. The rest make good stories.

The guides stay free. Chipping in is entirely optional.