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

@agentxm/registry-protocol

v0.44.0

Published

AgentXM Registry wire contracts: index, discovery, publication-set, visibility, authorization, and suggested-action schemas. Unstable and unsupported — use the axm.sh CLI.

Readme

@agentxm/registry-protocol

The AXM client's typed representation of the public AgentXM Registry HTTP contract: extension index and version entry schemas (./unstable/registry/schema), discovery responses (./unstable/registry/discover-schema), publication-set preview and validation (./unstable/registry/publication-set), publish visibility (./unstable/publish), and the shared suggested-action and human-handoff error vocabulary (./unstable/suggested-action, ./unstable/human-handoff).

Batch resolution metadata

./unstable/registry/resolution-metadata defines the versioned contract for a repeat-safe POST /v1/resolutions/metadata query. The Registry owns the HTTP route and authorization; AXM keeps version selection, release-age policy, and dependency graph decisions. A request groups up to 100 items in one trusted Registry and credential context. Each item has a unique caller key, extension identity, and a select or restore-exact purpose. Exact restoration supplies the accepted version and integrity. The caller may also supply an expected publisher binding, a known representation revision, or a continuation bound to the previous revision.

The response has exactly one outcome per submitted key in request order:

| Outcome | Meaning | | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | metadata | An authorized page of version descriptors, dependency and package compatibility data, lifecycle information, and an opaque revision. A null continuation means the candidate list is complete. | | unchanged | Current authorization and lifecycle still admit a matching complete representation already held by the client. A client without that representation repeats the item without knownRevision. | | unavailable | The identity is absent or inaccessible; the response deliberately does not distinguish those cases. | | binding-conflict | An authorized identity no longer has the expected publisher binding. | | exact-conflict | An authorized exact version or integrity no longer matches the accepted identity. | | restart-required | A continued page crossed a representation revision; discard the earlier pages and restart. |

A metadata page contains at most 100 versions. Clients must follow every continuation and check the revision and result keys before selecting a version; truncated pages are never complete selection input. Continuation tokens are opaque and must be bound by the Registry to the request identity, credential context, and revision. A changed binding, hold, visibility, yank, archival or deprecation fact must invalidate an unchanged result. Backend failures are envelope errors, never invented per-item absence. The query is private and non-cacheable across commands; its POST method does not make publish mutations retryable.

The schema exports the item, version-page, request-body, and response-body limits. A server checks encoded body size before decoding and returns the declared request-too-large error when exceeded. Request keys correlate results only; they confer no identity or access.

The exported ./unstable/registry/resolution-metadata.vectors.json records selection examples for ordinary and exact yanks, release age, direct and pack constraints, package compatibility, and publisher-binding changes. Producer and consumer tests can use the same cases without moving selection to the server.

The byte-vendorable ./unstable/registry/publication-set.vectors.json export pins digest conformance examples for independent implementations of the public protocol. Its metadata describes the canonicalization and optional-field rules; changing the digest algorithm requires a new contract identifier and vector format rather than editing the meaning of existing vectors.

Content parsing, Knowledge inspection, the lint catalog, and archive and manifest validation live in @agentxm/extension-content; release selection lives in @agentxm/extension-model, and release-age policy lives in @agentxm/workspace-kernel/resolution.

This package is bundled into axm.sh; it is not an independently published API. Its ./unstable/* subpaths are workspace-internal boundaries. Ordinary users should use the axm CLI instead.

FSL-1.1-MIT © 2025-2026 AgentXM, Inc.