Receber por email
← Voltar para o catálogo

exa-search

Search the web with Exa AI — neural search, content extraction, similar page discovery, quick research with citations, and async pro research with structured output. Covers all Exa endpoints (/search, /contents, /findSimilar, /answer, /research/v0/tasks). Triggers on web search, find pages, similar pages, research with citations, Exa, neural search.

35estrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add tdimino/claude-code-minoan

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/exa-search-tdimino/svg)](https://www.skillteca.com.br/skills/exa-search-tdimino)
#ai

Skills relacionadas

Ver todas de Pesquisa e Web →

Alerta por categoria

Receba novas skills de Pesquisa e Web toda segunda

1 email curto, só com as skills novas de Pesquisa e Web. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Exa Search Skill

5 specialized scripts for Exa AI search API—neural search, content extraction, similar pages, research with citations, and async pro research.

Prerequisite: EXA_API_KEY environment variable. Get key at https://dashboard.exa.ai

Token-Efficient Search

Inspired by Anthropic's dynamic filtering—always filter before reasoning. ~24% fewer tokens, ~11% better accuracy.

The Principle: Search Cheaply → Filter → Extract Selectively → Reason

DO:

# Step 1: Search with --no-text (titles/URLs only — cheapest)
python3 ~/.claude/skills/exa-search/scripts/exa_search.py "query" -n 20 --no-text

# Step 2: Evaluate titles, pick best 3-5 URLs

# Step 3: Extract only those URLs with bounded content
python3 ~/.claude/skills/exa-search/scripts/exa_contents.py URL1 URL2 --highlights --max-chars 3000

DON'T: Search with full text for 50 results, then reason over all of it.

Use API-Level Filters First (Free Filtering)

These reduce results at the API level before you ever see them:

  • --must-include "term" — results must contain this string
  • --must-exclude "term" — removes irrelevant results
  • --domains site1.com site2.com — restrict to authoritative sources
  • --category "research paper" — eliminate irrelevant content types
  • --after 2025-01-01 / --before — temporal filtering

Use Summaries Over Full Text

When you need the gist, not raw content:

# AI-distilled summaries — much smaller than full text
python3 ~/.claude/skills/exa-search/scripts/exa_search.py "query" --summary "Key findings" -n 5

Use Bounded Context for RAG

# Capped context string — prevents unbounded token usage
python3 ~/.claude/skills/exa-search/scripts/exa_search.py "query" --context --context-chars 5000

Post-Process with filter_web_results.py

Pipe Exa JSON output through the Firecrawl filter script for additional reduction:

python3 ~/.claude/skills/exa-search/scripts/exa_search.py "query" --json | \
  python3 ~/.claude/skills/firecrawl/scripts/filter_web_results.py \
  --fields "title,url,text" --max-chars 3000

Cost Tiers — Match to Task

| Type | Latency | Cost/1k | When | |------|---------|---------|------| | --instant | <150ms | Cheapest | Real-time lookups, autocomplete | | --fast | ~500ms | Low | Quick checks, confirmations | | auto (default) | -- | Medium | General search | | --deep | 4-12s | $12 | Comprehensive research | | --deep-reasoning | 12-50s | $15 | Maximum depth + synthesis |

Structured Deep Search (Exa Deep)

Deep and deep-reasoning searches support structured JSON output via outputSchema. The API returns parsed content in output.content with per-field grounding citations and confidence scores.

| Quick Example | Purpose | |---------------|---------| | ... --deep --text-output "Short answer" | Simple text answer | | ... --deep-reasoning --schema-preset company | Structured company research | | ... --deep --output-schema '{"type":"object","properties":{"answer":{"type":"string"}}}' | Custom schema | | ... --deep --schema-file ~/schemas/analysis.json | Schema from file |

Presets: company, paper-survey, competitor-analysis, person, news-digest

Output includes field-level grounding: per-field citations with [H]igh/[M]edium/[L]ow confidence.

Available Scripts

1. exa_search.py — Neural Web Search

python3 ~/.claude/skills/exa-search/scripts/exa_search.py "query" [options]

| Quick Example | Purpose | |---------------|---------| | ... exa_search.py "AI frameworks" | Basic search | | ... exa_search.py "transformers" --category "research paper" -n 20 | Academic papers | | ... exa_search.py "query" --deep --additional-queries "alt query" | Deep search | | ... exa_search.py "query" --domains docs.python.org | Domain-filtered | | ... exa_search.py "query" --after 2025-01-01 --category news | Recent news | | ... exa_search.py "query" --context --context-chars 10000 | RAG context | | ... exa_search.py "query" --instant -n 5 | Sub-150ms lookup | | ... exa_search.py "Top AI startups" --deep-reasoning --schema-preset company | Structured company research | | ... exa_search.py "Who is CEO of Stripe?" --deep --text-output "Short answer" | Quick factual answer |

Categories: company, research paper, news, pdf, github, personal site, people, financial report

2. exa_contents.py — URL Content Extraction

python3 ~/.claude/skills/exa-search/scripts/exa_contents.py URL [URL2...] [options]

| Quick Example | Purpose | |---------------|---------| | ... exa_contents.py "https://arxiv.org/abs/2307.06435" | Extract paper | | ... exa_contents.py URL --summary "Key methods" --highlights | Summarized extraction | | ... exa_contents.py URL --livecrawl always | Fresh content | | ... exa_contents.py URL --max-chars 5000 | Bounded extraction |

3. exa_similar.py — Find Similar Pages

python3 ~/.claude/skills/exa-search/scripts/exa_similar.py URL [options]

| Quick Example | Purpose | |---------------|---------| | ... exa_similar.py "https://stripe.com" --category company --exclude-source | Find competitors | | ... exa_similar.py "https://arxiv.org/abs/..." -n 15 | Related papers | | ... exa_similar.py URL --summary "How different?" | Comparison summaries |

4. exa_research.py — AI-Powered Research

python3 ~/.claude/skills/exa-search/scripts/exa_research.py "question" [options]

| Quick Example | Purpose | |---------------|---------| | ... exa_research.py "React vs Vue differences?" --sources | Research with citations | | ... exa_research.py "query" --stream | Real-time streaming | | ... exa_research.py "query" --domains docs.python.org | Authoritative sources | | ... exa_research.py "query" --markdown | Markdown with citations | | ... exa_research.py "query" --answer-only | Pipe-friendly output |

5. exa_research_async.py — Async Pro Research

python3 ~/.claude/skills/exa-search/scripts/exa_research_async.py "question" [options]

| Quick Example | Purpose | |---------------|---------| | ... exa_research_async.py "Compare AI frameworks" --pro --wait | Pro model | | ... exa_research_async.py "Quick overview" --fast | Fast model | | ... exa_research_async.py "query" --schema '{...}' | Structured output | | ... exa_research_async.py status r_abc123 | Check job | | ... exa_research_async.py list | List jobs |

Script Selection Guide

| Task | Best Script | |------|-------------| | Web search with filters | exa_search.py | | Research papers | exa_search.py --category "research paper" | | Company/startup info | exa_search.py --category company | | GitHub repos/code | exa_search.py --category github | | Extract known URL content | exa_contents.py | | Find competitors | exa_similar.py --exclude-source | | Quick answers with citations | exa_research.py --sources | | Complex structured research | exa_research_async.py --pro | | Real-time search | exa_search.py --instant | | RAG context building | exa_search.py --context | | Structured research with grounding | exa_search.py --deep-reasoning --schema-preset company | | Quick factual answer | exa_search.py --deep --text-output "Short answer" |

Exa vs Firecrawl vs Native Claude Tools

| Need | Best Tool | Why | |------|-----------|-----| | Semantic/neural search | Exa exa_search.py | AI-powered relevance | | Find research papers | Exa --category "research paper" | Academic index | | Quick research answer | Exa exa_research.py | Citations + synthesis | | Find similar pages | Exa exa_similar.py | Semantic similarity | | Single page → markdown | Firecrawl scrape --only-main-content | Cleanest output | | Crawl entire site | Firecrawl crawl --wait --progress | Link following | | Autonomous data finding | Firecrawl agent | No URLs needed | | Search + scrape combi

Compartilhar X LinkedIn