skills/exa-search/SKILL.md
AI-powered web search via Exa with content extraction. Use when user says "exa search", "web search with content", "find similar pages", or needs broad web results beyond academic databases (arXiv, Semantic Scholar).
npx skillsauth add shaun-z/auto-claude-code-research-in-sleep exa-searchInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Search query: $ARGUMENTS
Exa is the broad web search source with built-in content extraction:
| Skill | Best for |
|------|----------|
| /arxiv | Direct preprint search and PDF download |
| /semantic-scholar | Published venue papers (IEEE, ACM, Springer), citation counts |
| /deepxiv | Layered reading: search, brief, section map, section reads |
| /exa-search | Broad web search: blogs, docs, news, companies, research papers — with content extraction |
Use Exa when you need results beyond academic databases, or when you want content (highlights, full text, summaries) extracted alongside search results.
tools/exa_search.py relative to the current project.Overrides (append to arguments):
/exa-search "RAG pipelines" — max: 5— top 5 results/exa-search "diffusion models" — category: research paper— research papers only/exa-search "startup funding" — category: news, start date: 2025-01-01— recent news/exa-search "transformer" — content: text, max chars: 8000— full text mode/exa-search "transformer" — content: summary— LLM-generated summaries/exa-search "transformer" — domains: arxiv.org,huggingface.co— domain filter/exa-search "https://arxiv.org/abs/2301.07041" — similar— find similar pages
Exa requires the exa-py SDK and an API key:
pip install exa-py
Set your API key:
export EXA_API_KEY=your-key-here
Get a key from exa.ai.
Parse $ARGUMENTS for:
find-similar mode)find-similar mode instead of searchresearch paper, news, company, personal site, financial report, peoplehighlights (default), text, summary, noneauto (default), neural, fast, instantSCRIPT=$(find tools/ -name "exa_search.py" 2>/dev/null | head -1)
If not found, tell the user:
exa_search.py not found. Make sure tools/exa_search.py exists and exa-py is installed:
pip install exa-py
Standard search:
python3 "$SCRIPT" search "QUERY" --max 10 --content highlights
With filters:
python3 "$SCRIPT" search "QUERY" --max 10 \
--category "research paper" \
--start-date 2025-01-01 \
--content text --max-chars 8000
Find similar pages:
python3 "$SCRIPT" find-similar "URL" --max 5 --content highlights
Get content for known URLs:
python3 "$SCRIPT" get-contents "URL1" "URL2" --content text
Format results as a structured table:
| # | Title | Authors | Venue/Publisher | URL | Date | Key Content |
|---|-------|---------|-----------------|-----|------|-------------|
For each result:
category: "research paper" hits only — also record authors
(from Exa's author/authors fields, or fallback: parse from the
result snippet) and venue/publisher (from publisher, source, or
the domain hosting the paper). These are needed by Step 6's wiki
hook; if either is unavailable for a given hit, skip wiki ingest
for that one hit and log a note.After presenting results, suggest:
Required when research-wiki/ exists AND the search returned
results of category: "research paper"; skip silently otherwise.
General web results (blog posts, docs, news) are not ingested —
the wiki is for papers only.
For each research paper hit, try to recover an arXiv ID from the URL
(arxiv.org/abs/<id>); if present, use --arxiv-id. Otherwise fall
back to manual metadata:
if [ -d research-wiki/ ] and query category was "research paper":
for each research-paper hit in results:
if URL matches arxiv.org/abs/<id>:
python3 tools/research_wiki.py ingest_paper research-wiki/ \
--arxiv-id "<id>"
else:
python3 tools/research_wiki.py ingest_paper research-wiki/ \
--title "<title>" --authors "<authors joined by , >" \
--year <year> --venue "<venue or publisher>"
The helper handles slug / dedup / page / index / log — do not
handwrite papers/<slug>.md. See
shared-references/integration-contract.md.
EXA_API_KEY is set before searchinghighlights content mode for a good balance of speed and contextcategory: "research paper" when the user is clearly looking for academic contenttext content mode when the user needs full page content/arxiv or /semantic-scholar for comprehensive literature coveragedevelopment
Generate publication-quality academic illustrations through a local Codex app-server bridge that uses Codex native image generation. This is a separate experimental alternative to `paper-illustration`, intended for Claude Code users who want a GPT-image-style renderer without modifying the original skill.
development
Two-way sync between a local paper directory and an Overleaf project via the Overleaf Git bridge (Premium feature). Lets you keep ARIS audit/edit workflows on the local copy while collaborators edit in the Overleaf web UI. Token never touches the agent — user does the one-time auth via macOS Keychain. Use when user says "同步 overleaf", "overleaf sync", "推送到 overleaf", "connect overleaf", "Overleaf 桥接", "pull overleaf", "push overleaf", or wants to bridge their ARIS paper directory with an Overleaf project.
development
Zero-context verification that every bibliographic entry in the paper is real, correctly attributed, and used in a context the cited paper actually supports. Uses a fresh cross-model reviewer with web/DBLP/arXiv lookup to catch hallucinated authors, wrong years, fabricated venues, version mismatches, and wrong-context citations (cite present but the cited paper does not establish the claim). Use when user says "审查引用", "check citations", "citation audit", "verify references", "引用核对", or before submission to ensure bibliography integrity.
data-ai
Paragraph-level structural blueprint for 10-12 page systems papers targeting OSDI, SOSP, ASPLOS, NSDI, and EuroSys. Provides page allocation, paragraph templates, and writing patterns. Use when user says "写系统论文", "systems paper structure", "OSDI paper", "SOSP paper", or wants fine-grained structural guidance for a systems conference submission.