Comprehensive research and content extraction. USE WHEN research, investigate, extract wisdom, analyze content. For OSINT use OSINT skill.
Before executing, check for user customizations at:
~/.opencode/PAI/USER/SKILLCUSTOMIZATIONS/Research/
If this directory exists, load and apply any PREFERENCES.md, configurations, or resources found there. These override default behavior. If the directory does not exist, proceed with skill defaults.
Comprehensive research, analysis, and content extraction system.
READ: UrlVerificationProtocol.md - Every URL must be verified before delivery.
Research agents hallucinate URLs. A single broken link is a catastrophic failure.
When executing a workflow, do BOTH:
Send voice notification:
curl -s -X POST http://localhost:8888/notify \
-H "Content-Type: application/json" \
-d '{"message": "Running the WORKFLOWNAME workflow from the Research skill"}' \
> /dev/null 2>&1 &
Output text notification:
Running the **WorkflowName** workflow from the **Research** skill...
Route to the appropriate workflow based on the request.
CRITICAL: For due diligence, company/person background checks, or vetting -> INVOKE OSINT SKILL INSTEAD
Workflows/QuickResearch.mdWorkflows/StandardResearch.mdWorkflows/ExtensiveResearch.md
Trigger: "extensive research" - REQUIRES USER CONFIRMATIONResearchController.mdWorkflows/ExtractAlpha.mdWorkflows/Retrieve.mdfabric -y URL immediately) -> Workflows/YoutubeExtraction.mdWorkflows/WebScraping.mdWorkflows/ClaudeResearch.mdWorkflows/QuickResearch.mdWorkflows/InterviewResearch.mdWorkflows/AnalyzeAiTrends.mdWorkflows/Fabric.mdWorkflows/Enhance.mdWorkflows/ExtractKnowledge.mdREAD: QuickReference.md for detailed examples and mode comparison.
| Trigger | Mode | Agents | Cost | Speed |
|---|---|---|---|---|
| "research X" (default) | Quick | 1 Claude | $0 FREE | ~10-15s |
| "standard research" | Standard | 3 (Claude+Gemini+Perplexity) | ~$0.01 | ~15-30s |
| "extensive research" | Extensive | 4-15 (flexible) | ~$0.10-0.50 | ~60-120s |
Scratch (temporary work artifacts): ~/.opencode/MEMORY/WORK/{current_work}/scratch/
~/.opencode/MEMORY/STATE/current-work.json to get the work_dir valueHistory (permanent): ~/.opencode/History/research/YYYY-MM/YYYY-MM-DD_[topic]/
CRITICAL RULES to prevent Matryoshka Paradox (recursive agent spawning):
When a Research Agent spawns Sub-Agents:
QuickResearch (1 agent, FREE)StandardResearch (3 agents, ~$0.01)ExtensiveResearch in Sub-AgentsWhen implementing research workflows:
// Parent agent (you) decides tier
IF cost < $0.01 AND no_sub_agents_needed:
→ Use QuickResearch or StandardResearch
IF cost > $0.01 OR complex multi-angle:
→ Ask user for ExtensiveResearch approval
→ Only spawn Sub-Agents with Quick/Standard modes
→ Sub-Agents return results to parent
→ Parent synthesizes (no further spawning)
Violation: If you see a plan with 3+ levels of research agents, STOP and restructure.