Meta-skill: how to pass skills/context to Claude sub-agents that start with fresh context, with documented SDK gotchas.
94
94%
Does it follow best practices?
Impact
96%
1.50xAverage score across 3 eval scenarios
Passed
No known issues
{
"context": "Tests whether the agent knows plugin-specific gotchas: skills must be inlined explicitly in the Task tool prompt (no filesystem auto-discovery), the echo-skills validation handshake with specific JSON protocol, failing loudly on mismatch, and AskUserQuestion unavailability.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Skill inlined in prompt",
"description": "The Task tool prompt string contains the full skill content embedded inline — not a file path reference or assumption that the skill file will be auto-discovered from .claude/skills/",
"max_score": 18
},
{
"name": "No filesystem discovery reliance",
"description": "The code does NOT rely on .claude/skills/ filesystem discovery as the mechanism for passing skills to the sub-agent — skills are explicitly included in the prompt",
"max_score": 12
},
{
"name": "Echo preamble present",
"description": "The Task tool prompt includes a preamble that instructs the sub-agent to echo back its skill names as the very first action (echo-skills validation handshake)",
"max_score": 16
},
{
"name": "SKILLS_ECHO JSON format",
"description": "Sub-agent's first output uses the specific skills_echo protocol — a JSON line with key 'skills_echo' listing the received skills, e.g. {\"skills_echo\": [\"review_clause\", \"flag_risk\"]}",
"max_score": 12
},
{
"name": "Fail loudly on mismatch",
"description": "When skills are missing, the sub-agent signals 'MISSING SKILLS' and stops — by raising RuntimeError('MISSING SKILLS') or printing a 'MISSING SKILLS' message and aborting rather than continuing silently",
"max_score": 14
},
{
"name": "Orchestrator parses echo",
"description": "After the Task tool returns, the orchestrator code parses the skills_echo JSON from the sub-agent's first message and verifies the skill set",
"max_score": 12
},
{
"name": "Skills not implicitly assumed",
"description": "No comment or code assumes that skills are available to the sub-agent by any means other than explicit inline inclusion in the prompt",
"max_score": 8
},
{
"name": "No AskUserQuestion in sub-agent",
"description": "Sub-agent prompt does NOT instruct or allow the sub-agent to ask clarifying questions — AskUserQuestion is unavailable in sub-agents (GH #34592)",
"max_score": 8
}
]
}