Leader → Developer Handoff Contract
Native mechanism
Claude Code's Subagents feature already gives a dispatched agent "its own context window with a custom system prompt, specific tool access, and independent permissions" — but the platform doesn't require or shape what goes in the dispatch prompt itself. This skill is the discipline layer on top: the 6 elements a prompt must contain regardless of how well-configured the subagent's own definition is.
When to invoke
- About to dispatch a sub-agent (Developer / Designer / Code Reviewer / drafting agent).
- Writing the dispatch prompt.
- User asks "what should the sub-agent dispatch include / which elements am I missing".
The 6 required elements
Every dispatch prompt must contain:
1. Task scope with verifiable target
- One sentence stating the goal.
- Explicitly name the output file / section / behaviour.
- Include a mechanically checkable success / failure condition.
Good: "Draft §5 Logger for docs/foundations.md; output format: complete markdown section; scope: adopt os.Logger defaults, with subsystem / category conventions and privacy default"
Bad: "Write something about logger"
2. Files / docs the sub-agent should read
- List file names + sections.
- Don't say "read design.md"; say "read
design.md §How.2, foundations.md §3-§4".
- Add grep targets / line ranges when useful to save the sub-agent's exploration tokens.
3. Explicit skill list to invoke
- List the skill names the sub-agent should invoke (with plugin prefix).
- Don't assume the sub-agent will guess.
- Example: "invoke
apple-dev-skills:swift6-concurrency, apple-dev-skills:swiftpm-modularization, apple-dev-skills:swift-testing-baseline; review-style dispatches also list collaboration-skills:subagent-review-cycles".
4. Expected return format
Pick one explicitly (or custom):
- Code diff (patch / full-file rewrite)
- Markdown section (drop into a specified file's §)
- Decision text (structured ACCEPT/REJECT/DEFER list)
- Finding list (BLOCKER / MAJOR / MINOR)
Bad: "Report results"
Good: "Return the complete §5 content as markdown, ready for the Leader to paste into foundations.md; no chit-chat"
5. Verification criteria
- The conditions under which it counts as done.
- For Developer: which tests must be green, which invariants must hold.
- For Code Reviewer: review dimensions; CLI is forbidden for probing API/runtime behavior (build, run, simctl, trial-and-error); read-only search (grep, rg, git log, git show) is allowed; allowed tools (WebSearch).
- For drafting agent: section structure, required subsections, required decisions.
6. Impl notes (non-trivial tasks)
Required when the task touches ≥2 files or adds new behavior (see ai-collaboration-mode's
M/L sizing); optional for a trivial one-file fix. Tell the sub-agent to open its running
impl-notes file at the start of the task, not when it first hits trouble — early assumptions
and scope calls are exactly what's invisible by the time a report is written.
agent-impl-notes-log owns the file's format and routing; this contract is what makes it start
on time, since that skill's own trigger fires on mid-task ambiguity.
Template
You are a <role> dispatched by the Leader.
## Task scope
<verifiable target, output file/section, success condition>
## Inputs (read these in order)
1. <path> §<section>
2. <path>
<...>
## Skills to invoke
- <skill-name-1>
- <skill-name-2>
<...>
## Return format
<one of: code diff / markdown section / decision text / finding list>
<exact shape>
## Verification criteria
- <criterion 1>
- <criterion 2>
<...>
## Impl notes (non-trivial tasks)
Required if this task touches ≥2 files or adds new behavior: open `meetings/{date}_{topic}.impl-notes.md` at the start of the task (`collaboration-skills:agent-impl-notes-log`).
## Constraints (optional)
- DO NOT <forbidden action>
- DO use <required tool / approach>
Examples drawn from real dispatches
Developer drafting design.md §How.3 (Game Center)
- Scope: draft
design.md §How.3 GC integration section, covering leaderboard / achievement / protocol / auth fallback / friends scope
- Inputs:
design.md §What.GC, foundations.md §1-§4
- Skills:
apple-dev-skills:swift6-concurrency, apple-dev-skills:swiftpm-modularization, apple-dev-skills:swift-testing-baseline
- Return: complete markdown section, ready to merge into design.md
- Verification: includes 3 leaderboards + 10 achievements, protocol covers friends scope, auth failure has a fallback path
Code Reviewer round 1 over §How 1–7
- Scope: review
design.md §How.1 – §How.7 for technical correctness
- Inputs: full design.md, foundations.md
- Skills:
collaboration-skills:subagent-review-cycles
- Return: BLOCKER / MAJOR / MINOR finding list; each item with section location + suggestion
- Verification: covers 4 dimensions (correctness / consistency / completeness / efficiency); cites Apple docs instead of CLI experimentation
- Constraints: CLI is forbidden for probing API/runtime behavior (build, run, simctl, trial-and-error); read-only search (grep, rg, git log, git show) is allowed; DO use WebSearch
Anti-patterns
- Omitting verification criteria: the sub-agent self-judges "done", often misaligned with the Leader's expectation.
- Listing "related skills" instead of "skills to invoke": the sub-agent may not actually trigger them.
- Return format written as "free-form": every round looks different and integration cost balloons.
- Scope too large (multiple sections / files in one round): review and revision cost explodes; split fine.
Verification checklist (for Leader before sending dispatch)
- All 6 elements present (scope / inputs / skills / return format / verification / impl-notes).
- Scope corresponds to "one verifiable target", not "a basket of work".
- Skill names spelled correctly, with plugin prefix.
- Return format is one of the four explicit categories.
- Verification conditions are mechanically checkable.
- Impl-notes slot included when the task touches ≥2 files or adds new behavior.
Related skills
subagent-review-cycles: handoff is the starting point of each review-cycle round.
spec-phase-orchestration: every sub-agent dispatch in the spec phase follows this contract.
session-to-meeting-log: dispatch + returned-result summary lands in the meeting log.
1---2name: leader-developer-handoff-contract3description: Shape the prompt a Leader sends when dispatching a sub-agent (Developer, Designer, Code Reviewer, drafting agent) so the result comes back verifiable and integrable. Use when about to call the Agent tool, writing or reviewing a dispatch prompt, deciding what a sub-agent must read or which skills it must invoke, or when asked "what should the sub-agent prompt include" / "which element am I missing". Does NOT own how many review rounds to run or how findings are adjudicated (subagent-review-cycles), nor the impl-notes file format (agent-impl-notes-log).4---56# Leader → Developer Handoff Contract78## Native mechanism910Claude Code's [Subagents](https://code.claude.com/docs/en/subagents) feature already gives a dispatched agent "its own context window with a custom system prompt, specific tool access, and independent permissions" — but the platform doesn't require or shape what goes in the dispatch *prompt* itself. This skill is the discipline layer on top: the 6 elements a prompt must contain regardless of how well-configured the subagent's own definition is.1112## When to invoke1314- About to dispatch a sub-agent (Developer / Designer / Code Reviewer / drafting agent).15- Writing the dispatch prompt.16- User asks "what should the sub-agent dispatch include / which elements am I missing".1718## The 6 required elements1920Every dispatch prompt must contain:2122### 1. Task scope with verifiable target2324- One sentence stating the goal.25- Explicitly name **the output file / section / behaviour**.26- Include a mechanically checkable success / failure condition.2728**Good**: "Draft §5 Logger for `docs/foundations.md`; output format: complete markdown section; scope: adopt `os.Logger` defaults, with subsystem / category conventions and privacy default"2930**Bad**: "Write something about logger"3132### 2. Files / docs the sub-agent should read3334- List file names + sections.35- Don't say "read design.md"; say "read `design.md §How.2`, `foundations.md §3-§4`".36- Add grep targets / line ranges when useful to save the sub-agent's exploration tokens.3738### 3. Explicit skill list to invoke3940- List the skill names the sub-agent should invoke (with plugin prefix).41- Don't assume the sub-agent will guess.42- Example: "invoke `apple-dev-skills:swift6-concurrency`, `apple-dev-skills:swiftpm-modularization`, `apple-dev-skills:swift-testing-baseline`; review-style dispatches also list `collaboration-skills:subagent-review-cycles`".4344### 4. Expected return format4546Pick one explicitly (or custom):47- **Code diff** (patch / full-file rewrite)48- **Markdown section** (drop into a specified file's §)49- **Decision text** (structured ACCEPT/REJECT/DEFER list)50- **Finding list** (BLOCKER / MAJOR / MINOR)5152**Bad**: "Report results"53**Good**: "Return the complete §5 content as markdown, ready for the Leader to paste into `foundations.md`; no chit-chat"5455### 5. Verification criteria5657- The conditions under which it counts as done.58- For Developer: which tests must be green, which invariants must hold.59- For Code Reviewer: review dimensions; CLI is forbidden for probing API/runtime behavior (build, run, simctl, trial-and-error); read-only search (grep, rg, git log, git show) is allowed; allowed tools (WebSearch).60- For drafting agent: section structure, required subsections, required decisions.6162### 6. Impl notes (non-trivial tasks)6364Required when the task touches ≥2 files or adds new behavior (see `ai-collaboration-mode`'s65M/L sizing); optional for a trivial one-file fix. Tell the sub-agent to open its running66impl-notes file at the *start* of the task, not when it first hits trouble — early assumptions67and scope calls are exactly what's invisible by the time a report is written.68`agent-impl-notes-log` owns the file's format and routing; this contract is what makes it start69on time, since that skill's own trigger fires on mid-task ambiguity.7071## Template7273```74You are a <role> dispatched by the Leader.7576## Task scope77<verifiable target, output file/section, success condition>7879## Inputs (read these in order)801. <path> §<section>812. <path>82<...>8384## Skills to invoke85- <skill-name-1>86- <skill-name-2>87<...>8889## Return format90<one of: code diff / markdown section / decision text / finding list>91<exact shape>9293## Verification criteria94- <criterion 1>95- <criterion 2>96<...>9798## Impl notes (non-trivial tasks)99Required if this task touches ≥2 files or adds new behavior: open `meetings/{date}_{topic}.impl-notes.md` at the start of the task (`collaboration-skills:agent-impl-notes-log`).100101## Constraints (optional)102- DO NOT <forbidden action>103- DO use <required tool / approach>104```105106## Examples drawn from real dispatches107108### Developer drafting design.md §How.3 (Game Center)109110- **Scope**: draft `design.md §How.3` GC integration section, covering leaderboard / achievement / protocol / auth fallback / friends scope111- **Inputs**: `design.md §What.GC`, `foundations.md §1-§4`112- **Skills**: `apple-dev-skills:swift6-concurrency`, `apple-dev-skills:swiftpm-modularization`, `apple-dev-skills:swift-testing-baseline`113- **Return**: complete markdown section, ready to merge into design.md114- **Verification**: includes 3 leaderboards + 10 achievements, protocol covers friends scope, auth failure has a fallback path115116### Code Reviewer round 1 over §How 1–7117118- **Scope**: review `design.md §How.1 – §How.7` for technical correctness119- **Inputs**: full design.md, foundations.md120- **Skills**: `collaboration-skills:subagent-review-cycles`121- **Return**: BLOCKER / MAJOR / MINOR finding list; each item with section location + suggestion122- **Verification**: covers 4 dimensions (correctness / consistency / completeness / efficiency); cites Apple docs instead of CLI experimentation123- **Constraints**: CLI is forbidden for probing API/runtime behavior (build, run, simctl, trial-and-error); read-only search (grep, rg, git log, git show) is allowed; DO use WebSearch124125## Anti-patterns126127- **Omitting verification criteria**: the sub-agent self-judges "done", often misaligned with the Leader's expectation.128- **Listing "related skills" instead of "skills to invoke"**: the sub-agent may not actually trigger them.129- **Return format written as "free-form"**: every round looks different and integration cost balloons.130- **Scope too large (multiple sections / files in one round)**: review and revision cost explodes; split fine.131132## Verification checklist (for Leader before sending dispatch)133134- All 6 elements present (scope / inputs / skills / return format / verification / impl-notes).135- Scope corresponds to "one verifiable target", not "a basket of work".136- Skill names spelled correctly, with plugin prefix.137- Return format is one of the four explicit categories.138- Verification conditions are mechanically checkable.139- Impl-notes slot included when the task touches ≥2 files or adds new behavior.140141## Related skills142143- `subagent-review-cycles`: handoff is the starting point of each review-cycle round.144- `spec-phase-orchestration`: every sub-agent dispatch in the spec phase follows this contract.145- `session-to-meeting-log`: dispatch + returned-result summary lands in the meeting log.