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

ai-spend-agent

v0.9.7

Published

Local-first financial accountability CLI: Claude Code/Codex attribution, provenance, and next actions, plus experimental Gemini CLI cost evidence.

Readme

ai-spend-agent

The full aibill CLI.

npx aibill init
npx aibill statusline install # optional Claude Code cache-only status line
npx ai-spend-agent
# short alias
npx aibill

Run npx aibill init from a project to detect machine-wide Claude Code, Codex, and experimental Gemini CLI financial evidence, print the first evidence-labeled personal receipt, and seed a private Claude/Codex aggregate cache under ~/.aibill/cache/. Gemini financial rows come only from ~/.gemini/tmp/<opaque-project-id>/chats/**/*.{json,jsonl}; logs.json is a presence signal and never a financial source. Init never replaces missing personal evidence with the bundled sample and never overwrites existing connected source or audit state.

The optional status line is explicit and reversible. It installs a standalone Node-builtins-only runner at Claude user scope, rereads only the private aggregate cache, and never scans transcripts or contacts a provider from the hook. Subscription runway appears only when it was transcript-reported; ~ means API-equivalent value, and untilded billed money requires verified provider evidence. Remove it with npx aibill statusline uninstall.

It reads supported local Claude Code, Codex, and Gemini CLI financial metadata, labels API-equivalent estimates, and can optionally add official OpenAI or Anthropic provider-reported cost through an environment-variable reference. aibill never sits in the inference path and never stores, prints, or proxies provider credentials.

Telemetry: anonymous command counts, disclosed at first run. Terminal analysis stays on your machine — transcripts, prompts, file names, and dollar amounts are never uploaded. Separately, the CLI counts which commands run: anonymous, never your arguments, paths, content, dollars, or your email. Nothing is sent before a one-time notice has been printed on an interactive run, so a machine that has never seen that notice (CI, scripts, pipes) never sends anything. One command turns it off — aibill telemetry off (or DO_NOT_TRACK, CI, or AI_SPEND_NO_TELEMETRY) — aibill telemetry prints the exact last payload verbatim, and while it is on every receipt says so in place of "nothing uploaded". Full scope and the never-list: docs/TELEMETRY.md.

Connector validation (live_verified, fixture_verified, untested, or failed) and each number's financial evidence (verified, estimated, detected_unverified, or missing) are separate status axes. Run npx aibill doctor --sources to see both with freshness and the last sanitized error. The source registry also records read-boundary approval separately; an approved local folder is permission to scan, not verified financial evidence.

See the repository README for commands, privacy boundaries, supported sources, and public-beta limitations.

MIT licensed.