Micro Agents One signature and a few tools — the smallest agent, with the full harness by default. python agents agents/micro website/content-src/templates/agents-micro.md agents Micro Agents

Micro Agents

The smallest thing that acts: one signature, a few tools, a typed reply. Most agents in a production codebase should be this size.

IllustrativeGenerated-package equivalent. Prefer checked-in package examples for copy/paste runnable code.
Python
from axllm import agent

assistant = agent("question:string -> answer:string", {"contextFields": []})
out = assistant.forward(client, {"question": "Capital of France?"})

That is the whole program. There is no prompt to write, no parser to maintain, no retry loop to hand-roll — the signature generates all three, and the reply comes back as typed data.

Zero Config Is The Full Harness

A micro agent is not a lesser mode. With no configuration, agent() already runs the complete pipeline — distiller, executor with a live runtime session, responder — the same machinery the long-horizon tier uses. You just haven’t needed to touch any of it yet. Two practical consequences:

  • Typed outputs are the system boundary. The reply is validated against the signature and retried with feedback on mismatch, so downstream code consumes data, not prose.
  • Actions really run. Tools execute in the runtime; results are inspected before the agent answers. A micro agent that looks up an order answers from the record it fetched, not from a guess.

Keeping It Micro

  • One signature, one job. If the task description needs the word “then”, consider two agents or a flow.
  • Pass tools flat — functions: [lookupOrder, sendReply]. At this size every callable is obviously relevant, and flat inline tools are the most reliable shape for small models (grouped discovery earns its keep later, at catalog scale).
  • Small models are the point. Micro agents run well on cheap, fast models — see Performance for measured model guidance.

When To Graduate

Move up a tier when one of these appears:

SignalGo to
The tool list is growing past what fits comfortably in one promptStandard — namespaces, groups, discovery
A specialist should own part of the job (its own signature, tools, identity)Standard — child agents
An input field is getting bulky (logs, ledgers, transcripts)Long-horizon — context fields
Runs are getting long, or the same material is queried repeatedlyLong-horizon — policies, maps, memory

Runnable code: agent examples and the agent() API.

Docs