exa
8
总安装量
6
周安装量
#34898
全站排名
安装命令
npx skills add https://github.com/dianel555/dskills --skill exa
Agent 安装分布
crush
3
claude-code
3
codex
3
mcpjam
2
zencoder
2
Skill 文档
Exa Search
High-precision semantic search via Exa API. Standalone CLI only (no MCP dependency).
Execution Method
Run scripts/exa_cli.py via Bash:
# Prerequisites: pip install httpx tenacity
# Environment: EXA_API_KEY (required), EXA_API_URL (optional, default: https://api.exa.ai)
Available Tools
Search Tools
# Basic semantic search
python scripts/exa_cli.py web_search_exa --query "emerging patterns in TypeScript" [--num-results 10] [--type auto|keyword|neural] [--livecrawl always|fallback|never]
# Advanced search with filters
python scripts/exa_cli.py web_search_advanced_exa --query "machine learning papers" \
[--include-domains arxiv.org,github.com] [--exclude-domains medium.com] \
[--start-date 2024-01-01] [--end-date 2024-12-31] \
[--text] [--highlights] [--summary] [--out results.json]
# Deep search with query expansion
python scripts/exa_cli.py deep_search_exa --objective "foundations of quantum error correction" [--additional-queries "query1|query2"]
# Company research
python scripts/exa_cli.py company_research_exa --company "Anthropic" [--num-results 10]
# LinkedIn profile search
python scripts/exa_cli.py linkedin_search_exa --query "AI researchers at Stanford" [--num-results 10]
Content Tools
# Extract content from URL
python scripts/exa_cli.py crawling_exa --url "https://example.com/article" \
[--max-chars 5000] [--livecrawl always|fallback|never] \
[--text] [--highlights] [--summary] [--out content.json]
# Get code context (documentation, examples)
python scripts/exa_cli.py get_code_context_exa --query "React useState hook examples" [--tokens-num 10000] [--out code.json]
Research Tools
# Start AI research task
python scripts/exa_cli.py deep_researcher_start --instructions "Analyze the impact of LLMs on software development" [--model exa-research|exa-research-pro]
# Returns: {"taskId": "abc123", ...}
# Check research status
python scripts/exa_cli.py deep_researcher_check --task-id "abc123" [--out report.json]
# Status: running â completed | failed
Configuration
# Check config and test connection
python scripts/exa_cli.py get_config_info [--no-test]
Tool Capability Matrix
| Tool | Required | Optional | Output |
|---|---|---|---|
web_search_exa |
query |
num-results, type, livecrawl |
Search results JSON |
web_search_advanced_exa |
query |
include-domains, exclude-domains, start-date, end-date, text, highlights, summary |
Filtered results JSON |
deep_search_exa |
objective |
additional-queries |
Expanded search results |
company_research_exa |
company |
num-results |
Company info JSON |
linkedin_search_exa |
query |
num-results |
LinkedIn profiles JSON |
crawling_exa |
url |
max-chars, livecrawl, text, highlights, summary |
Page content JSON |
get_code_context_exa |
query |
tokens-num (1000-50000) |
Code context JSON |
deep_researcher_start |
instructions |
model |
Task ID |
deep_researcher_check |
task-id |
– | Status + report |
Tool Routing Guide
Exa vs Grok-Search
| Use Case | Recommended Tool |
|---|---|
| Real-time news, current events | grok-search |
| Semantic/conceptual research | exa |
| Code documentation lookup | exa (get_code_context_exa) |
| Company/professional research | exa |
| General web content fetch | grok-search |
| Academic papers, technical docs | exa |
| AI-powered deep research | exa (deep_researcher_*) |
Workflow Patterns
Pattern 1: Quick Semantic Search
python scripts/exa_cli.py web_search_exa --query "best practices for React hooks" --num-results 5
Pattern 2: Filtered Research
python scripts/exa_cli.py web_search_advanced_exa --query "transformer architecture" \
--include-domains arxiv.org,papers.nips.cc --start-date 2023-01-01 --text --summary
Pattern 3: Deep Research Task
# Start research
python scripts/exa_cli.py deep_researcher_start --instructions "Compare RAG vs fine-tuning for domain adaptation"
# Poll until completed
python scripts/exa_cli.py deep_researcher_check --task-id "<taskId>" --out research_report.json
Error Handling
| Error | Recovery |
|---|---|
EXA_API_KEY not configured |
Set environment variable or use --api-key |
| HTTP 429 (Rate limit) | Automatic retry with exponential backoff |
| HTTP 401 (Unauthorized) | Verify API key is valid |
| Timeout | Retry or reduce num-results |
Output Format
All commands output JSON to stdout. Use --out <file> to write to file instead.
{
"results": [
{"title": "...", "url": "...", "text": "...", "publishedDate": "..."}
]
}