npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@spicadust/exa-cli

v0.2.0

Published

Unofficial command-line interface for the Exa API. Not affiliated with Exa.

Readme

exa-cli

A command-line interface for the Exa API — the search engine built for AI.

Unofficial project. exa-cli is an independent, community-built tool. It is not affiliated with, endorsed by, or maintained by Exa. "Exa" is a trademark of its respective owner; this project only consumes the public Exa API.

Exa has a broad, well-designed REST API but no official CLI. exa-cli covers that surface from the terminal, so every Exa capability — search, content extraction, answers, agents, monitors, and Websets — is available to shell scripts and agent harnesses without the MCP server.

The project is written TypeScript, one command module per API area, mapped directly onto Exa's published API reference.

Install

CLI

npm install -g @spicadust/exa-cli

No npm? Install a standalone binary — no Node.js runtime required (macOS / Linux):

curl -fsSL https://raw.githubusercontent.com/AirswitchAsa/exa-cli/master/scripts/install.sh | sh

Windows binaries and every other platform are on the releases page. Or build from source (Node.js 20+):

npm install && npm run build && npm link

See the user guide for all distribution channels.

Agent skill — for Claude Code and other coding agents:

npx skills install https://github.com/AirswitchAsa/exa-cli/tree/master/skills/exa

The skill resolves the exa-cli command itself: it uses an installed exa-cli if present, otherwise runs it via npx — so installing the CLI globally is optional, though it does make repeated calls faster.

When the skill is active, it makes Exa the agent's default for open-web search and research — progressively standing in for a generic built-in web search. Page fetching is left to the agent's judgment between its own tooling and exa-cli contents. This is a recommendation the skill makes, not an override: it cannot disable the agent's own tools. To opt out, set tool preferences in your agent's settings — that is outside the skill's scope.

Quick start

export EXA_API_KEY=...   # get a key at https://exa.ai, or run `exa-cli api-key set`

exa-cli search "embeddings-based retrieval" --num-results 5
exa-cli answer "What changed in Exa's API recently?" --text
exa-cli contents https://exa.ai --summary
exa-cli search "Compare Exa Websets and Monitors" --type deep-reasoning

Add --json to any command for the raw API response; omit it for human-readable text. exa-cli --help lists every command.

Documentation

  • User guide — install, authentication, and the full command reference with examples and links to the matching Exa docs.
  • Design reference — the behavioral specification. The .dog.md files in docs/design/ are DOG specs: the source of truth for actors, behaviors, components, and data.
  • Conventions — cross-cutting CLI design rules.
  • Agent skill — wraps the CLI for agent workflows.

Commands

search · contents · answer · chat · context · response · agent · monitor · webset · team · api-key · config — covering the current Exa REST API. See the user guide for details.

Development

npm run dev -- search "query"   # run from source with tsx
npm run build                   # type-check and emit dist/
npm test                        # unit suite (mock fetch, no key needed)
npm run test:integration        # live API suite (needs a key, costs money)
npm run typecheck
npm run lint

License

MIT