You are here: Building with agents › Deciding what to build
Summary#
Ask one question first: who is the agent's work for, and who has to agree to it? The answer is one of four shapes. Each has a page with the smallest working app for it, and each app is the one before it, grown.
| Shape | In one sentence | It takes |
|---|---|---|
| [[agent-guide-assistant|1. An assistant for one person]] | Somebody asks; the agent does a typed job with the app's own functions; the answer comes straight back. | [[agent-kit-llm|Llm]], [[agent-kit-agents|Agents]] |
| [[agent-guide-approvals|2. Work for people, with approvals]] | The agent does part of the job alone and proposes the rest; a person approves in their inbox. | + [[agent-kit-human-requests|HumanRequests]], [[agent-kit-work-queues|WorkQueues]] |
| [[agent-guide-process|3. Agents inside a business process]] | A process with fixed steps runs for days; some steps are an agent's, some a person's. | + a workflow, [[agent-kit-processes|Processes]] |
| [[agent-guide-team|4. A team with a coordinator]] | One agent is in charge and hands typed pieces to specialists, side by side. | nothing new |
Description#
How do I tell which shape I have?#
Three questions, in this order:
- Does anything the agent does need a person's yes first? No: shape 1. Yes: at least shape 2.
- Is the agent's work one step of something longer, with fixed steps and other people in it? Yes: shape 3.
- Is one job really several jobs, for different specialists, that can be done at the same time? Yes: add shape 4. It combines with any of the others: a process step can be a coordinator.
There is a fifth thing that is not a shape but a container: when nobody can write the steps down in advance, and somebody simply owns an outcome until it holds, use an [[agent-guide-glossary#assignment|assignment]]. See [[agent-guide-choosing#assignment-or-process]] and the delivery story.
What stays the same in every shape?#
- An agent is a class with an account of its own. See Writing an agent — a class with a purpose, skills and an account of its own (Agents kit).
- A job is a class too: typed in, typed out, checked. Its tools are your app's own functions. See A skill — a typed job an agent can be given, its check and its tools (Agents kit).
- When it works for a person it never does more than that person may. See [[agent-ask#for]].
- Every piece of work has a hard limit in money, a [[agent-guide-glossary#receipt|receipt]] and a [[agent-guide-glossary#record|record]]. See What an agent may spend — a hard limit on every piece of work (Agents kit) and The receipt and the record — what every piece of an agent's work leaves (Agents kit).
- It is tested without a model, for nothing. See Testing an agent without a model — Says, AgentScript and Trajectory (Agents.Testing kit).
What do I decide, whatever the shape?#
Six things, in this order. Each has a default, so the smallest app decides very little. The six decisions takes them one at a time.
- Who the agent acts as, and for whom.
- What it may do alone, what it proposes, what it never does.
- What it costs, and who pays.
- Who answers its questions, and where.
- Who supervises, who teaches, who audits.
- What is kept, and what is erased.
Can I grow from one shape to the next?#
Yes, and the four example pages do exactly that with one app, a small translation bureau:
| Page | What the bureau's app gains | Lines marked NEW |
|---|---|---|
| Shape 1 — an assistant for one person | an agent that prepares a commission | the whole app |
| Shape 2 — work done for people, with approvals | it proposes a fee; the manager approves in his inbox | three kits, one tool, one line on the agent |
| Shape 3 — agents inside a business process | preparing becomes a step of a process; a person takes over when it fails | a workflow, a process class |
| Shape 4 — a team of agents with a coordinator | a coordinator hands terms and pricing to two specialists | two agents, one Delegates |
Nothing written for an earlier shape is thrown away by a later one.
What to read next#
- Shape 1 — an assistant for one person — start here: the smallest app with an agent in it
- The six decisions — what you say about an agent, and what holds if you say nothing — the six decisions, each with its default and its line of code
- Choosing — I want X, so use Y, not Z, because — "I want X: use Y, not Z, because"
Go deeper#
- Agents (a class with a job, its own account, a budget and a record) — the reference pages, by subject
- Writing an agent — a class with a purpose, skills and an account of its own (Agents kit) — the agent class
- The map of the kits — which sits on which, and what each one is for — the map of the kits