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

pi-cruise-control

v0.3.0

Published

Pi package that auto-approves or denies tool calls with an LLM classifier scoring risk and user intent, with caching, audit logging, and session stats.

Downloads

454

Readme

pi-cruise-control

Automatic tool-use classification for the pi coding agent. Every tool call is rated by an LLM before it runs, and denied calls come back to the agent with a one-sentence reason.

| Axis | Question | Values | |------|----------|--------| | risk | What happens if this runs? | low / medium / high | | intent | How clearly did the user ask for it? | low / medium / high |

| risk ↓ / intent → | low | medium | high | |---|---|---|---| | low | approve | approve | approve | | medium | deny | approve | approve | | high | deny | deny | approve |

Intent overrides risk: an action the user explicitly asked for is approved even when the classifier rates it high risk.

Install

pi install git:github.com/puetsua/pi-cruise-control
pi install git:github.com/puetsua/[email protected]   # pinned to a tag

Configure

Inactive until a cruise_control key exists in ~/.pi/agent/settings.json (global) or <project>/.pi/settings.json (project), so installing it never silently changes how your tools run. /cruise-control on writes one for you; once a model is set, the default rules are written into the settings file too, ready to edit.

{
  "cruise_control": {
    "model": "ollama-cloud/deepseek-v4-flash",
    "reasoning": "high",
    "instructions": {
      "background": ["The user is doing software engineering work in a local project workspace."],
      "allow": ["Allow read, grep, find, and ls tools for files inside the project workspace."],
      "conditional": ["Allow git commands that inspect or commit locally, but treat push as higher risk."],
      "deny": ["Deny recursive force deletes such as rm -rf."]
    }
  }
}

Commands

/cruise-control                        show effective configuration
/cruise-control on | off               enable or disable classification
/cruise-control stats                  session counters and averages
/cruise-control model [provider/id]    pick from available models, or set one directly
/cruise-control reasoning [level]      pick a reasoning level, or set one directly

model and reasoning open a searchable picker when called without an argument.

Health check tool

The extension also registers a read-only tool the agent can call to test the classifier:

cruise_control_health

It reports configuration state (active/inactive/disabled), which model is in use and whether it resolves, cache and session stats, and then runs a live probe: one real classification of a benign read call through the configured model, with latency. A healthy classifier approves that call; a fault shows up as the exact error and whether it is retryable. The tool is exempt from the gate itself, so a classifier that is down or misconfigured still gets diagnosed instead of blocking its own health check with a fallback denial.

License

MIT