中文 · Русский · Português · Español · 日本語 · 한국어
CLI for Exa — neural web search, URL crawling, and AI deep research from the terminal.
exa-search-cli wraps the Exa API in three terminal commands. Exa is a search API built for AI applications — it searches by meaning, not keywords, which means it finds relevant pages even when the exact words are not present in the content.
exa-search searches the web. exa-crawl extracts clean readable text from any URL without HTML. exa-research submits a deep research task where Exa AI reads the web and synthesizes a structured answer.
Every command outputs clean --json for use in scripts, pipelines, and AI agent workflows.
- Developers who want web search access from shell scripts and automation pipelines
- AI agent developers who need structured, parseable web search output
- Researchers collecting, filtering, and crawling web content programmatically
- Anyone using Claude Code, Codex, Cursor, or Windsurf who wants to give their agent web access
- Neural (semantic) search — finds pages by meaning, not keyword matching
- Find pages similar to any URL
- Filter by content type:
news,tweet,github,research paper,pdf, and more - Filter by date range and domain
- Full page text extraction from any URL (no HTML)
- AI deep research tasks with synthesized answers
- Clean
--jsonoutput for every command
uv tool install exa-search-cliNo
uv? Runcurl -LsSf https://astral.sh/uv/install.sh | sh, or usepip install exa-search-cli.
Get your API key at exa.ai (free tier available):
export EXA_API_KEY=your-key-here
exa-search "how do transformers work" --category "research paper"# Neural search
exa-search "vision language models 2025" -n 10
# Find similar pages to a URL
exa-search --similar https://github.com/astral-sh/uv
# Filter by content type and date
exa-search "AI papers" --category "research paper" --start-date 2025-01-01
# Only specific domains
exa-search "documentation" --include-domain docs.python.org,docs.rs
# Exclude noisy domains
exa-search "tutorial" --exclude-domain medium.com,dev.to
# Crawl a page, get clean text
exa-crawl https://example.com -c 8000
# Deep research task
exa-research "current state of quantum error correction"
# JSON output for pipelines
exa-search "topic" --json | jq -r '.results[].url'All flags — exa-search:
| Flag | Default | Description |
|---|---|---|
-n / --num-results |
8 |
Number of results |
-t / --type |
auto |
auto · keyword · neural |
--text |
off | Fetch and show full page text |
--category |
— | news · tweet · github · research paper · pdf · company · personal site · linkedin profile · financial report |
--start-date |
— | Published on or after YYYY-MM-DD |
--end-date |
— | Published on or before YYYY-MM-DD |
--include-domain |
— | Comma-separated domains to include only |
--exclude-domain |
— | Comma-separated domains to exclude |
--similar |
— | Find pages similar to this URL |
--json |
off | Raw JSON output |
All flags — exa-crawl: -c / --max-chars (default 5000), --json
All flags — exa-research: -m / --model (exa-research or exa-research-pro), --json
exa-search-cli is stateless, read-only, and exits cleanly — designed to be called by AI coding assistants.
# Search and extract URLs (most common agent pattern)
exa-search "topic" --json | jq -r '.results[].url'
# Search → crawl first result
exa-search "topic" --json \
| jq -r '.results[0].url' \
| xargs exa-crawl -c 6000
# Find similar pages to a reference URL
exa-search --similar https://example.com --json
# Deep research, get synthesized answer
exa-research "topic" --jsonJSON schema for exa-search --json:
{
"results": [
{
"title": "...",
"url": "...",
"published_date": "2025-01-15T00:00:00.000Z",
"author": "...",
"highlights": ["excerpt..."],
"text": "full text if --text was passed"
}
]
}See AGENTS.md for full schemas, exit codes, and environment reference.
- Author: Nolan Vale
- Brand: Nolan Vale Tools
- Focus: search automation, CLI workflows, AI-agent tooling, developer productivity
- License: MIT
Built by Nolan Vale
Part of Nolan Vale Tools — practical open-source utilities for search, automation, AI agents, and developer workflows.