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

@4pm/cli

v1.5.11-b

Published

4PM CLI — drives Claude/Codex CLIs on AI worker machines (Node + TypeScript)

Readme

4PM CLI (@4pm/cli)

The agent that runs on a 4PM worker machine. It pairs with the 4PM server, opens an encrypted WebSocket, and orchestrates the AI CLIs (claude / codex) plus git / gh / glab / shell on your machine — streaming their output back to the 4PM dashboard.

This repository is the public, source-available mirror of the 4PM CLI. It is published for transparency and security auditing — you run an agent that spawns processes and uses your git credentials locally, so you can read exactly what it does. It is not open source: see LICENSE (source-available, all rights reserved).

Install (users)

npm i -g @4pm/cli      # official distribution (npm)
4pm link               # pair with your 4PM server, then:
4pm start              # run the worker

Container images are published to ghcr.io/4azuo/4pm-cli. Configuration is via 4pm link

  • the profile's config.json; environment variables are documented in .env.example.

Security note: use an https:// server URL in production. The WebSocket session encryption (ephemeral ECDH) protects confidentiality but does not authenticate the server — TLS does. Connecting over plaintext to a non-local host emits a warning.

Build from source

The repository is standalone — it needs no other 4PM code. The @4pm/* shared packages are provided as a trimmed, vendored subset under vendor/ (only the code the CLI actually uses; server-internal types are excluded).

pnpm install
pnpm build       # → dist/index.js (self-contained bundle)
pnpm typecheck

How this repo relates to 4PM

The 4PM CLI is developed inside the private 4PM monorepo and embedded there as a git submodule. The vendor/ subset is generated from the monorepo's shared packages by scripts/vendor-shared.mjs; do not hand-edit it. Releases are built and signed from the monorepo and published here (npm + GitHub Release tarball + GHCR image).

Layout

  • src/core/ — orchestration; src/commands/ — subcommands (link/start/attach/…).
  • src/services/ — server REST calls; src/ui/ — the Ink TUI (4pm start on a TTY).
  • src/common/, src/utils/, src/config/ — shared helpers, pure functions, config.
  • vendor/@4pm/* — generated trimmed shared subset (see above).