AI Guides › Playbooks

The One-Job Crew Card for AI Agents

By Nigel Guy · 7 min read

The usual way to build "a team of AI employees" is to write one enormous brief, call it a manager, and hand it everything: find the leads, write the replies, check the facts, send the emails. It feels efficient because there is only one thing to set up. It fails quietly, because when the output is wrong you cannot tell which duty went wrong, and the same agent that wrote the draft is the one marking its own homework.

The rule: every agent gets exactly one job, one set of tools that job needs and nothing else, and one file it hands over to the next agent. If you cannot say the job in one sentence, it is two agents.

What this guide can and cannot confirm

This topic comes from a creator's description of four agents each running a business task daily. We could not verify that setup, its roles or its results, so none of it is repeated here. What follows is the durable, checkable part: how to split work across single-job agents using features documented by Anthropic for Claude Code, and a clearly hypothetical example to show the mechanism.

The mechanism: the Crew Card

A Crew Card is a one-page table with one row per agent. Fill in every cell before you build anything. A blank cell means the agent is not ready.

Cell What goes in it Why it exists
Job One sentence, one verb Stops scope creep
Reads The single file or folder it takes in Defines the handover in
Writes The single file it produces Defines the handover out
Tools Only what the job needs Limits damage if it misbehaves
Cannot The one thing it must never do Your guardrail, written down
Stop rule When it stops and says "blocked" Prevents guessing

Step 1: Write the job as one sentence

"Reads the day's enquiries and sorts them into a list" is a job. "Handles customer stuff" is a department. If your sentence needs "and", split it.

Step 2: Design the handover as a file, not a conversation

This is the part people skip. In Claude Code, a subagent starts fresh. According to the subagent documentation it receives its own system prompt, the task message from the main session, your CLAUDE.md files and a git status snapshot. It does not receive your conversation history. So an agent cannot "just know" what the previous agent concluded. Make each agent write its result to a named file, and make the next agent read that file. A handover you can open and read is also a handover you can audit.

Step 3: Give each agent only its tools

Subagents are Markdown files with YAML frontmatter, stored in .claude/agents/ for one project or ~/.claude/agents/ for all your projects. Only name and description are required. The tools field restricts what the agent can use, disallowedTools removes some, and model lets you pick a cheaper model for simple jobs. Anything it should not touch, leave off the list. A checking agent usually needs read-only tools; a drafting agent needs to write files but not send anything.

Step 4: Put the Cannot line inside the agent itself

Write it in the body of the agent file, in plain words, and repeat it in the stop rule. Here is a reusable brief for one agent. Fill in the square brackets.

You are the [AGENT_ROLE] for [BUSINESS_NAME], a [BUSINESS_TYPE] based in the UK.

Your single job: [ONE_SENTENCE_JOB]. You do nothing else.

Input: read only [INPUT_FILE_OR_FOLDER].
Output: write only [OUTPUT_FILE], using this format:
[OUTPUT_FORMAT, for example a table with columns Item, Status, Reason]

A good result looks like this: [DEFINITION_OF_DONE].

Rules:
1. Follow this order: [STEP_1], then [STEP_2], then [STEP_3].
2. Never [THE_ONE_THING_YOU_MUST_NOT_DO].
3. If the input file is missing, empty or unclear, write "BLOCKED: [reason]" to the output file and stop. Do not guess or invent missing details.
4. Mark anything you are not sure of as "UNSURE" rather than filling the gap.

Before you finish, check: did I only use the input file, did I produce every column in the format, and did I mark every uncertain item? Fix any gap, then stop.

Step 5: Add a checker that never writes

Make one agent whose only job is to read the drafter's output against the input and list problems. Give it read-only tools and no write access to the draft. An agent that can both write and approve is not a check.

Step 6: Choose how the crew runs

Claude Code gives you three documented options. Pick by where the work has to happen.

Option Runs on Needs your machine on? Minimum interval
Routines (cloud) Anthropic-managed cloud No 1 hour
Desktop scheduled task Your machine Yes 1 minute
/loop in a session Your machine, open session Yes 1 minute

Routines are in research preview at time of writing, so behaviour and limits may change. They are available on Pro, Max, Team and Enterprise plans; check the plan page for the current £ price at checkout. You create them at claude.ai/code/routines or with /schedule in the CLI. Two traps from the documentation: a routine runs autonomously with no permission prompts, and all your connected connectors are included by default, so remove every connector the routine does not need. Also, a green status only means the session started and exited without an infrastructure error, not that the task succeeded; open the run and read what happened.

Recurring /loop tasks expire after seven days, so do not treat them as permanent.

Worked example (hypothetical)

Imagine a small UK online shop selling printed tea towels, run by one person. The scenario is invented for illustration.

Agent Job Reads Writes Cannot
Sorter Sorts today's customer emails into order, delivery, complaint and other inbox/today.md work/sorted.md Reply to anyone
Drafter Writes a reply draft for each sorted item work/sorted.md work/drafts.md Promise refunds or dates
Checker Compares each draft with the original email and the shop's returns policy work/drafts.md, policy.md work/review.md Edit the drafts
Packer Turns approved drafts into a one-page morning summary for the owner work/review.md out/morning.md Send anything

The day runs in order. Early morning, a routine or scheduled task starts the Sorter. Each agent finishes and leaves its file. The Checker flags a draft that offers a refund the policy does not allow. The owner reads morning.md with a coffee and sends the replies by hand. Nobody has to watch, but nothing leaves the building unreviewed.

What's the trap?

The trap is the handover that looks fine. If the Sorter quietly mislabels a complaint as "other", every downstream agent works perfectly on the wrong input, and the Checker only compares drafts to the sorted list. Fix this by giving the Checker the original source too, and by having the Sorter count items in and items out. A mismatch in the count is your cheapest alarm.

A second trap is nesting. By default, subagents can spawn further subagents up to three layers deep. If you did not design that, remove the Agent tool from the agent's tools list so each one finishes its own work.

What to skip

Guardrails

Sources

All 751 AI guides · JulieMango plans from £17/mo