exa-cli
A command-line interface for the Exa neural search API. Search the web, find similar content, fetch clean page text, and get AI-powered answers with citations.
Features
- 🔍 Neural search with domain filtering and autoprompt optimization
- 🔗 Find similar pages using semantic similarity
- 📄 Batch fetch content from multiple URLs in one call
- 🤖 AI answers with citations for quick research
Installation
pip install exa-cli
Setup
Get an API key from Exa and set it as an environment variable:
export EXA_API_KEY="your-api-key-here"
Or create a .env file in your project:
EXA_API_KEY=your-api-key-here
Usage
Search
Search the web using Exa's neural search:
# Basic search
exa search "best linux window managers"
# Limit results
exa search "rust async programming" --num 5
# Filter by domain
exa search "machine learning tutorials" --include github.com,arxiv.org
# Exclude domains
exa search "python frameworks" --exclude stackoverflow.com
# Disable autoprompt
exa search "exact query" --no-autoprompt
Find Similar Pages
Find pages similar to a given URL:
exa similar "https://swaywm.org" --num 5
Fetch Page Content
Get clean, readable text from one or more URLs:
# Single URL
exa contents "https://archlinux.org"
# Multiple URLs (batch fetch)
exa contents "https://archlinux.org" "https://swaywm.org" "https://github.com/linux-surface"
# Without full text
exa contents "https://example.com" --no-text
Get AI Answers
Ask a question and get an AI-generated answer with citations:
exa answer "what is the linux surface project"
# Include full text from citations
exa answer "how to install arch linux" --text
Command Reference
exa search <query> # Search the web
exa similar <url> # Find similar pages
exa contents <url> [<url>...] # Fetch page content (supports multiple URLs)
exa answer <question> # Get AI answer with citations
Common Options
--num, -n: Number of results (default: 10)--include: Comma-separated domains to include--exclude: Comma-separated domains to exclude--text/--no-text: Include/exclude full text content--autoprompt/--no-autoprompt: Enable/disable query optimization
Run exa --help or exa <command> --help for more details.
Development
git clone https://github.com/yourusername/exa-cli.git
cd exa-cli
uv sync
uv run pytest
License
MIT
Metadata
Release files for exa-cli 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| exa_cli-0.1.0.tar.gz | 5.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| exa_cli-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.0 kB
Release files / exa_cli-0.1.0.tar.gz
| Download URL | exa_cli-0.1.0.tar.gz |
|---|---|
| Size | 5.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
44e4fc32ecd13e4ec9bd9a790249dde88875457bd5398e617314fec4194090ba
|
|
BLAKE2b-256 checksum How to use checksums |
a72b319c5379a22fb028b45a86dc27436d94754db5ac5c8d68948661ad6ae57d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.3
|
Release files / exa_cli-0.1.0-py3-none-any.whl
| Download URL | exa_cli-0.1.0-py3-none-any.whl |
|---|---|
| Size | 5.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6d97e02a57a62763a700c0ae8f9f92a50d27c99a8d2100add4c4908f156d11c0
|
|
BLAKE2b-256 checksum How to use checksums |
1833ec1901f6f7e1f863308e5645845800446f0ceb0399f7272bd3d1ab9ebf9a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.3
|