Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Proactive recovery using plan mode and subagents. After 1-2 failed attempts, STOP trying variations. Enter plan mode and launch parallel Explore/Plan agents to find idiomatic solutions instead of spinning wheels.
.claude/skills/majiayu000-strategic-investigation/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 0% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 87% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 273% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 1% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -17% | 0% |
CORE PRINCIPLE: After 1-2 failed attempts, STOP trying variations. Enter plan mode and investigate properly using parallel subagents.
Use this skill when:
Warning signs you should have used this earlier:
When you recognize you're stuck:
"I've tried [X approaches] and they're not working. Instead of continuing to guess, I'm going to step back and investigate this systematically using parallel subagents. This should find the idiomatic solution."
Request plan mode to structure your investigation. Plan mode signals you're stepping back from implementation to investigate properly.
Spawn 2-4 focused Explore agents in parallel to gather information:
Subagent Design Principles:
Common Explore Agent Types:
Explore Agent 1: Pattern Search
- Search labs/packages/patterns/ for similar patterns
- Search patterns/examples/ for curated examples
- Look for patterns that solve similar problems
- Return: file paths, relevant code snippets, patterns used
Explore Agent 2: Documentation Deep-Dive
- Read relevant sections of ~/Code/labs/docs/common/
- Focus on DEBUGGING.md, PATTERNS.md, CELLS_AND_REACTIVITY.md
- Look for exact guidance on this situation
- Return: relevant doc sections, warnings, recommended approaches
Explore Agent 3: Community Knowledge
- Search community-docs/superstitions/ for similar issues
- Check if others have hit this problem
- Return: relevant superstitions, known workarounds
Explore Agent 4: Framework Conventions
- Study how working patterns structure similar code
- What's the "frameworky" way to do this?
- Return: conventions observed, idioms to followAfter agents complete:
Now implement the chosen approach:
If the solution doesn't work after investigation:
After 2 plan-mode investigation cycles without resolution:
Failed attempts: Changed dependencies, added .get() calls, restructured code
Investigation plan (launch in parallel):
Explore Agent 1: Pattern Search
"Search labs/packages/patterns/ for computed() usage patterns.
Find 3+ examples of computed cells that update correctly.
Note what they do differently from my failing code."
Explore Agent 2: Documentation
"Read ~/Code/labs/docs/common/CELLS_AND_REACTIVITY.md thoroughly.
Focus on computed() section and any gotchas.
Look for 'don't do X' warnings."
Explore Agent 3: Community Knowledge
"Search community-docs/superstitions/ for 'computed', 'reactive', 'update'.
Check if this is a known edge case with solutions."
Explore Agent 4: Framework Behavior
"Study how other patterns structure reactive computations.
What cell access patterns do working examples use?"Likely synthesis:
The goal is not just to find SOMETHING that works, but to find the IDIOMATIC solution:
If investigation reveals the "right" way is significantly different from your approach, that's valuable - even if your hack might have worked.
| Skill | Relationship | |-------|-------------| | community-docs | Quick check FIRST. If doesn't help after 1-2 attempts → strategic-investigation | | recovery-strategies | Strategic investigation is Step 2.5 in that flow | | issue-filing | Use AFTER investigation if problem is a framework limitation | | pattern-dev | Contains development practices. This skill is for when you're stuck |
Investigation time is NOT wasted time.
A 5-minute proper investigation often saves 30 minutes of trial-and-error on wrong approaches. Don't skip plan mode thinking "this should be simple" - that's often when you need it most.
When in doubt, investigate. It's better to investigate a simple problem than to spin wheels on a complex one.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-10 | pass→pass | 17,101 | 7,328 | -57% | 1 | 1 | 0% | 1,751 | 2,821 | +61% | 0 | 0 | — |
case-09 | pass→pass | 13,571 | 11,961 | -12% | 1 | 1 | 0% | 2,068 | 2,647 | +28% | 0 | 0 | — |
case-01 | fail→pass | 25,472 | 14,460 | -43% | 1 | 1 | 0% | 2,951 | 2,951 | 0% | 0 | 0 | — |
case-02 | fail→pass | 24,364 | 22,548 | -7% | 1 | 1 | 0% | 2,941 | 5,499 | +87% | 0 | 0 | — |
case-03 | fail→pass | 6,129 | 16,750 | +173% | 1 | 1 | 0% | 803 | 2,995 | +273% | 0 | 0 | — |
case-04 | fail→fail | 33,548 | 18,199 | -46% | 1 | 1 | 0% | 2,380 | 3,183 | +34% | 0 | 0 | — |
case-05 | pass→pass | 10,264 | 10,428 | +2% | 1 | 1 | 0% | 849 | 2,506 | +195% | 0 | 0 | — |
case-06 | pass→pass | 11,050 | 5,555 | -50% | 1 | 1 | 0% | 1,027 | 2,504 | +144% | 0 | 0 | — |
case-07 | pass→pass | 18,783 | 9,858 | -48% | 1 | 1 | 0% | 2,151 | 2,354 | +9% | 0 | 0 | — |
case-08 | pass→pass | 15,098 | 11,089 | -27% | 1 | 1 | 0% | 2,457 | 2,617 | +7% | 0 | 0 | — |
case-11 | fail→pass | 18,986 | 3,860 | -80% | 1 | 1 | 0% | 2,194 | 2,215 | +1% | 0 | 0 | — |
case-12 | fail→pass | 14,930 | 7,876 | -47% | 1 | 1 | 0% | 2,471 | 2,048 | -17% | 0 | 0 | — |
case-13 | fail→pass | 26,792 | 1,989 | -93% | 1 | 1 | 0% | 2,416 | 1,960 | -19% | 0 | 0 | — |
case-14 | pass→pass | 12,721 | 8,846 | -30% | 1 | 1 | 0% | 1,157 | 2,202 | +90% | 0 | 0 | — |
case-15 | pass→pass | 15,028 | 5,241 | -65% | 1 | 1 | 0% | 1,279 | 2,417 | +89% | 0 | 0 | — |
case-16 | pass→pass | 39,704 | 9,766 | -75% | 1 | 1 | 0% | 1,592 | 2,335 | +47% | 0 | 0 | — |
case-17 | pass→pass | 23,839 | 9,376 | -61% | 1 | 1 | 0% | 2,036 | 2,343 | +15% | 0 | 0 | — |
case-18 | pass→pass | 17,360 | 5,824 | -66% | 1 | 1 | 0% | 1,750 | 2,541 | +45% | 0 | 0 | — |
case-19 | fail→fail | 16,436 | 11,095 | -32% | 1 | 1 | 0% | 1,288 | 2,335 | +81% | 0 | 0 | — |
case-20 | pass→pass | 18,971 | 11,546 | -39% | 1 | 1 | 0% | 1,770 | 2,335 | +32% | 0 | 0 | — |
case-21 | pass→pass | 9,385 | 9,813 | +5% | 1 | 1 | 0% | 1,526 | 2,425 | +59% | 0 | 0 | — |
case-22 | fail→fail | 11,487 | 10,573 | -8% | 1 | 1 | 0% | 1,541 | 2,385 | +55% | 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 +27 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.