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

@abbit/ax

v0.1.0

Published

Command-line access to Abbit Platform.

Readme

AX

AX is the command-line interface for Abbit Platform. Use it to work with Tracker and Wiki, or connect an MCP client through local stdio.

Requires macOS and Node.js >=24.15.0 <25.

Install

Install from npm:

npm install --global @abbit/ax@latest
ax --version

The same executable is available as abbit-ax if another program already uses ax on your PATH.

Log in

ax login
ax status

Browser login opens an authorization page. Select your workspace and approve access. The browser must be able to reach the machine running AX.

For headless use, sign in with an existing personal or service API key. Enter it at the hidden prompt or pass it through stdin:

ax login --key
ax login --key < /secure/path/key

Never pass a key as a command argument. ax logout signs out of the selected workspace. For API keys, it removes only the local copy; revoke the key in Abbit to invalidate other copies.

Select a project workspace

ax context init
ax context set --tracker-id <tracker-id>
ax context show

One saved workspace is selected automatically. With multiple saved workspaces, bind the project using context init or pass --workspace <id> for a single command. ax login --local logs in and binds the project together; plain login only saves the login.

Use commands

ax tracker current item list
ax tracker current item <item-id> comment add --input.body 'An update'
ax beta wiki <wiki-id> search 'authentication'
ax catalog refresh
ax --help

Commands and flags come from the tools available through Abbit MCP. Help uses the cached command catalog; catalog refresh updates it.

Flag values are explicit, including booleans: --input.enabled=false. Use --args-json '{...}' or --args-file <path> for complex values, preserving the tool's JSON field names. --args-file - reads stdin. Duplicate or overlapping inputs are rejected.

Commands return one page of results. When a mutation accepts an idempotency key, AX generates one if omitted and reports the effective key. If the outcome is unknown, inspect the remote state before retrying and reuse that key.

Scripts and MCP clients

Add --json for machine-readable output. The version-1 envelope preserves the MCP result and reports effective idempotency keys in client.idempotencyKey. Exit codes are 0 for success, 2 for local input or configuration errors, and 1 for execution failures.

To connect an MCP client, configure command ax with arguments ["mcp", "serve"]. Sign in first and use --workspace <id> when the client needs an explicit workspace:

ax --workspace <id> mcp serve

Stdio stdout is reserved for MCP protocol messages.

Shell completion

Activate completion in your shell:

# Bash
source <(ax completion bash)

# Zsh
source <(ax completion zsh)

Completion uses the local command cache and works offline. Run ax catalog refresh to update it. AX does not edit your shell startup files.

Attachments

Use Tracker commands to initiate, complete and publish uploads. Transfer the file bytes with:

ax attachment upload --tracker-id current --item-id <id> --upload-id <id> --file ./attachment.pdf
ax attachment download --tracker-id current --item-id <id> --attachment-id <id> --file ./download.pdf

Uploads accept regular files up to 25 MiB. Downloads verify size and checksum and never overwrite an existing file. The transfer commands do not complete or publish uploads automatically.

Troubleshooting

  • For a missing or expired login, run ax login for the intended workspace.
  • If login --local saves the login but cannot bind the project, fix the reported context error and run ax context init --workspace <id>.
  • If a crash leaves a context or cache .lock file, confirm no AX process is writing that file before removing the stale lock and retrying.
  • AX and the standalone abbit-mcp command use separate credential stores and require separate logins. Do not copy credentials between them.