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

@9punk/9cli

v0.1.14

Published

9CLI — a local multi-session command center for Claude Code and other CLI agents. Finds your projects, spawns real sessions in them, and shows every one on a board in your browser.

Readme

9CLI

A local multi-session command center for Claude Code and other CLI agents.

You already run more than one agent at a time. 9CLI is the board that shows you all of them at once — which one is waiting on you, which one is working, which one finished — so you stop alt-tabbing between terminal windows to find out.

npx @9punk/9cli

No install, no config file. It starts a daemon on 127.0.0.1, prints a URL and opens the board in your browser. Point it at the folder your projects live in once; it finds every repo underneath and gives each one an Activate button.

The URL is always printed, so a headless box, a container or an SSH session works exactly as well — open it yourself. --no-open skips the browser. Run it again while one is already running and it opens the existing board rather than starting a second one; 9cli stop ends a running daemon and everything it started.

9CLI.dev


What it does

  • Four lanes, not four windows. Every session sits in Needs you, Working, Idle or Finished. "Needs you" means a real permission or confirmation prompt is on screen and nothing is moving until you answer — the board tells you, rather than you finding out twenty minutes later.
  • Real sessions, real terminals. Each card is an actual pty running claude (or whatever you point it at) in that project's folder. You can type into it.
  • Per-project permission profiles. Read-only, Standard, Trusted or Full, chosen per project and never in bulk, applied through Claude Code's own --settings. Every card carries a badge saying what that project is allowed to do. Full asks you to confirm, once.
  • Copy output / Copy last response / History. Read from a transcript the daemon rebuilds from the session itself, not scraped off the screen — so the full-screen redraws that normally destroy your scrollback don't take the conversation with them.
  • Safely close all. Commit, push, back up and then stop — only the steps that actually apply to each project, and it verifies nothing was left running.
  • Sidekick. Keep the Claude web conversation for a project one click away. A bookmark, nothing more — 9CLI never reads or sends it.
  • Four themes, a keyboard-driven layout, and a Help panel (press ?) that is a genuine 60-second tour.

Requirements

| | | |---|---| | Node.js | 20 or newer (node -v) | | Claude Code | for the sessions to be worth watching — install guide | | git | the project scan reads branch and commit state | | A browser | the board is a web page served from your own machine |

9CLI runs a doctor check at startup and tells you which of these it could not find, so you don't have to guess.

Platforms. Windows and macOS are supported and tested. Linux is not officially supported yet — it should work, but node-pty has no prebuilt binary for it, so installing needs a C toolchain (build-essential, python3) and we are not yet testing there. Reports welcome; treat it as unsupported until this line says otherwise.

Free and Pro

Free — no account, no sign-up, no email. The whole command center: every feature, every theme, unlimited projects. Capped at 2 sessions running at the same time. You never have to sign in to use it.

Pro — unlimited concurrent sessions. Coming soon. It is not on sale yet, and the app will say so rather than showing you a checkout that does nothing. If you already hold Pro, sign in from the board and it applies to this machine.

What it sends

9CLI is local-first, and specifically:

  • The daemon binds 127.0.0.1 only. It is not reachable from your network.
  • Your code, your prompts and your session output never leave your machine. They are not uploaded, not logged remotely, and not used for anything.
  • The board fetches nothing from the internet to draw itself — fonts and terminal library are served from your own daemon.
  • Two network calls exist, and both are about your plan, not your work: an anonymous check for pricing and availability, which carries no account, no identifier and no version; and, only if you sign in, a check of what plan you are on. Signed out, the first is the only call 9CLI ever makes.

Where your settings live

~/.multicli/ — your chosen root, your session definitions and their permission profiles. Written atomically, so a crash or a reboot loses nothing. Delete the folder to start completely clean.

Nothing about what is running is persisted: a session that was live when the daemon stopped is not live now, and 9CLI will not pretend otherwise.

Nothing you type is written to disk. 0.1.10 and 0.1.11 staged a large prompt to ~/.multicli/prompts/ on the way to the session, because Windows could not hand a program that much text through a terminal in one piece. That is fixed a layer down as of 0.1.11 and the staging is gone as of 0.1.13 — a large prompt now travels straight into the session as a paste. If an older 9CLI left a prompt file behind, 9CLI removes it the next time it starts.

A note on trust

The daemon runs as you and spawns your shells. It is exactly as trusted as your terminal, and it is not a sandbox — the permission profiles configure Claude Code, they do not contain it. Point 9CLI at projects you would open a terminal in anyway.

Support

License

Proprietary. © 2026 9Punk LLC, all rights reserved. See LICENSE and the Terms of Service. 9CLI is licensed, not sold.