DEV Community

Hubzoid
Hubzoid

Posted on Originally published at hubzoid.com

Three types of AI agents, and how to pick one before you build

Most internal AI projects don't fail on the tech. They fail because nobody decided what kind of agent they were building.

Some agent jobs start with a specific input. Some start with a question in plain language. Others start when a clock or an event fires. Those differences decide what a useful answer looks like, and what can go wrong.

So choose the shape of the work before you choose the model or the interface.

The three shapes

Shape Example What it needs most
Specific task Check this invoice against its purchase order Named inputs and an agreed result format
Question-answering What is our current returns policy? Relevant knowledge and a source for the answer
Background work Prepare the report every weekday morning A schedule, bounded runs and an owner

The failure mode is mixing them

Trouble starts when a job of one shape is built as another:

  • A Q&A bot sold as a tool. People expect a predictable result and get a conversation that answers a slightly different question each time.
  • A flexible tool frozen into automation. Something that needed a person to read and adjust the output now runs at 7am with nobody watching.

The shapes are patterns, not product categories. A chat can ask for an invoice check, and a scheduled job can use an agent to explain exceptions. What matters is that each job gets what its shape needs.

Specific tasks need a contract

An invoice check says what it expects: an invoice, a purchase order and the current matching rules. It says what it returns: matched lines, mismatches and any missing document.

  • Use code for exact comparisons and arithmetic.
  • If the model reads messy text, check its extraction before treating it as fact.
  • If the result feeds another process, validate the structure and give failures their own explicit outcome.

A paragraph that looks convincing is not a contract. A fixed output format doesn't make every model-generated value deterministic, either.

Questions need sources and room to clarify

People ask the same policy question in many forms. A useful Q&A agent finds the current policy, names its source and asks a follow-up when the answer depends on details it doesn't have. A returns question may depend on the purchase date or the account type, and guessing them changes the answer.

Test the refusal too. Ask for a number the agent's sources don't hold, and check that it says what's missing instead of estimating from unrelated data.

Background work needs a failure plan

When nobody is watching, a duplicate report or a silent failure can go unnoticed for days. Before you schedule anything, answer:

  1. What starts the work, and which timezone applies?
  2. Which account does the run act as, and what may it access?
  3. Where does the result appear, and who reviews it?
  4. What happens if an input fails or the process restarts?
  5. Could repeating a step send a second message or change a record twice?

The last one bites hardest. If a run restarts halfway, any step with an external effect needs its own protection against running twice.

Before you build, write four lines

For the job you have in mind:

Input:    what the agent receives, and from whom
Output:   the exact result, and where it goes
Trigger:  a person asking, or a schedule or event
Failure:  what happens when an input is missing or a step fails
Enter fullscreen mode Exit fullscreen mode

If you can't fill in the trigger, you don't know the shape yet.

See it in action

This short video shows the three shapes running on one shared set of team knowledge:

The longer version, including how each shape maps to chat, workflows and assistants over MCP in Hubzoid, is on our blog: Three types of AI agents, and when to use each.

Top comments (0)