Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use fresh agents for focused subtasks to avoid context pollution
.claude/skills/dicklesworthstone-subagent-driven-development/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 12% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -19% | 0% |
| case-06 | ✗→✓ | ▲ Improved | -21% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -5% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 1% | 0% |
FRESH AGENT = FRESH CONTEXT
Use subagents for focused work without baggage| Situation | Why Subagent Helps | |-----------|-------------------| | Complex subtask | Focused context, clear scope | | Going in circles | Fresh perspective breaks loops | | Parallel work | Multiple things at once | | Context pollution | Main agent too cluttered | | Specialized task | Pass only relevant info | | Research/exploration | Keep main context clean |
The Handoff:
1. DEFINE clear scope - what exactly to do
2. PROVIDE needed context - files, constraints, requirements
3. SPECIFY deliverable - what to return
4. SET success criteria - how to know it's doneTemplate:
Task: [Specific action to take]
Context:
- Working in [repo/directory]
- Relevant files: [list]
- Constraints: [any limits]
Deliverable:
- [Exact output expected]
Success when:
- [Criteria 1]
- [Criteria 2]❌ Vague handoffs
Bad: "Look into this bug"
Good: "Find root cause of TypeError in user.ts:45"❌ Context dumping
Bad: Passing entire conversation history
Good: Passing only relevant files and specific question❌ No success criteria
Bad: "Make it better"
Good: "Refactor to reduce duplication, all tests must pass"❌ Too broad scope
Bad: "Implement the whole feature"
Good: "Implement the validation logic for email field"✅ Research:
✅ Focused fixes:
✅ Generation:
✅ Analysis:
When subagent returns:
1. READ the full response
2. VERIFY against success criteria
3. INTEGRATE results into main context
4. CONTINUE from where you left offBefore launching subagent:
scope-boundary-checker → Is scope clear and bounded?assumption-checker → Are handoff assumptions valid?After receiving results:
fact-checker → Verify subagent claimspre-action-verifier → Before using resultsMain agent responsibilities:
Subagent responsibilities:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-03 | pass→pass | 9,484 | 6,667 | -30% | 1 | 1 | 0% | 1,564 | 1,702 | +9% | 0 | 0 | — |
case-01 | fail→pass | 11,381 | 14,007 | +23% | 1 | 1 | 0% | 1,608 | 1,804 | +12% | 0 | 0 | — |
case-02 | pass→pass | 11,499 | 7,637 | -34% | 1 | 1 | 0% | 1,873 | 1,987 | +6% | 0 | 0 | — |
case-04 | pass→pass | 13,593 | 9,174 | -33% | 1 | 1 | 0% | 1,860 | 2,195 | +18% | 0 | 0 | — |
case-05 | fail→pass | 13,778 | 7,030 | -49% | 1 | 1 | 0% | 2,099 | 1,691 | -19% | 0 | 0 | — |
case-06 | fail→pass | 12,885 | 6,637 | -48% | 1 | 1 | 0% | 2,131 | 1,673 | -21% | 0 | 0 | — |
case-07 | pass→pass | 7,337 | 3,841 | -48% | 1 | 1 | 0% | 1,129 | 1,363 | +21% | 0 | 0 | — |
case-08 | fail→pass | 12,546 | 8,673 | -31% | 1 | 1 | 0% | 1,870 | 1,768 | -5% | 0 | 0 | — |
case-09 | pass→pass | 14,733 | 9,615 | -35% | 1 | 1 | 0% | 2,036 | 2,063 | +1% | 0 | 0 | — |
case-10 | pass→pass | 8,943 | 4,506 | -50% | 1 | 1 | 0% | 1,398 | 1,534 | +10% | 0 | 0 | — |
case-11 | pass→pass | 15,953 | 9,371 | -41% | 1 | 1 | 0% | 2,280 | 2,322 | +2% | 0 | 0 | — |
case-12 | pass→pass | 16,243 | 8,882 | -45% | 1 | 1 | 0% | 2,324 | 2,101 | -10% | 0 | 0 | — |
case-13 | pass→pass | 12,261 | 4,199 | -66% | 1 | 1 | 0% | 1,966 | 1,540 | -22% | 0 | 0 | — |
case-14 | fail→pass | 10,916 | 7,202 | -34% | 1 | 1 | 0% | 1,898 | 1,921 | +1% | 0 | 0 | — |
case-15 | pass→pass | 15,196 | 9,638 | -37% | 1 | 1 | 0% | 2,492 | 2,475 | -1% | 0 | 0 | — |
case-16 | fail→pass | 10,190 | 6,271 | -38% | 1 | 1 | 0% | 1,447 | 1,754 | +21% | 0 | 0 | — |
case-17 | pass→pass | 9,129 | 5,339 | -42% | 1 | 1 | 0% | 1,629 | 1,592 | -2% | 0 | 0 | — |
case-18 | pass→pass | 14,872 | 8,737 | -41% | 1 | 1 | 0% | 1,999 | 2,139 | +7% | 0 | 0 | — |
case-19 | fail→pass | 11,123 | 8,881 | -20% | 1 | 1 | 0% | 1,719 | 2,162 | +26% | 0 | 0 | — |
case-20 | pass→pass | 16,931 | 16,908 | -0% | 1 | 1 | 0% | 2,495 | 3,259 | +31% | 0 | 0 | — |
case-21 | pass→pass | 13,760 | 14,039 | +2% | 1 | 1 | 0% | 2,288 | 3,108 | +36% | 0 | 0 | — |
case-22 | pass→pass | 11,858 | 11,581 | -2% | 1 | 1 | 0% | 1,897 | 2,771 | +46% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +32 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.