Because the parent sees only the returned summary (context isolation), everything it needs back has to be agreed before the work starts. The course names four characteristics of an effective subagent: a specific description, structured output, obstacle reporting, and limited tool access.1 The last one has its own page: Least-privilege tool access.
The description does two jobs
The name and description of every available subagent are placed in the main agent’s system prompt, and the parent uses them to decide which subagent to launch and when.1 The description also shapes the task prompt the parent writes: a vague reviewer description can produce “find the current changes”, while a stronger one can require the parent to name the exact files. Requiring citable sources in a research subagent’s description carries that requirement into the delegated prompt.1
To make automatic use more likely, the course suggests including “proactively” and concrete trigger examples in the description. If delegation does not trigger as expected, improve the description rather than the system prompt.1
Skills are selected the same way: Claude matches the request against each skill’s description, so a description needs the words users actually say.2 See Agent skill.
A defined output is the biggest improvement
The course calls a defined output format the most important improvement: it acts as a checklist and gives a natural stopping point. Without it, a research subagent may not know when it has learned enough.1 A code review output could be: summary, critical issues, major issues, minor issues, recommendations, approval status, obstacles encountered.1
The same idea for whole tasks
The GH-600 course applies the contract to agent tasks on GitHub: each task needs inputs (issue context, repository scope, explicit constraints), outputs (a pull request with a structured plan, a bounded changeset, and evidence links), and success criteria that reflect the real intent, such as “vulnerability resolved” rather than just “tests passed”. Criteria can be enforced as a required status check.3 See Agents propose, people and policy accept.
Obstacles are part of the result
If a subagent finds a workaround or quirk and leaves it out, the main thread must rediscover it. The output format should ask for:1
- setup issues and environment quirks;
- workarounds discovered during the task;
- commands that needed special flags or configuration;
- dependencies or imports that caused problems.
Related
- Source: GitHub Certified: Agentic AI Developer
- Subagent configuration file: where the description and system prompt live.
- Source: Introduction to Claude Code Subagents
- Source: Introduction to Claude Code Agent Skills