ExamGauge

A subagent knows only its brief

Whatever the brief leaves out, the subagent has to guess.

Once a design has settled on a coordinator and workers, the most important text in the system is no longer the coordinator’s prompt. It is the message the coordinator writes each time it hands work to a worker, because that message is almost everything the worker will ever know about the job.

What a subagent starts with

Claude Code’s documentation is precise about this. Each subagent “runs in its own context window with a custom system prompt, specific tool access, and independent permissions.” Its initial context is its own system prompt and the task message, “the delegation prompt Claude writes when it hands off the work.” The conversation that led to the handoff is not in it.

At the other end, the subagent “does that work in its own context and returns only the summary.” So two things cross the boundary, and both are yours to design.

Two ways a brief fails

It dictates steps. “Search for X, read the top three results, summarise them” fixes the route. When the first result turns out to be irrelevant, a procedural brief has no way to say so, and the subagent follows the steps anyway.

It is too thin. Anthropic hit this building its research system. With short instructions, “subagents misinterpreted the task or performed the exact same searches as other agents.” In one of their examples, a question about a semiconductor shortage sent one subagent to an earlier automotive chip crisis while two others duplicated each other’s work on current supply chains.

Their fix was specific:

Each subagent needs an objective, an output format, guidance on the tools and sources to use, and clear task boundaries.

Anthropic Engineering, How we built our multi-agent research system

Alongside that, they describe prompting by “instilling good heuristics rather than rigid rules”. The brief sets the goal and the limits, and the subagent chooses the route.

The same job, briefed twice

Procedural brief steps, no goal
  1. Search the web for “ServiceQ message ordering”.
  2. Read the top three results.
  3. Write a summary.
Goal-oriented brief the same job
Objective
Decide whether ServiceQ meets our billing pipeline’s ordering and data-residency requirements, and say where the evidence is thin.
Already known
At-least-once delivery is confirmed from the vendor’s documentation, retrieved 12 September. Do not re-check it.
Boundaries
Ordering guarantees and EU data residency only. Pricing is another agent’s task; client libraries are out of scope.
Sources
Prefer the vendor’s documentation and status history over blog posts.
Return
For each requirement: met, not met or unclear; one sentence of reasoning; source URL and date. Mark anything resting on a single source as unconfirmed.

The goal-oriented brief is longer and has more constraints, not fewer. The difference is what it constrains: the destination, the edges and the shape of the answer, instead of the route. Each part does a specific job.

Objective

What decision the work feeds. It is what lets the subagent recognise an irrelevant result and move on.

Already known

Findings carried across the boundary, with their source and date. Without them a worker re-derives facts, or contradicts them without knowing it has. Not on Anthropic’s list, but it follows directly from the subagent not seeing the conversation.

Boundaries

What this worker covers and what belongs to someone else. This is the part that stops two workers running the same searches.

Sources

Which tools and sources to prefer, so quality does not depend on what a search engine ranks first.

Return

One fixed shape for every worker. Five answers in the same format can be combined; five essays have to be re-read.

That is also how a coordinator keeps visibility and control without dictating steps. It decides the goal, the division of work and the form of the answers, and it can check every result against the same format.

Put the permanent parts in the definition

Some of a brief is the same every time: the sources to prefer, the return format, the tools a worker may use. In Claude Code those belong in the subagent’s definition, a Markdown file with frontmatter in .claude/agents/ for a project or ~/.claude/agents/ for all your projects. Only name and description are required.

# .claude/agents/vendor-researcher.md
---
name: vendor-researcher
description: Checks one requirement of a third-party service against
  vendor documentation and returns met / not met / unclear with sources.
  Use for vendor due diligence. Not for pricing or code changes.
tools: WebSearch, WebFetch
model: sonnet
---
You check requirements of third-party services.
Prefer the vendor's own documentation and status history over blog posts.
For each requirement return: met, not met or unclear; one sentence of
reasoning; source URL and date retrieved. Mark anything that rests on a
single source as unconfirmed. Do not re-check facts the brief marks as known.

Three fields do more than they appear to:

With the permanent parts in the definition, each per-task brief shrinks to what is actually specific: the objective, what is already known, and the boundaries. Subagents can also run side by side, “Research the authentication, database, and API modules in parallel using separate subagents”, and by default a subagent can spawn its own, “up to three layers below the main conversation.” Every one of those layers is another boundary that only a brief crosses.

Try it

Decide the fix before opening each one.

Two research subagents come back having run the same searches and cited the same sources.
Add boundaries to each brief

Say what each worker covers and what belongs to another, alongside the objective, sources and return format.

A subagent re-verifies a fact the coordinator established an hour ago, and reaches a different answer.
Carry findings into the brief

The subagent never saw the conversation. Pass what is known, with source and date, and say not to re-derive it.

The brief says to summarise the top three search results. The top result is a pricing page, and the subagent summarises it.
Brief the goal, not the steps

With an objective, the subagent can tell an irrelevant result from a relevant one and keep looking.

Five workers return five differently structured essays, and the coordinator cannot combine them reliably.
Fix the return format

One shape for every worker, ideally in the subagent definition so no brief can forget it.

A subagent meant only for research edits a configuration file. Its brief said “do not modify anything”.
Restrict its tools in the definitiontools: WebSearch, WebFetch

An instruction is a request. A tool list is a limit the subagent cannot exceed.

Claude keeps sending code reviews to the vendor-research subagent.
Sharpen the descriptiondescription:

The description is what Claude uses to decide delegation. Say what the subagent is for, and what it is not for.

The whole method

  1. Assume the subagent has seen nothing but its own prompt and your brief.
  2. Brief the destination: objective, what is already known, boundaries, sources, return format.
  3. Move what is true for every task into the subagent definition, and enforce tool limits there.
  4. Make every worker return the same shape, so the coordinator can combine and check the results.

Sources: Anthropic Engineering, How we built our multi-agent research system; the Claude Code documentation on subagents. The “already known” part of the brief is our addition. Checked September 2026.

For the practice half, ExamGauge has 1523 original practice items across four Claude certification exams, scored on the real 100–1000 scale against the 720 cut. The diagnostic is free and needs no card.

More on this