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

@jeger-ai/opengantry-cage

v4.0.2

Published

Zero-config cage for AI coding agents: run any command and restore CI configs, .env secrets, git hooks/config and protected paths while it runs. Slim standalone build of `gantry cage` from @jeger-ai/opengantry.

Readme

@jeger-ai/opengantry-cage

Zero-config session cage for AI coding agents, for agent runs your scripts start non-interactively. Start the command inside it:

npx @jeger-ai/opengantry-cage -- claude
# installed (npm install -g @jeger-ai/opengantry-cage): gantry-cage -- claude

The command is gantry-cage. Releases up to 3.8.2 of this package named it opengantry-cage; the full package @jeger-ai/opengantry still accepts that name as an alias.

While the session runs, the cage checks about once a second and restores changes to CI configs, .env / .env.*, .git/config, .git/hooks/, your GXT manifest forbidden_zones and .cage.yaml protect: entries from an in-memory snapshot. Lockfile changes are listed but kept. A git push from inside the session is refused when the outgoing commits touch those paths. When you quit, the cage prints one report and exits 3 if anything was restored (otherwise the agent's own exit code).

To have every change to a protected file (a gitignored .env, .git/hooks) put to you for accept or reject while any agent works, run gantry cage watch from the full package in its own terminal. To check what any agent committed, in CI or before you push, use gantry cage check --base <ref> from the full package: it covers agents that cannot be wrapped (IDE, desktop, cloud) and needs no per-session step (npx -p @jeger-ai/opengantry gantry cage check --base origin/main; ADR-0050).

This is the same session gantry cage that ships in @jeger-ai/opengantry, built from the same sources as a slim standalone package: no native modules, no install scripts, commander is the only runtime dependency. Use the full package for missions, gantry verify, MCP and everything else.

The same bin is a read guard for Claude Code and Cursor: registered as their hook, gantry-cage read-guard refuses tool calls that would read .env files, git credentials, SSH keys or cloud credentials, so they stay out of the model's context (read guard).

Platforms: Linux and macOS, both tested in CI. Windows is not supported yet: there the cage cannot reliably stop every process the agent started.

Options: --json, --report-only, --no-watch, --watch-interval-ms <n>, --max-file-bytes <n>, --contest-limit <n>, --allow-override <path>, --lock-deps (freeze lockfiles and dependency manifests such as package.json for this run; .cage.yaml dependencies: revert does the same for every run), --allow-only <glob> (scope: restore every file git would track outside the glob; repeatable; .cage.yaml allow_only: for a standing area). cage suggest (proposing .cage.yaml rules) lives in the full package: npx -p @jeger-ai/opengantry gantry cage suggest --write.

Docs: the cage · session cage · check commits · watch files · .cage.yaml · report and exit codes · limits · trust model ADR-0048.

License: Apache-2.0. The bundle inlines yaml (ISC), ajv and ajv-formats (MIT); their notices are kept at the end of the bundle file.