So there are seven ways to set up a Claude agent, and they're really seven shapes for the same thing: once you know which shape a job is, you know how to build it. Anthropic's own engineering team wrote these patterns up in Building effective agents, and all seven can be built in Claude Code (Anthropic's coding tool that runs on your computer) with a few text files.
So this guide builds a small version of each one on made-up leads: an app connection, a skill, a chain, agents working side by side, a router, a boss that splits the job, and a checker. Nothing gets sent to anybody; every reply stays a draft. And number seven, the checker, is the one I'd build first, because I don't trust anything that grades its own homework.
Start here: paste this into Claude Code
Not technical? Start here. Install Claude Code (the first step under “Get set up” below), make a folder, start Claude in it, and paste the prompt. It walks you through all seven, one at a time, on made-up leads, and stops for your yes before anything costs money, reaches a real customer or deletes something.
mkdir -p ~/agent-shop/leads ~/agent-shop/drafts
cd ~/agent-shop
claudeHi Claude. Please be my patient setup helper. I run a small business and I don't code: one step at a time, tell me exactly what to type, explain why, and wait for me to say "done" before you move on.
My goal: set up the seven types of Claude agents in this folder, so I understand each one and have a small working version of it, using made-up leads first. Follow this guide; its manual-way sections are the source of truth for every command and file:
https://receiptsgroup.com/guides/seven-claude-agent-types
Steps:
1. Check Claude Code is working (claude --version) and that we're in my agents folder.
2. Make three made-up lead messages in leads/ (one new job, one vendor pitch, one existing customer), so we test on nothing real.
3. Type 2, the skills agent: write .claude/skills/lead-reply/SKILL.md from the guide's box. Show it to me before you save it.
4. Write the three helper files (subagents) from the guide (lead-router, reply-writer, reply-checker) into .claude/agents/. Show each one first. Tell me if I need to restart you so you can see them.
5. Type 5, the router: run the lead-router on the three made-up leads and show me the labels.
6. Type 3, sequential: router, then reply-writer, on the new-job lead only. Drafts go in drafts/.
7. Type 7, the evaluator: reply-checker grades that draft; if it fails, the reply-writer fixes it. Two rounds at most, then show me.
8. Type 4, parallel, and type 6, the orchestrator: show me the plan first, then do it.
9. Type 1, the tool agent: help me connect one app I already use through MCP. Ask me which app first. Before you add it, tell me what it will be able to see and do, and wait for my yes.
House rules for this setup:
- If you use a technical word (MCP, subagent, skill, frontmatter, terminal), explain it in plain English the first time.
- Ask me before you assume anything about my business, my accounts or my setup.
- Nothing gets sent, posted or emailed to anyone. Every reply stays a draft in drafts/.
- Stop and check with me before anything that costs money or spends credits.
- Stop and check with me before anything that sends, posts or reaches a real customer, and before you use a real customer's message.
- Stop and check with me before you delete or overwrite anything.
- Never print, copy or ask me for keys, tokens or passwords.How the pieces connect
This is the manual way: every file and every command. Claude follows it too. Here's how the seven fit together on one job, an incoming lead:
- 1A message comes inA made-up lead in leads/ (later, an app connected through MCP: type 1)→ the message to sort
- 2The routerlead-router subagent (type 5)→ NEW JOB, CUSTOMER, VENDOR or SPAM
- 3The writerreply-writer subagent, following the lead-reply skill (types 2 and 3: the chain)→ a draft in drafts/
- 4The checkerreply-checker subagent, read-only (type 7)→ PASS, or the fixes back to the writer
- 5YouYou read the draft→ you decide what gets sent
Got ten leads instead of one? Claude splits them across several writers at once (type 4, parallel) or plays the boss and decides the split itself (type 6, the orchestrator).
| Type | What it does | How you build it in Claude Code | Anthropic's name for it |
|---|---|---|---|
| 1. Tool agent | Takes an action in another app | An MCP server: claude mcp add | The augmented LLM (tools) |
| 2. Skills agent | Learns a process once and reuses it | A SKILL.md file in .claude/skills/ | Agent Skills |
| 3. Sequential | A chain: one hands off to the next | “Use X, then use Y” across subagents | Prompt chaining |
| 4. Parallel | Side by side, then stitched together | “...in parallel using separate subagents” | Parallelization (sectioning) |
| 5. Router | Reads what comes in, sends it the right way | A sorting subagent in .claude/agents/ | Routing |
| 6. Orchestrator | The boss that splits the job up | Your main Claude session handing work to subagents | Orchestrator-workers |
| 7. Evaluator | One works, another checks it | A read-only checker subagent and a fix loop | Evaluator-optimizer |
Words you'll see
- Agent: Claude working through a job on its own, step by step, using tools, instead of answering one question.
- MCP (Model Context Protocol): an open standard for plugging AI apps into your other apps. Its own site calls it a USB-C port for AI.
- Skill: a folder with a
SKILL.mdfile: written instructions Claude loads when a job matches the description. - Subagent: a helper Claude hands a task to. It works in its own fresh memory with its own instructions and tools, and only its summary comes back.
- Frontmatter: the few lines between
---marks at the top of a skill or subagent file: its name, what it's for, which tools it gets. - Terminal: the text window where you type commands (Terminal on a Mac, PowerShell on Windows).
Get set up
Get a paid Claude plan
Claude Code needs Pro, Max, Ultra, Team, Enterprise or a Console account. The free plan doesn't include it. Pro is $20 a month billed monthly (checked 2026-10-31).
Install Claude Code
Open a terminal and run the line for your computer. When it finishes, open a new terminal window and check it.
curl -fsSL https://claude.ai/install.sh | bash # open a NEW terminal window, then: claude --versionirm https://claude.ai/install.ps1 | iexMake the folder and log in
The first time you run
claude, it opens your browser to log in to your Claude account.mkdir -p ~/agent-shop/leads ~/agent-shop/drafts ~/agent-shop/.claude/agents ~/agent-shop/.claude/skills/lead-reply cd ~/agent-shop claudePermissionsLogging in links Claude Code to your Claude plan, so its work counts against that plan's usage.Make three made-up leads
Test on fake ones first, so nothing real gets touched. Save each as its own file in
leads/.cat > leads/lead-1.txt <<'EOF' Hi, I'm Dana. We had hail last week and I think a few shingles are gone on the back side. Can someone come take a look? Mornings are best. EOF cat > leads/lead-2.txt <<'EOF' Hey there! We help roofing companies get more exclusive leads. Want a quick call this week? EOF cat > leads/lead-3.txt <<'EOF' You guys put our roof on in the spring and there's a drip by the chimney when it rains hard. Who do I talk to? EOF
1. The tool agent: connect an app with MCP
A tool agent is just Claude with a plug into your other apps, so it can look things up or take an action there. The plug is an MCP server. Lots of apps publish one; you add it with one command and log in.
Add the app's MCP server
The pattern is
claude mcp add --transport http <a name> <the app's MCP address>. Get the address from the app's own help pages. Here's the real example from Claude Code's docs, connecting Notion:claude mcp add --transport http notion https://mcp.notion.com/mcpPermissionsBy default this is saved only for you, in this folder (Claude Code calls it local scope). Add--scope userto use it in every folder, or--scope projectto share it with your team through a.mcp.jsonfile.Log in to the app
Start
claude, type/mcp, pick the server and follow the steps in your browser. Adding a server doesn't check your login, so this is where you find out it works.PermissionsThe app's own login page asks you to approve what Claude can see and do there. Read that list. Only connect servers you trust: Claude Code's docs warn that servers that fetch outside content can expose you to prompt injection (instructions hidden in that content).Try it, read-only first
Using the notion connection, list the names of my five most recent pages. Read only: don't create, edit or delete anything.See, check or remove your connections
Run
logoutbeforeremoveif you want the login cancelled on the app's side too.claude mcp list claude mcp get notion claude mcp logout notion claude mcp remove notion
2. The skills agent: teach a process once
A skill is your process, written down once, in a file Claude reads whenever the job matches. Claude only keeps the skill's name and description in mind until it's needed, so you can have a lot of them. The description has to say what it does and when to use it, because that's what Claude matches your request against.
Write the skill
Save this as
.claude/skills/lead-reply/SKILL.md. The---block has to be the very first line of the file. Change the steps to how your office really answers a lead.--- name: lead-reply description: How we reply to a new job lead (a quote, an inspection, a repair). Use whenever drafting a first reply to a new lead. --- # Replying to a new job lead 1. Thank them by first name if they gave one. If not, just say hi. 2. Repeat back what they need in one sentence, in their words. 3. Ask one question that gets the visit booked: "Does Tuesday or Wednesday morning work for someone to come look?" 4. Sign off with the company name and the office phone line, written as <office phone>. Never: - quote a price or a timeline - say "guaranteed" - add anything they didn't tell us Keep it under 90 words. Write it like the person at the front desk talks.Use it
Type
/lead-replyto run it yourself, or just ask for a reply to a lead and Claude loads it from the description./lead-reply Draft a reply to leads/lead-1.txt. Show it to me; don't save or send anything.
The helpers: three subagent files
Types 3 through 7 all run on subagents. A subagent is a text file in .claude/agents/ with a name, a description of when to use it, the tools it's allowed, and its instructions. Make these three once and you'll use them for the router, the chain, the parallel run, the boss and the checker. You can also just ask Claude to write a subagent for you; it writes the same kind of file.
The router
Read-only: it can look at the leads and nothing else.
--- name: lead-router description: Reads one incoming lead or message and labels it so it goes the right way. Use for every new message in leads/ before anything else touches it. tools: Read, Glob model: inherit --- You sort incoming messages for a home-service business. You never reply to anyone and never change any file. For each message you're given, pick exactly one label: - NEW JOB: someone wants a quote, an inspection or work done - CUSTOMER: an existing customer with a question, a warranty issue or a complaint - VENDOR: someone selling us something (leads, ads, software, SEO) - SPAM: junk, or nothing we can act on Answer in this shape, one block per message: File: <file name> Label: <one label> Why: <one sentence, quoting the words that decided it> Next: <NEW JOB -> reply-writer, CUSTOMER -> flag for the office, VENDOR -> ignore, SPAM -> ignore> If you can't tell, say UNSURE and why. Don't guess.The writer
It can write, but only drafts.
--- name: reply-writer description: Drafts a reply to one NEW JOB lead, following the lead-reply skill. Use after the lead-router labels a message NEW JOB. tools: Read, Write, Glob model: inherit --- You draft replies for a home-service business. You only write drafts into the drafts/ folder. You never send anything. Follow the lead-reply skill in .claude/skills/lead-reply/SKILL.md exactly. Save each draft as drafts/<lead file name>.md and end your answer with the file you wrote.The checker
No Write or Edit tool, so it can't fix its own findings or anybody's draft. It only grades.
--- name: reply-checker description: Grades a drafted reply against the checklist and returns PASS or a list of fixes. Use after the reply-writer writes a draft, before anyone sees it. tools: Read, Glob, Grep model: inherit --- You check drafted replies. You can't edit anything, on purpose: you only grade. Read the draft and the lead it answers, then check every line of this list: 1. It answers what the person actually asked. 2. It asks for one next step (a time for the visit, or a call back), not five. 3. It promises nothing we can't back up: no prices, no dates, no "guaranteed". 4. It's under 90 words and sounds like a person at the office, not a brochure. 5. It has no made-up details (names, addresses, numbers) that aren't in the lead. Answer PASS, or FAIL with each failed line by number and the exact fix.Restart Claude if you just made the folder
Quit Claude Code and run
claudeagain in the same folder. A running session doesn't notice a brand-newagentsfolder; after that, changes to the files show up within a few seconds.
First test: the router on made-up leads (free on your plan)
This is type 5, and it's the right first test: it only reads, it writes nothing, and it uses the made-up leads. It runs on your Claude plan's normal usage, nothing extra.
Use the lead-router subagent on every file in leads/ and show me its labels. Don't write or send anything.Good: lead-1 comes back NEW JOB, lead-2 VENDOR, lead-3 CUSTOMER, each with a one-line reason quoting the message. In the transcript you'll see a row starting lead-router(, which is Claude handing it off. Bad: Claude answers without the subagent (restart, see above) or a label is off (make the label definitions in the file sharper; Anthropic's note is that routing works when the sorting is accurate).
3. Sequential agents: a chain
A chain is one agent finishing and handing its result to the next. Claude Code's docs put it simply: ask Claude to use subagents in sequence, and it passes what matters from one to the next. Anthropic's tip is to put a check between the steps, so a bad first step doesn't roll downhill.
Use the lead-router subagent on leads/lead-1.txt. Only if it says NEW JOB, use the reply-writer subagent to draft the reply into drafts/. Show me the label and the draft. Don't send anything.4. Parallel agents: side by side, stitched together
When the pieces don't depend on each other, run them at the same time and put the results together at the end. Each subagent works in its own memory, and Claude combines what they send back.
In parallel using separate subagents, run the lead-router on each file in leads/, one subagent per file. Then stitch the results into one table in drafts/summary.md: file, label, reason, next step. Don't send anything.5. The router: send each thing the right way
You built it in the first test. The router is where I'd start on inbound leads, because sorting is the boring part that eats the morning: what's a real job, what's a customer who needs a call back, and what's somebody trying to sell you leads. The router only labels. What happens next (a draft, a flag for the office) is a separate agent or a person.
6. The orchestrator: the boss that splits the job
The difference from parallel: with parallel, you decide the pieces. With an orchestrator, the boss looks at the job and decides the pieces itself, because you can't know them up front. In Claude Code the boss is your main Claude session; the workers are your subagents. Make it show you the plan first.
You're the boss on this one. Look at everything in leads/ and work out what each lead needs. Show me your plan first: which subagent gets which lead and in what order. After I say yes, hand the work out, then give me one summary of what got done and what needs a person. Drafts only, nothing sent.Subagents can hand work to subagents of their own, up to three layers below your main chat by default. For a small business that's more than you'll need.
7. The evaluator: one works, another checks it
This is the one I'd build first. One agent does the work and a different one grades it against a checklist, and the fixes go back to the first one. Anthropic says it works best when the grading rules are clear, so write your checklist like you'd write one for a new hire. The checker you made has no edit tools, so it can't quietly fix its own homework either.
Use the reply-writer subagent to draft a reply to leads/lead-1.txt. Then use the reply-checker subagent to grade the draft. If it fails, send the checker's fixes back to the reply-writer and check again. Stop after two rounds and show me the final draft and the checker's last answer. Don't send anything.Good: a PASS, or a FAIL with numbered fixes and then a better draft. Bad: it passes everything. Make the checklist stricter and more specific (word counts, banned words, the one question it must ask).
What it costs
| What | Plan | Price, list |
|---|---|---|
| Claude | Free | $0, but no Claude Code |
| Claude | Pro | $20 a month billed monthly, or $17 a month billed yearly ($200 up front) |
| Claude | Max | $100 a month |
| Claude | Ultra | $200 a month |
| MCP | Open-source standard | Free; the app you connect has its own plan |
| Skills and subagents | Part of Claude Code | No extra charge; they use your plan's usage |
Subagent work counts toward the same usage limits as your main chat, so parallel runs and long fix loops use them up faster. That's why the loop above stops after two rounds.
When it breaks
claude: command not found after installing
Claude can't find your new subagent
agents folder that didn't exist when it started.A subagent or skill file is ignored
--- block must be the first line of the file. A subagent needs a name (no colons) and a description. Unknown fields are skipped without an error, so check the spelling.Claude doesn't use your skill on its own
/lead-reply.The MCP server is listed but nothing works
/mcp inside Claude and log in. claude mcp add saves the server without checking your login.A warning that an MCP answer is too long
MAX_MCP_OUTPUT_TOKENS setting.Concurrent subagent limit reached
Your usage runs out fast
The router sends things the wrong way
lead-router.md and add an example of each. Keep the UNSURE option so it asks instead of guessing.The checker passes everything
That's all seven
A plug, a process, a chain, a crew, a sorter, a boss and a checker, and the checker goes in first, because nothing should grade its own homework.
Checked on Oct 31, 2026 against
Every claim about a third-party tool in this guide (plans, prices, menu paths, commands, limits) was checked against these official pages on Oct 31, 2026. These screens change often: if something looks different, trust the page over this guide.
- Anthropic: Building effective agentsThe patterns: prompt chaining, routing, parallelization, orchestrator-workers, evaluator-optimizer; “the simplest solution possible”.
- Model Context Protocol: What is MCP?MCP as an open-source standard for connecting AI apps to other systems (the USB-C comparison).
- Claude Code: Connect Claude Code to tools via MCP
claude mcp add --transport http, scopes,/mcplogin, list/get/remove/logout, the trust warning, output limits. - Claude Code: SkillsWhere skills live,
SKILL.mdfrontmatter,/skill-name, loading by description. - Claude Platform: Agent Skills overviewHow skills load in stages, name and description rules, use skills only from trusted sources.
- Claude Code: SubagentsSubagent files in
.claude/agents/, frontmatter, chaining, parallel runs, the 20-at-once and three-layer defaults, restart note, shared usage limits. - Claude Code: Advanced setupInstall commands,
claude --version, which plans include Claude Code. - Claude: Plans and pricingFree $0 (no Claude Code), Pro $20 monthly or $17 yearly, Max $100, Ultra $200 (checked 2026-10-31).
