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

@verevoir/accelerator

v0.1.7

Published

The aigency accelerator: commodity dev tools (cached source reads/writes via @verevoir/context, work-tracker ops via @verevoir/workflows) as an MCP server, plus the substrate + LLM/telemetry/loop primitives exposed as library subpath exports for @verevoir

Readme

@verevoir/accelerator

The aigency accelerator — the commodity developer toolbelt as an MCP server, plus the substrate/LLM/telemetry/loop primitives it exposes as a library.

Split out of @verevoir/mcp (STDIO-523) along the governance boundary: this package holds everything that is not the moat. The governed capabilities (provision, enact_capability, the governed delegate / dispatch / refine / search family) live in the private @verevoir/capabilities, which composes on top of the substrate exported here. A host that wants both launches both servers.

accelerator makes no LLM calls of its own — that is the whole point of the split, and it drives the secrets model below (it needs source/board access, never a model key).

Install

accelerator is public and available two ways:

// npm (published, public) — MCP client config
{ "command": "npx", "args": ["-y", "@verevoir/accelerator"] }

// or straight from the repo (builds on install via `prepare`)
{ "command": "npx", "args": ["-y", "github:verevoir/accelerator#v0.1.7"] }

The github: form is what @verevoir/capabilities uses as a dependency, so the private moat never needs a registry.

Use as a pi plugin (with a permissions scope)

The same codebase is also a pi plugin. package.json declares a pi.extensions entry pointing at the built dist/pi.js, so installing this package as a pi package registers the same source and work-tracker tools onto pi — reusing the identical tool definitions, no MCP server process required.

Because pi runs tools in-process, the plugin ships an annotation-driven least-privilege scope layer so a client can run pi with only the tool classes they intend to grant. Tools are grouped into five classes:

| Class | Tools | | -------------- | ------------------------------------------------------------------- | | read | every readOnlyHint tool — the reads and board queries | | write-local | write_file, edit_file, multi_edit, insert, delete_block | | write-github | commit_files, ensure_fork, ensure_branch, open_pull_request | | cards-write | create_card, update_card, move_card, add_comment | | shell | no accelerator tools — gates only pi's native bash (see below) |

Two environment knobs control the scope:

| Env var | Effect | | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ACCELERATOR_TOOLS | Comma-separated class names and/or explicit tool names that may register. Default when unset: read. Out-of-scope tools are never registered (fail-closed). An explicit tool name grants just that tool; unknown entries are ignored with a warning on stderr. | | ACCELERATOR_GOVERN_NATIVE | When truthy (1/true/on/yes), install a tool_call gate that applies the same scope policy to pi's own native tools (read/grep/find/ls/write/edit/bash), blocking out-of-scope calls with a reason. Default off. |

Examples:

# read-only (the default) — no writes register at all
pi ...

# allow local edits and board writes, and govern pi's native tools too
# (native bash stays blocked — it needs an explicit `shell` grant)
ACCELERATOR_TOOLS='read,write-local,cards-write' ACCELERATOR_GOVERN_NATIVE=1 pi ...

# add `shell` only when pi's native bash is genuinely required
ACCELERATOR_TOOLS='read,write-local,shell' ACCELERATOR_GOVERN_NATIVE=1 pi ...

# a single explicit tool
ACCELERATOR_TOOLS='read_file,open_pull_request' pi ...

Honest framing: this is a policy + least-privilege + audit layer, not a sandbox. It fails closed and keeps out-of-scope tools unregistered. pi's native bash is unbounded — it can git push, hit the network, rm -rf, or write to the board — so it has its own shell class and is permitted only when shell is explicitly granted (with ACCELERATOR_GOVERN_NATIVE on). Granting write-local therefore does not hand over a shell; shell must be asked for by name. Even then bash is unbounded once granted — the real isolation boundary is running pi in a container: the scope layer narrows what the agent is handed; the container is what contains it. See docs/2026-07-24-pi-plugin-and-permissions.md.

Secrets / environment — and why each

accelerator only exposes source and work-tracker tools, so it only ever needs source/board credentials. It has no model tier, so no model API keys belong here — putting an ANTHROPIC_API_KEY on this server would be dead config and a needless secret exposure. That asymmetry is deliberate: the split lets you hand the commodity server the keys that read your code and boards, and keep the model keys on the moat.

| Env var | Why the server needs it | | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | GITHUB_TOKEN | GitHub source adapter — read_file/grep/find_symbol/code_graph, and write_file/edit_file/multi_edit/insert/delete_block/commit_files/ensure_fork/ensure_branch/open_pull_request. | | NOTION_API_KEY | Notion source (pages as a file tree) and the Notion work-tracker board (list_cards/create_card/…). | | TRELLO_API_KEY, TRELLO_API_TOKEN, TRELLO_REFERER | Trello work-tracker backend, when the board is Trello. | | AIGENCY_AUDIT, AIGENCY_AUDIT_DIR | Emit audit spans (the shared telemetry lib lives here) and where to write them. | | OTEL_EXPORTER_OTLP_ENDPOINT | OTLP export of those spans to a collector. | | PORT, HOST | The verevoir-accelerator-http bin only: its listen port (default 3000) and bind address (default 127.0.0.1; exposing off-box is a deliberate hosting choice). The startHttp() library API instead defaults the port to 0 (OS-assigned). |

Local paths and public GitHub repos need no token; the tokens gate private sources and writes.

Tools it registers (22)

Source (cached + tree-sitter indexed via @verevoir/context): read_file, list_files, get_repo_tree, grep, find_symbol, code_graph, write_file, edit_file, multi_edit, insert, delete_block, commit_files, ensure_fork, ensure_branch, open_pull_request. Work tracker (via @verevoir/workflows): list_cards, get_card, create_card, update_card, move_card, list_columns, list_comments, add_comment.

Prefer these over built-in filesystem/shell tools so the shared read cache + symbol index stay correct across a session.

Library (subpath exports)

Every compiled module is importable by subpath — @verevoir/accelerator/tiers, /router, /audit, /metering, /result, /edit, /cache, /mutate, /http, /graph, /architecture, /manifest, /instructions, /loop/evals, /loop/refine, /loop/search, /tools/source, /tools/workflow. @verevoir/capabilities imports these; the dependency direction is capabilities → accelerator (never the reverse), which keeps governance out of the commodity layer.

Configuring the antagonistic-review gate

This repo carries the gate: .github/workflows/antagonistic-review.yml, the decision script .github/antagonistic-review/aggregate.sh, the merge-base resolver .github/antagonistic-review/resolve-merge-base.sh, and .github/antagonistic-review/mcp.json. The reviewer's rubric comes from provision, which lives in @verevoir/capabilities — so the gate's MCP is capabilities, git-installed from its private repo. The full setup (the secrets, the clone step, the reviewer allowed_tools) is documented in the capabilities README → "Antagonistic-review gate", since capabilities is the reviewer engine. In short, the gate mints a per-run, least-privilege token from a GitHub App (org secrets VEREVOIR_APP_ID + VEREVOIR_APP_PRIVATE_KEY, scoped to just the repos it reads — no standing PAT), plus a reviewer model credential (CLAUDE_CODE_OAUTH_TOKEN, or ANTHROPIC_API_KEY).

Bins

accelerator / verevoir-accelerator (stdio server), verevoir-accelerator-http (streamable-HTTP server — one long-lived process serving many sessions that share one warm cache; PORT / HOST), verevoir-card-sync, verevoir-audit-trace.

Licence

Apache-2.0.