Skip to content
cccskills
FreePublished on GitHub

exa-search

Search the web and open-source code for library usage, API syntax, and documentation via Exa. Use this whenever verifying an API signature, looking up how a library is used, checking a config file format, or resolving an error from a third-party dependency -- including when you think you already know the answer, since library APIs drift. Also use for questions documentation cannot answer: release timing, breaking changes, "is X still maintained", licensing, security advisories, and ecosystem comparisons.

The English summary is being prepared. Showing the original description.

See how to install

Files included (3)

  • SKILL.md4.0 KB
  • references/search-tuning.md4.9 KB
  • scripts/exa.sh6.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Exa Search

Two endpoints behind one script. All HTTP lives in scripts/exa.sh — never call api.exa.ai directly, and never paste the API key into a command.

scripts/exa.sh context "<query>" [--tokens N|dynamic]
scripts/exa.sh search  "<query>" [--type auto|instant|fast|deep-lite|deep|deep-reasoning]
                                 [--results N] [--domains a.com,b.com]
                                 [--exclude c.com] [--since YYYY-MM-DD] [--chars N]

The key is read from ~/.env. If the script reports EXA_API_KEY not set, tell the user to add it rather than working around it.

Route to /context first

/context is the default for anything code-shaped: library and framework usage, API syntax, config file shape, build tooling setup, error messages from a known library, "how do I do X with Y". Exa does retrieval, extraction, reranking, and concatenation server-side and returns one budget-capped string.

Start at the default --tokens 5000. Retry once at 10000 only if the first response clearly doesn't cover the question. Use --tokens dynamic for open-ended queries where you can't guess the budget, and a smaller value like 1000 for a single-fact lookup.

scripts/exa.sh context "expose a Rust struct to Node via napi-rs threadsafe function"

Fall through to /search only when one of these holds

  1. /context returned an empty response, or never mentioned the library you asked about.
  2. The query isn't code-shaped — release announcements, maintenance status, licensing, pricing, security advisories, ecosystem comparisons, migration timing.
  3. You need recency. /context has no date filter; a confidently-formatted snippet from three years ago looks identical to a current one. /search --since is the only way to bound this.
  4. You need provenance control — restricting to official docs, or excluding a source you know is wrong.
  5. You need to follow up on a specific page. /context returns bare inline URLs in prose; /search returns structured results with titles and URLs you can fetch.

Narrate the fallback as an explicit decision, not a silent retry:

Context returned nothing on the napi-rs threadsafe function API, falling back to search restricted to docs.rs.

Fall through at most once. If /search also comes back thin, report that and stop. Do not escalate to --type deep-reasoning and burn 40 seconds on a query that has already failed twice.

Search defaults

The script already defaults to --type auto, --results 10, and highlights capped at 600 characters per result. That is the right shape for nearly every coding question — take it unless you can state why not.

Escalating --type past auto requires a stated reason. deep (4-15s) is for synthesis across sources; deep-reasoning (12-40s) is for conflicting sources and multi-step research. Over-escalating on a trivial lookup is the most common failure mode here — "what's the default port for the Vite dev server" is an instant/context question, not a deep one.

Empty results? Remove filters first, then simplify the query. Adding more constraints to a query that returned nothing is the most common wrong move.

Parameter reference

Read references/search-tuning.md when tuning /search filters, choosing a type, or debugging a 400 — it carries the full parameter tables and the API footguns (which parameters are deprecated, which are endpoint-specific, and which category/filter combinations return 400).

Do not read it for a routine /context lookup.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Quick-save the last assistant response as a verbatim note in the 2ndBrain Obsidian vault (~/2ndBrain/quick-notes/<year>/). Use when the user asks to quick-save/save the last response to 2ndBrain, or invokes $2ndbrain or /skill:2ndbrain.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

Write commit messages under the agent-commits convention - a Conventional Commits fork with no chore catch-all, intent-only type tokens, facts in trailers, and legally-grounded AI provenance (Assisted-by, never Co-authored-by). Use when composing a commit in a repo whose commitlint.config.js extends agent-commits, when deciding between feat/fix/refactor/perf, or when recording AI participation.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

Coordinate multi-agent work through durable artifacts in git instead of chat. Use this whenever a task involves sending a message to another agent, agent mailboxes or handoffs, claiming work from a shared queue, notifying another agent or crew (OpenClaw, Grok Bot, Claude Code, Codex, Gas Town/Gas City workers) that work is ready, or whenever the user mentions the artifact bus, message bus, agent mail, beads mail, doorbells, or pings between agents — even if they don't say "bus" explicitly.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

aven

Free

Use aven to find tasks, update status, and leave durable handoff context.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

Plan, order and deliver a batch of backlog items (e.g. every High item) in a Conventional Docs repo, one decision, branch, worktree, draft PR, review and merge per item. Use when asked to work through the backlog, implement all items of a priority, or sequence several backlog items end to end.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

boris

Free

Codex workflow tips from Boris Cherny (creator of Codex) and the Codex team. Use when: setting up Codex, optimizing workflows, running parallel sessions, configuring AGENTS.md, using skills/commands, subagents, hooks, MCP integrations, or learning best practices. Covers: git worktrees, plan mode, verification, permissions, Slack MCP, BigQuery, prompting tips, plugins, custom agents, sandboxing, keybindings, status lines, output styles, customization, /simplify for code quality, /batch for parallel code migrations, /loop for scheduled tasks, code review agents, /btw for mid-task questions, /effort max reasoning, remote control sessions, voice mode, setup scripts, session naming, /color, PostCompact hook, auto mode, /schedule cloud jobs, iMessage plugin, auto-memory, and auto-dream, mobile app, session teleporting, Cowork Dispatch, Chrome extension, Desktop app, /branch forking, --bare SDK startup, --add-dir multi-repo, --agent custom agents, /voice input.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

See all skills by phatblat

Report a problem with this skill