| name | exa-reliability-patterns |
| description | Implement Exa reliability patterns: query fallback chains, circuit breakers, and graceful degradation.
Use when building fault-tolerant Exa integrations, implementing fallback strategies,
or adding resilience to production search services.
Trigger with phrases like "exa reliability", "exa circuit breaker",
"exa fallback", "exa resilience", "exa graceful degradation".
|
| allowed-tools | Read, Write, Edit |
| version | 1.11.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","exa","reliability","resilience"] |
| compatibility | Designed for Claude Code, also compatible with Codex and OpenClaw |
Exa Reliability Patterns
Overview
Production reliability patterns for Exa neural search. Exa-specific failure modes include: empty result sets (query too narrow), content retrieval failures (sites block crawling), variable latency by search type, and 429 rate limits at 10 QPS default.
Instructions
Step 1: Query Fallback Chain
import Exa from "exa-js";
const exa = new Exa(process.env.EXA_API_KEY);
async function resilientSearch(
query: string,
minResults = 3,
opts: any = {}
) {
let results = await exa.searchAndContents(query, {
type: "neural",
numResults: 10,
...opts,
});
if (results.results.length >= minResults) return results;
results = await exa.searchAndContents(query, {
type: "auto",
numResults: 10,
...opts,
});
if (results.results.length >= minResults) return results;
results = exa.(query, {
: ,
: ,
...opts,
});
(results.. >= minResults) results;
broadOpts = { ...opts };
broadOpts.;
broadOpts.;
broadOpts.;
broadOpts.;
exa.(query, {
: ,
: ,
...broadOpts,
});
}