Install any skill in seconds. Free to start, no credit card required.
Get Started Free →General-purpose web search powered by Exa — the search_web / web_search analog. Use for any open-ended lookup, fact-finding, or 'search the web for X' when no specialized skill fits. Semantic (meaning-based) search over the whole index; runs a local script against the Exa API, no MCP server required.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-13 | ✗→✓ | ▲ Improved | -1% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 28% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 375% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -33% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -2% | 0% |
Plain semantic web search — the everyday search_web you reach for first. No category, no domain restriction: describe what you're looking for and Exa returns the closest pages. Calls the Exa REST API through a local script; no MCP server needed, only an EXA_API_KEY.
This skill is self-contained — its client (scripts/exa_client.py) is vendored, so you can install just this folder.
Get a key first at https://dashboard.exa.ai/api-keys, then:
bashexport EXA_API_KEY=your-key # add to ~/.zshrc / ~/.bashrc to make it permanent
Just this skill (Claude Code):
bashgit clone --depth 1 https://github.com/CodeAlive-AI/exa-skills /tmp/exa-skills cp -r /tmp/exa-skills/exa-web-search ~/.claude/skills/exa-web-search # user-level # …or .claude/skills/exa-web-search inside a project for project-level
That's the whole install — no other folders required. (Other agents: drop the exa-web-search folder wherever your agent discovers skills.)
Whole collection: clone the repo and point your agent at it — see the repo README.
bashpython scripts/web_search.py "<what you're looking for>" [-n N] [--text] [--json]
Examples:
bashpython scripts/web_search.py "how do vector databases handle deletes" -n 10 python scripts/web_search.py "best practices for prompt caching with LLMs" --text python scripts/web_search.py "self-hosted analytics alternatives to Google Analytics" -n 12
Output is a Markdown list (title · date · snippet) ending in sources_reviewed: N. --text includes page content, --json gives raw results, -h lists all flags.
Exa is semantic, not keyword. Describe the page you want to find, not the keywords. "detailed blog post about X written by a practitioner" beats "X". Run 2-3 different angles (not synonyms) in parallel for coverage.
Handy flags when you need them:
-c company|news|research paper|github|pdf|personal site|linkedin profile|financial report — focus a category without leaving this skill.--include-domains a.com,b.com / --start-published 2025-01-01 — scope by site or date.--text — pull page content when snippets aren't enough.bashpython scripts/exa_client.py contents <url> --text # read a page's full content python scripts/exa_client.py answer "<question>" # a direct, cited answer python scripts/exa_client.py similar <url> -n 10 # pages similar to a URL
For anything beyond 1-2 queries, dispatch a subagent per angle (use the Agent tool), have each run this script and return a compact list, then merge + deduplicate. Keeps raw search output out of your main context.
Part of the Exa Skills collection. For specialized research (companies, people, papers, code, finance, personal sites, X) install the matching skill from the repo.
Other measured skills in the registry, with their headline benchmark lift.