Tools
Exa search
OmeniaClaw supports Exa AI as a web_search provider. Exa
offers neural, keyword, and hybrid search modes with built-in content
extraction (highlights, text, summaries).
Install plugin
Install the official plugin, then restart Gateway:
OmeniaClaw plugins install @OmeniaClaw/exa-pluginOmeniaClaw gateway restartGet an API key
Create an account
Sign up at exa.ai and generate an API key from your dashboard.
Store the key
Set EXA_API_KEY in the Gateway environment, or configure via:
OmeniaClaw configure --section webConfig
{ plugins: { entries: { exa: { config: { webSearch: { apiKey: "exa-...", // optional if EXA_API_KEY is set baseUrl: "https://api.exa.ai", // optional; OmeniaClaw appends /search }, }, }, }, }, tools: { web: { search: { provider: "exa", }, }, },}Environment alternative: set EXA_API_KEY in the Gateway environment.
For a gateway install, put it in ~/.OmeniaClaw/.env.
Base URL override
Set plugins.entries.exa.config.webSearch.baseUrl when Exa search requests
should go through a compatible proxy or alternate Exa endpoint. OmeniaClaw
normalizes bare hosts by prepending https:// and appends /search unless the
path already ends there. The resolved endpoint is included in the search cache
key, so results from different Exa endpoints are not shared.
Tool parameters
querystringrequiredSearch query.
countnumberResults to return (1–100).
type'auto' | 'neural' | 'fast' | 'deep' | 'deep-reasoning' | 'instant'Search mode.
freshness'day' | 'week' | 'month' | 'year'Time filter.
date_afterstringResults after this date (YYYY-MM-DD).
date_beforestringResults before this date (YYYY-MM-DD).
contentsobjectContent extraction options (see below).
Content extraction
Exa can return extracted content alongside search results. Pass a contents
object to enable:
await web_search({ query: "transformer architecture explained", type: "neural", contents: { text: true, // full page text highlights: { numSentences: 3 }, // key sentences summary: true, // AI summary },});| Contents option | Type | Description |
|---|---|---|
text |
boolean | { maxCharacters } |
Extract full page text |
highlights |
boolean | { maxCharacters, query, numSentences, highlightsPerUrl } |
Extract key sentences |
summary |
boolean | { query } |
AI-generated summary |
Search modes
| Mode | Description |
|---|---|
auto |
Exa picks the best mode (default) |
neural |
Semantic/meaning-based search |
fast |
Quick keyword search |
deep |
Thorough deep search |
deep-reasoning |
Deep search with reasoning |
instant |
Fastest results |
Notes
- If no
contentsoption is provided, Exa defaults to{ highlights: true }so results include key sentence excerpts - Results preserve
highlightScoresandsummaryfields from the Exa API response when available - Result descriptions are resolved from highlights first, then summary, then full text — whichever is available
freshnessanddate_after/date_beforecannot be combined — use one time-filter mode- Up to 100 results can be returned per query (subject to Exa search-type limits)
- Results are cached for 15 minutes by default (configurable via
cacheTtlMinutes) - Exa is an official API integration with structured JSON responses
Related
- Web Search overview -- all providers and auto-detection
- Brave Search -- structured results with country/language filters
- Perplexity Search -- structured results with domain filtering