Help us improve
Share bugs, ideas, or general feedback.
From exa
Exa.ai search API integration for neural and keyword web search with content retrieval. Use when implementing web search features, integrating Exa SDK (exa_py, exa-js), or retrieving web content. Triggers on: Exa, exa_py, exa-js, neural search, web search API, search_and_contents, searchAndContents, find_similar, findSimilar, domain filtering, date filtering, text extraction, page summaries, highlights, search auto mode, fast search, search categories, livecrawl, excluding domains, include text, exclude text, EXA_API_KEY.
npx claudepluginhub ejirocodes/agent-skills --plugin exaHow this skill is triggered — by the user, by Claude, or both
Slash command
/exa:exa-searchThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
| Topic | When to Use | Reference |
Executes Exa neural search with content extraction, date/domain filters for RAG pipelines, semantic queries, and web search features.
Performs AI-optimized web searches via Tavily API, returning clean snippets for current information and news.
Provides web search with full page content extraction using Firecrawl CLI. Returns search results as JSON with optional markdown scraping. Use for research, finding articles, or discovering sources.
Share bugs, ideas, or general feedback.
| Topic | When to Use | Reference |
|---|---|---|
| Search Modes | Choosing between auto, neural, and keyword search | search-modes.md |
| Filters | Domain, date, text, and category filtering | filters.md |
| Contents | Text extraction, highlights, summaries, livecrawl | contents.md |
| SDK Patterns | Python (exa_py) and TypeScript (exa-js) usage | sdk-patterns.md |
from exa_py import Exa
exa = Exa(api_key="your-api-key") # or set EXA_API_KEY env var
results = exa.search_and_contents(
"latest developments in quantum computing",
type="auto",
num_results=10,
text=True,
highlights=True
)
for result in results.results:
print(f"{result.title}: {result.url}")
print(result.text[:500])
import Exa from "exa-js";
const exa = new Exa(process.env.EXA_API_KEY);
const results = await exa.searchAndContents(
"latest developments in quantum computing",
{
type: "auto",
numResults: 10,
text: true,
highlights: true,
}
);
results.results.forEach((result) => {
console.log(`${result.title}: ${result.url}`);
});
results = exa.search_and_contents(
"AI startup funding rounds",
type="neural",
num_results=10,
include_domains=["techcrunch.com", "venturebeat.com"],
start_published_date="2024-01-01",
text={"max_characters": 2000},
summary=True
)
similar = exa.find_similar_and_contents(
"https://example.com/interesting-article",
num_results=10,
exclude_source_domain=True,
text=True
)
| Mode | When to Use | Notes |
|---|---|---|
auto | Default for most queries | Exa optimizes between neural/keyword automatically |
neural | Natural language, conceptual queries | Best for "what is...", "how to...", topic exploration |
keyword | Exact matches, technical terms, names | Best for specific product names, error codes, proper nouns |
keyword for conceptual queries - Neural search understands intent better; use auto or neural for natural language questionstext=True - Search returns URLs only by default; explicitly request content with text=Truehighlights - Use highlights=True for relevant snippets without downloading full page textEXA_API_KEY environment variable or pass explicitly to constructorsummary - For RAG applications, summary=True provides concise context without full page texttype="neural"; auto mode doesn't include them