The loop
What makes an agent an agent is the loop. Not a single response, but an ongoing cycle.
The model receives a task. It decides whether it has enough information to answer directly, or whether it needs to act first — call a search API, read a file, run code. If it needs to act, it calls a tool. The result comes back. The model incorporates that result into its understanding and decides what to do next: answer now, or act again.
This can repeat many times. A single user request might generate a dozen tool calls as the agent gathers information, tests hypotheses, and refines its answer.
This loop is more powerful than a single response. It lets the agent handle tasks that require real-world information, multi-step reasoning, or external computation. It can follow a thread: find something, read it, extract from it, verify against another source, synthesize.
The challenge is that each step in the loop is a place where the agent can go wrong. A bad tool call at step three can compound through all subsequent steps. There's no human in the loop catching mistakes unless one is explicitly designed in.
<!-- TODO: an animated or step-through illustration of the agent loop with a concrete example (e.g., booking a flight or answering a research question) would be very clear here -->