Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Investigate a codebase question using an isolated subagent. Use when you need to read many files without bloating the main context.
.claude/skills/majiayu000-spawn-investigator/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✓→✗ | ▼ Worse | 26% | 0% |
| case-06 | ✓→✗ | ▼ Worse | -28% | 0% |
| case-07 | ✓→✗ | ▼ Worse | -67% | 0% |
| case-04 | ✓→✓ | = Same ✓ | 64% | 0% |
| case-16 | ✓→✓ | = Same ✓ | 2% | 0% |
Launch an isolated investigation subagent to answer a codebase question without polluting the main conversation context.
Reading many files to answer a question fills up the main context window. By spawning an Explore-type subagent, the investigation happens in a separate context. Only the concise answer comes back, keeping the main context clean for actual work.
/spawn-investigator <question> — User-invoked investigationParse $ARGUMENTS into a clear, specific investigation question. If the question is vague, refine it:
Use the Task tool with these parameters:
subagent_type: Explore
description: "Investigate: [short summary]"
prompt: |
Investigate this question about the codebase:
**Question:** [the question]
Instructions:
- Search broadly first (Glob for file patterns, Grep for keywords)
- Read the most relevant files
- Trace the code path if needed (follow imports, function calls)
- Return a CONCISE answer (max 500 words) with:
1. Direct answer to the question
2. Key file paths discovered
3. Any important caveats or gotchas
- Do NOT include full file contents in your responseWhen the subagent returns, present the findings to the user:
## Investigation Results: [question summary]
[Subagent's concise answer]
### Key Files
- `path/to/file1` — [what it does]
- `path/to/file2` — [what it does]If the answer is insufficient, offer to spawn a follow-up investigator with a more specific question.
Claude should consider auto-invoking this skill when:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-11 | fail→fail | 9,709 | 44,651 | +360% | 1 | 1 | 0% | 213 | 993 | +366% | 0 | 0 | — |
case-12 | fail→fail | 11,334 | 18,717 | +65% | 1 | 1 | 0% | 297 | 982 | +231% | 0 | 0 | — |
case-01 | fail→fail | 16,142 | 24,162 | +50% | 1 | 1 | 0% | 1,860 | 1,000 | -46% | 0 | 0 | — |
case-02 | fail→fail | 16,752 | 14,440 | -14% | 1 | 1 | 0% | 445 | 1,002 | +125% | 0 | 0 | — |
case-03 | fail→fail | 3,392 | 19,233 | +467% | 1 | 1 | 0% | 323 | 944 | +192% | 0 | 0 | — |
case-04 | pass→pass | 16,026 | 23,567 | +47% | 1 | 1 | 0% | 3,118 | 5,120 | +64% | 0 | 0 | — |
case-05 | pass→fail | 9,866 | 16,951 | +72% | 1 | 1 | 0% | 774 | 972 | +26% | 0 | 0 | — |
case-06 | pass→fail | 6,499 | 15,097 | +132% | 1 | 1 | 0% | 1,135 | 815 | -28% | 0 | 0 | — |
case-07 | pass→fail | 20,981 | 19,055 | -9% | 1 | 1 | 0% | 3,361 | 1,105 | -67% | 0 | 0 | — |
case-08 | fail→fail | 17,756 | 14,772 | -17% | 1 | 1 | 0% | 2,329 | 958 | -59% | 0 | 0 | — |
case-09 | fail→fail | 16,370 | 14,210 | -13% | 1 | 1 | 0% | 1,176 | 892 | -24% | 0 | 0 | — |
case-10 | fail→fail | 16,637 | 20,624 | +24% | 1 | 1 | 0% | 1,683 | 948 | -44% | 0 | 0 | — |
case-13 | fail→fail | 26,025 | 20,643 | -21% | 1 | 1 | 0% | 3,159 | 952 | -70% | 0 | 0 | — |
case-14 | fail→fail | 8,993 | 19,706 | +119% | 1 | 1 | 0% | 278 | 970 | +249% | 0 | 0 | — |
case-15 | fail→fail | 27,703 | 18,893 | -32% | 1 | 1 | 0% | 1,990 | 931 | -53% | 0 | 0 | — |
case-16 | pass→pass | 14,449 | 2,948 | -80% | 1 | 1 | 0% | 966 | 984 | +2% | 0 | 0 | — |
case-17 | pass→pass | 10,386 | 6,856 | -34% | 1 | 1 | 0% | 1,493 | 1,401 | -6% | 0 | 0 | — |
case-18 | fail→fail | 22,405 | 16,215 | -28% | 1 | 1 | 0% | 2,274 | 1,059 | -53% | 0 | 0 | — |
case-19 | fail→fail | 12,091 | 47,508 | +293% | 1 | 1 | 0% | 1,902 | 1,167 | -39% | 0 | 0 | — |
case-20 | fail→fail | 22,698 | 13,297 | -41% | 1 | 1 | 0% | 3,356 | 1,056 | -69% | 0 | 0 | — |
case-21 | fail→fail | 23,602 | 19,958 | -15% | 1 | 1 | 0% | 2,695 | 947 | -65% | 0 | 0 | — |
case-22 | fail→fail | 19,600 | 14,507 | -26% | 1 | 1 | 0% | 1,563 | 1,033 | -34% | 0 | 0 | — |
case-23 | fail→fail | 22,156 | 9,524 | -57% | 1 | 1 | 0% | 2,636 | 991 | -62% | 0 | 0 | — |
case-24 | fail→fail | 14,212 | 17,779 | +25% | 1 | 1 | 0% | 1,473 | 860 | -42% | 0 | 0 | — |
case-25 | fail→fail | 15,113 | 12,596 | -17% | 1 | 1 | 0% | 262 | 859 | +228% | 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. 25 cases were attempted, and 4 counted toward the lift figure. The other 21 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. A headline lift is not published for this run.
Other measured skills in the registry, with their headline benchmark lift.