Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Research a topic and grow your knowledge graph. Uses Exa deep researcher, web search, or basic search to investigate topics, files results with full provenance, and chains to processing pipeline. Triggers on "/learn", "/learn [topic]", "research this", "find out about".
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-11 | ✗→✓ | ▲ Improved | 21% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 108% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 84% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 59% | 0% |
| case-17 | ✗→✓ | ▲ Improved | 169% | 0% |
Topic: $ARGUMENTS
Parse immediately:
self/goals.md for highest-priority unexplored direction and propose it--deep/--light/--moderate: force that depth, strip flag from topicSteps:
START NOW. Reference below explains methodology.
ops/config.yaml — research tools, depth, pipeline chaining
ops/derivation-manifest.md — domain vocabulary (inbox folder, reduce skill name)From config.yaml (defaults if missing):
yamlresearch: primary: exa-deep-research # exa-deep-research | exa-web-search | web-search fallback: exa-web-search last_resort: web-search default_depth: moderate # light | moderate | deep pipeline: chaining: suggested # manual | suggested | automatic
From derivation-manifest.md (universal defaults if missing):
inbox/ (could be journal/, encounters/, etc.)/reduce (could be /surface, /break-down, etc.)Priority: explicit flag > config default > moderate
| Depth | Tool | Sources | Duration | Use When | |-------|------|---------|----------|----------| | light | WebSearch | 2-3 | ~5s | Checking a specific fact | | moderate | mcp__exa__web_search_exa | 5-8 | ~10-30s | Exploring a subtopic | | deep | mcp__exa__deep_researcher_start | Comprehensive | 15s-3min | Major research direction |
Output header:
Researching: [topic]
Depth: [depth]
Using: [tool name]Try tools in config priority order. If a tool fails (MCP unavailable, error, empty results), fall to next tier. If ALL tiers fail:
FAIL: Research failed — no research tools available
Tried:
1. [primary] — [error]
2. [fallback] — [error]
3. WebSearch — [error]
Try again later or manually add research to [inbox-folder]/exa-deep-research:
mcp__exa__deep_researcher_start
instructions: "Research comprehensively: [topic]. Focus on practical findings, key patterns, recent developments, and actionable insights."
model: "exa-research-fast" (moderate) | "exa-research" (deep)Poll with mcp__exa__deep_researcher_check until completed. Output during wait:
Research ID: [id]
Waiting for results...exa-web-search:
mcp__exa__web_search_exa query: "[topic]" numResults: 8web-search (last resort, also used for light depth):
WebSearch query: "[topic]"On completion: Research complete — [source count] sources analyzed
Filename: YYYY-MM-DD-[slugified-topic].md — lowercase, spaces to hyphens, no special chars.
Write to the domain inbox folder (from derivation-manifest, default inbox/). Create folder if missing.
Every field serves the provenance chain. The exa_prompt field is most critical — it captures the intellectual context that shaped the research.
yaml--- description: [1-2 sentence summary of key findings] source_type: exa-deep-research | exa-web-search | web-search exa_prompt: "[full query/instruction string sent to the research tool]" exa_research_id: "[deep researcher ID, omit for web search]" exa_model: "[exa-research-fast | exa-research, omit for web search]" exa_tool: "[mcp tool name, omit for deep researcher]" generated: [ISO 8601 timestamp — run: date -u +"%Y-%m-%dT%H:%M:%SZ"] domain: "[domain name from derivation-manifest]" topics: ["[[domain-hub-moc]]"] ---
Include only the fields relevant to the tool used:
source_type, exa_prompt, exa_research_id, exa_model, generated, domain, topicssource_type, exa_prompt, exa_tool, generated, domain, topicssource_type, exa_prompt, exa_tool, generated, domain, topicsFormat for downstream reduce extraction — findings as clear propositions, not raw dumps:
markdown# [Topic Title] ## Key Findings [Synthesized findings organized by theme, not by source. Each finding should be a clear proposition the reduce phase can extract as an atomic insight.] ## Sources [List of sources with titles and URLs] ## Research Directions [New questions, unexplored angles, follow-up topics. These feed goals.md.]
Read chaining mode from config (default: suggested).
Research complete
Filed to: [inbox-folder]/[filename]
Next: /[reduce-skill-name] [inbox-folder]/[filename]Append based on mode:
Ready for processing when you are.Queued for /[reduce-skill-name] -- processing will begin automatically.If self/goals.md exists AND the research uncovered meaningful new directions:
Skip silently if goals.md missing or no meaningful directions found. Do not add filler.
Clean output wrapping the full flow:
ars contexta
Researching: [topic]
Depth: [depth]
Using: [tool name]
[Research ID: abc-123]
Research complete -- [N] sources analyzed
Filed to: [inbox-folder]/[filename]
Next: /[reduce-skill-name] [inbox-folder]/[filename]
[chaining context]
[goals.md updated with N new research directions]| Error | Behavior | |-------|----------| | No topic, no goals.md | Ask: "What would you like to research?" | | Exa MCP unavailable | Fall through cascade to WebSearch | | All tools fail | Report failures with FAIL status, suggest manual inbox filing | | Deep researcher timeout (>5 min) | Report timeout, suggest --moderate | | Empty results | Report "No results found", suggest refining topic | | Config files missing | Use defaults silently | | Inbox folder missing | Create it before writing |
After /learn, the self-building loop continues:
| Phase | Skill | Purpose | |-------|-------|---------| | Extract insights | /reduce-name] | Mine research for atomic propositions | | Find connections | /reflect-name] | Link new insights to existing graph | | Update old notes | /reweave-name] | Backward pass on touched notes | | Quality check | /verify-name] | Description quality, schema, links |
/learn is the entry point. Each run feeds the graph, and the graph feeds the next direction through goals.md.
Other measured skills in the registry, with their headline benchmark lift.