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

pirateskills

v1.0.2

Published

Pirate Skills from your terminal: events, offers, your wallet and every agent tool, with your API key.

Downloads

892

Readme

pirateskills

Pirate Skills from your terminal – and from any agent, script or cloud session that can run a command.

Pirate Skills is growth marketing and vibe coding for founders and marketers, from Cologne: free events, the Growth Codex and the Builder Codex, two monthly passes and a live cohort with Ben Sufiani. This CLI talks to the same agent door as our MCP server and HTTP API, so anything an AI assistant can do for you there, a script can do here.

  • No dependencies, about 28 kB installed
  • Node.js 18 or newer
  • MIT licensed

Install

npm install -g pirateskills

Or run a single command without installing:

npx -y pirateskills events --limit 3

Quick start

pirateskills events                       # upcoming events, soonest first – no key needed
pirateskills search "activation metrics"  # search the Growth Codex, the Builder Codex and Insights
pirateskills offers                       # what is for sale, with live prices

pirateskills login                        # save your API key
pirateskills wallet                       # your gold, emerald and diamond balances
pirateskills register <event-id>          # register for a free event (asks y/N first)

Commands

| Command | What it does | Needs a key | |---|---|---| | pirateskills events [--type "Pirate Lab"] [--limit 10] | Upcoming events, soonest first, with their ids | no | | pirateskills offers | What is for sale, with live prices | no | | pirateskills search <query> [--limit 5] | Search the Growth Codex, the Builder Codex and Insights | no | | pirateskills tools | Every tool the door offers you, with its input | no | | pirateskills login | Check an API key and save it | – | | pirateskills logout | Forget the saved key | – | | pirateskills whoami | Who the key belongs to | yes | | pirateskills wallet [--limit 10] | Gold, emerald and diamond balances and recent history | yes | | pirateskills access | What you have unlocked | yes | | pirateskills register <event-id> [--yes] | Register for a free event | yes | | pirateskills checkout <offer-key> [--quantity 3] [--currency eur\|usd] [--yes] | A Stripe checkout link – never a charge; you pay on Stripe's page | yes | | pirateskills run <tool> --json '{...}' [--yes] | Run any tool the door offers, with its input as JSON | depends on the tool |

pirateskills --help prints the same list.

Flags

| Flag | Meaning | |---|---| | --yes, -y | Skip the y/N question before a tool that changes something | | --raw | Print the JSON answer instead of the short summary | | --base-url <url> | Talk to another site, e.g. http://localhost:3333 – https only, except for this machine | | --version | Print the version |

API keys

Public commands (events, offers, search, tools) work without a key and are free. Everything about you needs an API key:

  1. Sign in at pirateskills.com and open Settings → Manage account → API keys.
  2. Add a key with a name you will recognise and an expiry. Copy it – it is shown once.
  3. Run pirateskills login and paste it, or set PIRATESKILLS_API_KEY in the environment.

Each signed-in tool call costs one gold from your wallet, so what your scripts and agents did shows in your wallet history. A command that changes something asks y/N first; --yes skips the question for scripts.

Where the key is stored

One JSON file, readable only by you (mode 600):

| System | Path | |---|---| | macOS | ~/Library/Application Support/pirateskills/config.json | | Linux | $XDG_CONFIG_HOME/pirateskills/config.json (default ~/.config) | | Windows | %APPDATA%\pirateskills\config.json |

Where the key is sent

Only to pirateskills.com and to this machine (localhost). Pointed at any other address with --base-url or PIRATESKILLS_API_URL, the CLI runs signed out and says so, and login refuses – so a command copied from a page you read cannot hand your key to someone else. To use your key with another host you trust, name it in PIRATESKILLS_TRUSTED_HOST. Plain http:// is refused except for localhost.

Environment variables

| Variable | Meaning | |---|---| | PIRATESKILLS_API_KEY | Your API key; wins over the saved one, so cloud sessions and CI never need login | | PIRATESKILLS_API_URL | Another site to talk to, like --base-url | | PIRATESKILLS_TRUSTED_HOST | Another host your key may be sent to, e.g. a preview address; comma-separated | | PIRATESKILLS_CONFIG_DIR | Where to keep the config file instead of the default above |

Exit codes

| Code | Meaning | |---|---| | 0 | Done | | 1 | The tool or the request failed | | 2 | Wrong usage – a missing argument or an unknown flag | | 3 | No key, or the key is invalid, expired or revoked | | 4 | Your wallet has no gold left; nothing ran | | 5 | Too many requests from your address this minute; wait and retry |

For agents and scripts

# Machine-readable output for any command
pirateskills events --limit 5 --raw

# Run a tool directly; --yes because nobody is there to answer y/N
PIRATESKILLS_API_KEY=... pirateskills run register_for_event --json '{"eventId":"2026_10_21_builder_lab"}' --yes

Agents that speak MCP can skip the CLI and connect to https://pirateskills.com/mcp directly – step by step for Claude, ChatGPT, Cursor and Codex at pirateskills.com/agents.

What it touches

  • Network: only the Pirate Skills site you point it at (https://pirateskills.com by default).
  • Disk: only its own config file, above.
  • Nothing else: no shell commands, no telemetry, no dependencies.

Versions

Within 1.x we only add – new commands, new fields – and never remove or change what is there. The HTTP API behind it follows the same rule: a version is retired only after at least 90 days' notice (details).

More

  • Every tool and its input: https://pirateskills.com/docs/tools
  • Authentication for agents: https://pirateskills.com/auth.md
  • The API description: https://pirateskills.com/openapi.json

Made by Pirate Skills GmbH, Cologne – contact.