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

cart-cop

v1.0.0

Published

Install the Cart Cop skill for Claude. Makes you defend a purchase before it approves one, instead of cheering you on.

Readme

Cart Cop

A Claude Code skill that makes you defend a purchase before it approves one.

Most budgeting tools record a purchase after it happens. This one gets in the way beforehand. It asks what exact task your current gear is failing at, checks the answer against what you already own, and prices the buy as a delay to a goal you named yourself.

Grounded in Morgan Housel's Psychology of Money. It is not an automatic no. If something genuinely solves an active bottleneck and is built to last, it says yes.

Install

In Claude Code, as a plugin. This is the one to use: it brings the skill and the /cart-cop-init command.

/plugin marketplace add jainulabudeenm/cart-cop
/plugin install cart-cop

Or from npm, if you want the skill in Claude.ai or anywhere outside Claude Code. This installs the skill on its own, without the slash command.

npx cart-cop

Add --project to install into the current repo instead of your home directory, so you can commit it and share it with a team.

Use

Just say what you want to buy.

> I want to buy a new mechanical keyboard.

On first run it interviews you once, five short questions, and saves a profile to ~/.claude/cart-cop/profile.md: what you own, what you are circling, and what you are saving for. Everything after that is instant.

Re-run /cart-cop-init any time to update it.

What it actually does

Three rules it will not bend:

  • The Forecasting Error. Buying specs for who you think you will be in three years is a mathematical error, not foresight.
  • The Struggling Test. The only valid reason to upgrade is that your current tool is failing you today. Not soon. Today.
  • The Aging Gear Clause. Age is not a failure state. Slow is not broken. Old gear has to be proven functionally broken, not merely old.

And the part that does the real work: every rejection converts the price into a delay to a specific goal from your profile. "This is 320 dollars, which is five weeks added to your emergency fund" is harder to argue with than "you do not need it".

One item at a time. It will refuse to discuss a list, because a batch discussion is how three purchases get approved on the strength of one good argument.

The profile

~/.claude/cart-cop/profile.md, in your home directory rather than a project folder, so it cannot end up in a git repo by accident. It is plain markdown. Open it and edit it whenever you like. See profile.example.md for the level of detail that produces useful verdicts.

The skill also offers to update the profile as it learns, so it gets sharper the longer you use it.

Not for

Investment advice, retirement modelling, or budgeting. It reasons about one purchase against goals you already set. It does not set them.

License

MIT