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

@pendo/novus-cli

v0.1.3

Published

Register for and set up Novus from the command line — built for humans and AI agents

Readme

@pendo/novus-cli

Register for and set up Novus from the command line — built for humans and AI agents.

npx @pendo/novus-cli@latest init

Always invoke via @latest: a bare npx @pendo/novus-cli reuses the npx cache and can silently stay on an old version; @latest re-resolves the dist-tag on every run.

init walks the whole journey: create an account, verify your email, pick the Pendo app, connect GitHub, run the setup scan, and surface the Novus install pull request.

Commands

| Command | Purpose | | ---------------------------- | --------------------------------------------------------------------------- | | novus init | Full journey — register/login → connect → setup scan → install PR | | novus register | Create an account + subscription | | novus login | Sign in with email/password or SSO | | novus status | Where you are in the journey + the exact next command to run | | novus apps list · use <id> | Pick the Pendo app to set up — use takes an id, an app name, or default | | novus connect github | Connect GitHub and link a repository | | novus setup | Start or attach to the setup scan (--watch, --no-watch, --restart) | | novus mcp | Print or --apply MCP config for Claude Code / Cursor / Codex | | novus whoami · logout | Session management | | novus telemetry [on\|off] | Show or set CLI telemetry | | novus reset [--all] | Clear local setup state so init starts over |

Global flags

| Flag | Purpose | | ------------ | ------------------------------------------------- | | --json | Machine-readable NDJSON output (for AI agents) | | --quiet | Suppress non-essential output | | --no-input | Never prompt; missing input is an error | | --verbose | Log API interactions to stderr (secrets redacted) | | --version | Print CLI version | | --help | Full command list |

For AI agents

Every command supports --json (stable envelope + NDJSON progress events) and typed exit codes — exit 4 always means "a human must act" and the envelope says exactly what to relay and how to resume. The whole journey is resumable: agents loop novus status --json → run next_steps[0].run → repeat until complete. For the full automation contract, see CLAUDE.md.

Exit codes

| Code | Meaning | | ---- | -------------------------------------------- | | 0 | Success | | 1 | Unexpected error | | 2 | Usage / validation error | | 3 | Auth required — run novus login | | 4 | Waiting on a human — relay waiting_on | | 5 | Precondition / conflict | | 6 | Network error | | 7 | Timeout (server-side work continues) | | 8 | Rate-limited — respect retry_after_seconds |

Telemetry

After a successful sign-in or registration, the CLI reports the local environment (installed agent CLIs, whether the Novus MCP server is configured — never repo names, paths, or file contents) as a telemetry event. The first send prints a notice. Opt out any time with novus telemetry off, or set NOVUS_TELEMETRY=off; telemetry is best-effort and never blocks or fails a command.

Terms of Service

register (and init) asks you to accept the Novus Terms of Service before creating an account. --accept-tos records acceptance up front for unattended use.