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

@blessium/pi-search

v1.0.3

Published

Free web research for pi that works out of the box: search, page reading, and papers. No API key required.

Readme

pi-search

npm version License: MIT

Free web research for pi that works out of the box. Install it once, ask a question, and pi can search the web, read pages, or find papers with no provider setup or API key.

pi-search is a compact pi extension for finding current material without flooding an agent's context window. After installation, it needs no provider configuration or API key. It combines hosted Exa and Parallel MCP services, returns answer-ready excerpts first, and lets pi fetch source pages only when the details matter.

Why pi-search?

  • Works immediately, for free. Install one package and pi is ready to search. Exa and Parallel both offer API-key-free access; add a key only when you need higher rate limits.
  • Keep research focused. Search results are excerpt-first, so pi can answer from the useful parts before reading a full page.
  • Go beyond general search. Find research papers, preprints, and journal articles through Exa's publication index.
  • Stay model-agnostic. The same tools work with any model you run through pi.

Install

pi install npm:@blessium/pi-search

Try it once without installing:

pi -e npm:@blessium/pi-search

Install a local checkout:

pi install /path/to/pi-search

Ask pi

The extension registers its tools automatically. Ask pi for research in natural language:

| Ask pi | Tool used | | --- | --- | | "Find current documentation for the WebAuthn conditional UI API." | web_search | | "Read https://example.com/article and extract the rollout dates." | web_fetch | | "Find reporting from the last 24 hours about this release, limited to official sources." | web_search_advanced | | "Find recent papers on retrieval-augmented generation and summarize the tradeoffs." | search_papers |

Describe the ideal source rather than listing bare keywords. Start with web_search, then use web_fetch only for exact wording, a full-page analysis, or conflicting excerpts.

Tools at a glance

| Tool | Best for | What it returns | | --- | --- | --- | | web_search | Everyday discovery: facts, documentation, news, people, and companies | Clean excerpts from the top results | | web_fetch | Reading a public page when snippets are not enough | Clean markdown or focused excerpts from up to 20 URLs | | web_search_advanced | Precise or time-sensitive research | Exa results filtered by category, domain, date, freshness, and context budget | | search_papers | Literature reviews and paper discovery | Scholarly publications, preprints, and journal articles with excerpts or summaries |

For broad questions, pi can send two or three concise search angles to Parallel. For complex research, the advanced and paper tools support type: "deep"; for breaking news, maxAgeHours: 0 forces a live crawl.

Providers and configuration

web_search and web_fetch choose Exa or Parallel deterministically for each pi session, so a conversation stays with one backend. Pin the basic tools to one provider when you need to:

PI_SEARCH_PROVIDER=exa pi
PI_SEARCH_PROVIDER=parallel pi

web_search_advanced and search_papers always use Exa because Parallel does not offer the equivalent filters or publication index.

Both providers have a free tier. Optional keys raise rate limits:

EXA_API_KEY=your-key pi
PARALLEL_API_KEY=your-key pi

Some controls are provider-specific. Parallel honors web_search.queries plus web_fetch.objective and web_fetch.fullContent; Exa searches query alone and uses maxCharacters to cap fetch output. Unsupported controls are safely ignored.

Privacy and security

Each tool call sends its query or URL to the selected Exa or Parallel service over HTTPS. Parallel's basic tools also receive the current pi session ID and active model name. The extension makes no filesystem writes, runs no shell commands, and stores no credentials locally. An optional EXA_API_KEY or PARALLEL_API_KEY is sent only to its matching provider.

Verify a checkout

npm run check

License

MIT