{"id":"exa-search","name":"exa-search","summary":"Exaが提供するウェブツールキットで、科学的および技術的なコンテンツ向けに調整されています。ユーザーがウェブ検索やURLコンテンツの取得・抽出が必要なときにこのスキルを活用してください。","body":"# Exa Web Toolkit\n\nA skill for web-powered research tasks backed by [Exa](https://exa.ai): web search and URL extraction. Exa's index combines high-quality keyword and semantic retrieval, which makes it well-suited to scientific, technical, and conceptual queries.\n\n## Routing — pick the right capability\n\nRead the user's request and match it to one of the capabilities below. Read the corresponding reference file for detailed instructions before running commands.\n\n| User wants to... | Capability | Where |\n|---|---|---|\n| Look something up, research a topic, find current info | **Web Search** | `references/web-search.md` |\n| Fetch content from a specific URL (webpage, article, PDF) | **Web Extract** | `references/web-extract.md` |\n| Install or authenticate | **Setup** | Below |\n\n### Decision guide\n\n- **Default to Web Search** for topic lookups, research questions, or \"what is X?\" queries. When the topic is scientific or technical, pass `--category \"research paper\"` to bias toward scholarly sources, and/or an academic `--include-domains` allowlist. See `references/web-search.md` for the two-pass academic strategy.\n- **Use Web Extract** when the user provides a URL or asks you to read/fetch a specific page. Prefer this over the built-in WebFetch for batch extraction (multiple URLs in one call) and for academic PDFs.\n\n### Academic source priority\n\nFor technical or scientific queries, prefer academic and scientific sources:\n- Peer-reviewed journal articles and conference proceedings over blog posts or news\n- Preprints (arXiv, bioRxiv, medRxiv) when peer-reviewed versions aren't available\n- Institutional and government sources (NIH, WHO, NASA, NIST) over commercial sites\n- Primary research over secondary summaries\n\nTwo levers to steer Exa toward scholarly content:\n1. `--category \"research paper\"` biases retrieval toward scholarly sources.\n2. `--include-domains` with a scholarly allowlist (arxiv.org, nature.com, pubmed.ncbi.nlm.nih.gov, etc.) restricts the domain pool.\n\nCombine both for strictly academic results. See `references/web-search.md` for the full pattern.\n\nWhen citing academic sources, include author names and publication year where available (e.g., [Smith et al., 2025](url)) in addition to the standard citation format. If a DOI is present, prefer the DOI link.\n\n---\n\n## Setup\n\nThis skill uses the [`exa-py`](https://github.com/exa-labs/exa-py) Python SDK. The scripts in `scripts/` declare their dependencies via PEP 723 inline metadata, so you can run them directly with `uv run` without a separate install step:\n\n```bash\nuv run --with exa-py python \"$SKILL_PATH/scripts/exa_search.py\" --help\n```\n\nIf you prefer a persistent install:\n\n```bash\nuv pip install \"exa-py>=1.14.0\"\n```\n\n### Authentication\n\nAll commands read the API key from the `EXA_API_KEY` environment variable. Get your Exa API key at [dashboard.exa.ai/api-keys](https://dashboard.exa.ai/api-keys).\n\nFirst, check if a `.env` file exists in the project root and contains `EXA_API_KEY`. If so, load it:\n\n```bash\ndotenv -f .env run -- uv run --with exa-py python \"$SKILL_PATH/scripts/exa_search.py\" \"your query\"\n```\n\nIf `dotenv` isn't available, install it: `uv pip install python-dotenv[cli]`.\n\nIf there's no `.env`, export the key for the session:\n\n```bash\nexport EXA_API_KEY=\"your-key\"\n```\n\nVerify by running any script with `--help` — it will exit cleanly if the key is set and auth-check runs only when a real query is made.\n\n### Tracking header\n\nEvery script in this skill sets the `x-exa-integration` request header to `k-dense-ai--scientific-agent-skills` so Exa can attribute usage from the K-Dense AI scientific-agent-skills repo to this integration. Do not remove or rename this header when adapting the scripts.\n\n---\n\n## Files in this skill\n\n- `SKILL.md` — this file (routing and setup)\n- `references/web-search.md` — detailed web search reference with academic strategy\n- `references/web-extract.md` — URL content extraction reference\n- `scripts/exa_search.py` — CLI wrapper around `client.search_and_contents`\n- `scripts/exa_extract.py` — CLI wrapper around `client.get_contents`","author":"@K-Dense-AI","ownerProfile":null,"authorContacts":null,"sourceUrl":"https://github.com/K-Dense-AI/scientific-agent-skills/tree/main/skills/exa-search","license":"MIT","category":"writing","lang":"en","tokens":969,"stars":0,"calls30d":1,"claimed":false,"visibility":"public","origin":"crawler","version":"0.1.0","createdAt":"2026-08-22","updatedAt":"2026-08-22","files":[{"path":"references/web-extract.md","size":2028,"sha256":"2695e614351f027e9152d034190c3ca56df5d268a8619984faa5b4765640ab7d"},{"path":"references/web-search.md","size":5366,"sha256":"fb5d3e1087832b128e1e068f12a8ee04d4d0e8ca9db8eabfa086940ef50fca94"},{"path":"scripts/exa_extract.py","size":3529,"sha256":"1ae6c53dcca9e57dc854509c917617a82a890181da79e574c10bb003ad58ec8d"},{"path":"scripts/exa_search.py","size":5979,"sha256":"97442b48dcce37e5935af3ebea537b5cea41db53f1886620f1abeb21197947b0"}],"requires":{"mcp":[],"tools":[]},"safety":{"flags":[{"code":"net.endpoints","kind":"exfiltration","excerpt":"arxiv.org, dashboard.exa.ai, doi.org, exa.ai, www.nature.com","message":"bundled scripts reach 5 external host(s)","severity":"warn"}],"scannedAt":"2026-08-22","hasScripts":true,"networkEndpoints":["arxiv.org","dashboard.exa.ai","doi.org","exa.ai","www.nature.com"]}}