Skip to content
Development
Skill

/exa

High-precision semantic search and content retrieval via Exa API. Use when: (1) Deep research requiring semantic understanding, (2) Code documentation and examples lookup, (3) Company/professional research, (4) AI-powered comprehensive research tasks, (5) URL content extraction

From plugin
dskills
6416 skills
Install
$ npx -y skills add Dianel555/DSkills --skill exa --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/exa

Context preview

The summary Claude sees to decide when to auto-load this skill.

High-precision semantic search and content retrieval via Exa API. Use when: (1) Deep research requiring semantic understanding, (2) Code documentation and examples lookup, (3) Company/professional research, (4) AI-powered comprehensive research tasks, (5) URL content extraction

SKILL.md

exa.SKILL.md
name: exa
description: |
  High-precision semantic search and content retrieval via Exa API. Use when: (1) Deep research requiring semantic understanding, (2) Code documentation and examples lookup, (3) Company/professional research, (4) AI-powered comprehensive research tasks, (5) URL content extraction with structured output. Triggers: "research", "find papers", "code examples", "company info", "LinkedIn profiles", "deep analysis". Differentiator: Exa excels at semantic/neural search while grok-search is better for real-time news and general web content.

Exa Search

High-precision semantic search via Exa API. Standalone CLI only (no MCP dependency).

Execution Method

# Prerequisites: pip install httpx tenacity
# Environment: EXA_API_KEY (required), EXA_API_URL (optional, default: https://api.exa.ai)

# All examples assume cwd == skills/exa/. The shim auto-chdirs if you launch
# it from elsewhere (e.g., the repo root).
cd skills/exa
python scripts/exa_cli.py --help

Available Tools

# Basic semantic search (highlights always on; supports inline category:<type>)
python scripts/exa_cli.py web_search_exa --query "TypeScript design patterns" [--num-results 10]
python scripts/exa_cli.py web_search_exa --query "category:company Anthropic AI safety"

# Batch URL fetch (urls is a repeatable flag; payload field is upstream `ids`)
python scripts/exa_cli.py web_fetch_exa \
  --urls "https://a.com" --urls "https://b.com" \
  [--max-chars 3000] [--out content.json]

# Advanced filtered search (list params are repeatable flags, no comma syntax)
python scripts/exa_cli.py web_search_advanced_exa --query "transformer" \
  [--type auto|fast|instant] [--category research\ paper] \
  [--include-domains arxiv.org --include-domains papers.nips.cc] \
  [--exclude-domains medium.com] \
  [--include-text "attention"] [--exclude-text "tutorial"] \
  [--start-date 2024-01-01] [--end-date 2024-12-31] \
  [--num-results 10] [--max-age-hours 168] \
  [--text] [--highlights] [--summary] \
  [--max-chars 5000]   # only effective when --text is set; emits stderr warning otherwise
  [--out results.json]

# Configuration / connectivity probe (omit --no-test to run a numResults=1 ping)
python scripts/exa_cli.py get_config_info [--no-test]

# Create an Agent run or resume the same retained run
python scripts/exa_cli.py agent_run --query "Research an evidence-backed market map" [--effort low]
python scripts/exa_cli.py agent_run --run-id agent_run_123 [--wait-seconds 750]

Tool Capability Matrix

| Tool | Required | Optional | Output | |------|----------|----------|--------| | `web_search_exa` | `--query` | `--num-results` (1-100) | Search results JSON (highlights always present) | | `web_fetch_exa` | `--urls` (repeatable, ≥1) | `--max-chars` (default 3000), `--out` | `/contents` response JSON | | `web_search_advanced_exa` | `--query` | `--type`, `--category`, repeatable `--include-domains`/`--exclude-domains`/`--include-text`/`--exclude-text`, `--start-date`, `--end-date`, `--num-results`, `--max-age-hours`, `--text`, `--highlights`, `--summary`, `--max-chars`, `--out` | Filtered search results JSON | | `get_config_info` | – | `--no-test` | Config + (default) `connection_test` | | `agent_run` | exactly one of `--query` / `--run-id` | schema/input files, data sources, prior-run continuation, effort, wait controls, `--out` | Normalized retained-run lifecycle JSON |

Global Options

Place before the subcommand:

| Option | Purpose | |--------|---------| | `--api-url` | Override `EXA_API_URL` (does not write to `os.environ`) | | `--api-key` | Override `EXA_API_KEY` | | `--debug` | Enable JSON debug events on stderr (`EXA_DEBUG=true`) — never logs auth values | | `--max-retry-wait <s>` | Cap (seconds) for single retry wait + exponential backoff (default 60, env: `EXA_MAX_RETRY_WAIT`) | | `--auth-scheme <scheme>` | Authentication scheme: `x-api-key` (default) or `bearer` for third-party endpoints (env: `EXA_AUTH_SCHEME`) |

Tool Routing Guide

| Use Case | Recommended Tool | |----------|------------------| | Real-time news, current events | grok-search | | Semantic/conceptual research | **exa** (`web_search_exa`) | | Domain or date-bounded research | **exa** (`web_search_advanced_exa`) | | Read full content of one or more URLs | **exa** (`web_fetch_exa`) | | Academic papers, technical docs | **exa** (`web_search_advanced_exa --include-domains arxiv.org ...`) | | Open-ended discovery, multi-hop research, structured list building, prior-run follow-up | [exa-agent](exa-agent.md) (`agent_run`) | | Homogeneous enrichment over known rows | Deterministic script with bounded concurrency, backoff, checkpoint, and stable output file |

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 (repeatable flags)

python scripts/exa_cli.py web_search_advanced_exa --query "transformer architecture" \
  --include-domains arxiv.org --include-domains papers.nips.cc \
  --start-date 2023-01-01 --text --summary

Pattern 3: Batch URL Read

python scripts/exa_cli.py web_fetch_exa \
  --urls "https://example.com/a" --urls "https://example.com/b" \
  --max-chars 4000 --out batch.json

Pattern 4: Third-Party Endpoint (Bearer Auth)

# Connect to exa-pool or other Exa-compatible proxy
export EXA_API_URL=https://pool.example.com
export EXA_AUTH_SCHEME=bearer
export EXA_API_KEY=your-bearer-token

python scripts/exa_cli.py web_search_exa --query "AI agents" --num-results 5

# Or use CLI flags for one-off requests
python scripts/exa_cli.py --auth-scheme bearer --api-url https://pool.example.com \
  web_search_exa --query "AI agents"

Pattern 5: Exa Agent

Read [exa-agent.md](exa-agent.md) before creating a run. It defines objective/schema/coverage checks, `--run-id` versus `--previous-run-id`, evidence validation, and Z

Read more
Ships withdskills

CLI tools skills for AI coding assistants (Claude Code, Codex, Antigravity CLI).

Get the whole plugin
Stats
64
Stars
7
Forks
Active
Maintenance
Python
Language
MIT
License
2d ago
Last commit
8mo ago
Created

Repo: Dianel555/DSkills

Other skills on dskills.