ablation-planner
Use when main results pass result-to-claim (claim_supported=yes or partial) and ablation studies are needed for paper submission.
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).
Claude Code
$ npx -y skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill exa-search --agent claude-code
Codex
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill exa-search -a codex -y
Cursor
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill exa-search -a cursor -y
Gemini CLI
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill exa-search -a gemini-cli -y
GitHub Copilot
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill exa-search -a github-copilot -y
OpenCode
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill exa-search -a opencode -y
Windsurf
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill exa-search -a windsurf -y
name: exa-search description: 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). argument-hint: "[search-query-or-url]" allowed-tools: Bash(*), Read, Write
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.
[`shared-references/integration-contract.md`](../shared-references/integration-contract.md) §2 (Policy D1 — standalone `/exa-search` has no documented fallback, so unresolved helper terminates with an explicit error).
> 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](https://exa.ai).
Parse `$ARGUMENTS` for:
Resolve `$EXA_FETCHER` via the canonical strict-safe chain (see [`shared-references/integration-contract.md`](../shared-references/integration-contract.md) §2). Policy D1 cascade: there is no native inline fallback for Exa (retrieval requires the `exa-py` SDK + API key, which lives in the fetcher), so unresolved helper means the SKILL cannot produce its primary output — fail with explicit remediation.
cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
if [ -z "${ARIS_REPO:-}" ] && [ -f .aris/installed-skills.txt ]; then
ARIS_REPO=$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null) || true
fi
if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
fi
EXA_FETCHER=".aris/tools/exa_search.py"
[ -f "$EXA_FETCHER" ] || EXA_FETCHER="tools/exa_search.py"
[ -f "$EXA_FETCHER" ] || { [ -n "${ARIS_REPO:-}" ] && EXA_FETCHER="$ARIS_REPO/tools/exa_search.py"; }
[ -f "$EXA_FETCHER" ] || {
echo "ERROR: exa_search.py not resolved at .aris/tools/, tools/, \$ARIS_REPO/tools/, or via ~/.aris/repo." >&2
echo " Fix: rerun bash tools/install_aris.sh or smart_update.sh (refreshes ~/.aris/repo), export ARIS_REPO, or copy the helper to tools/." >&2
echo " Also ensure 'exa-py' is installed: pip install exa-py" >&2
exit 1
}**Standard search:**
python3 "$EXA_FETCHER" search "QUERY" --max 10 --content highlights
**With filters:**
python3 "$EXA_FETCHER" search "QUERY" --max 10 \ --category "research paper" \ --start-date 2025-01-01 \ --content text --max-chars 8000
**Find similar pages:**
python3 "$EXA_FETCHER" find-similar "URL" --max 5 --content highlights
**Get content for known URLs:**
python3 "$EXA_FETCHER" get-contents "URL1" "URL2" --content text
Format results as a structured table:
| # | Title | Authors | Venue/Publisher | URL | Date | Key Content | |---|-------|---------|-----------------|-----|------|-------------|
For each result:
(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:
· · · · · · · · 💬 Join Community · 🌱 ARIS is a methodology, not a platform. What matters is the research workflow — take it wherever you go.
Use when main results pass result-to-claim (claim_supported=yes or partial) and ablation studies are needed for paper submission.
Quick single-paper lookup via AlphaXiv LLM-optimized summaries with tiered source fallback. Use when user says "explain this…
Analyze ML experiment results, compute statistics, generate comparison tables and insights. Use when user says "analyze results",…
Search, download, and summarize academic papers from arXiv. Use when user says "search arxiv", "download paper", "fetch arxiv",…
Autonomously improve a generated paper via GPT-6-Astra xhigh review → implement fixes → recompile, for 2 rounds. Use when user…
Autonomous research review loop using any OpenAI-compatible LLM API. Configure via llm-chat MCP server or environment variables.…
Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…