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

craig-cli

v0.16.0

Published

Craig local control plane CLI

Readme

An agnostic orchestrator TUI, for the people.

npm License: MIT Node 22+

Website · Documentation · CLI reference

Craig gives every task its own Git branch, isolated worktree, and live PTY, then keeps the agents, changes, pull requests, and checks together in one keyboard-driven workspace.

Bring the agent CLIs you already use—Claude Code, Codex, or Cursor. Craig is not another coding agent; it is the heads-up display and controls around them.

It's like a game, except the PRs are real.

Why Craig?

  • Run agents in parallel. Each task works in an isolated Git worktree, so one agent does not overwrite another.
  • Keep the native agent experience. Every runner opens in a real PTY instead of a lowest-common-denominator chat wrapper.
  • Stay in flow. Launch agents, move between tasks, inspect changes, and watch PR checks without leaving the keyboard.
  • Work across repositories. Treat one repo or a directory of repos as a workspace while preserving real repository boundaries.
  • Let agents operate the workspace. The same task model backs the TUI and CLI, so agents and scripts can inspect context and perform Craig actions directly.
  • Leave and come back. A local daemon keeps agent sessions and PR synchronization alive when the foreground TUI closes.

Install

npm install -g craig-cli

Craig requires Node.js 22+ and git. Install and authenticate at least one supported runner: Claude Code, Codex, or Cursor. Pull request discovery and review status also require an authenticated gh CLI.

The Pi coding agent is available as an opt-in feature preview under Options > Feature Previews.

The Agent file opening preview lets an attached agent run craig file open <path> to display any readable text file directly in the active Craig TUI.

Quick start

Run craig in a full-screen terminal, then work through the TUI:

  1. Select + New Workspace and choose a Git repository. You can also choose a parent directory to work across its direct-child repositories.
  2. Press n, name the task, and use Ctrl+R to choose Claude Code, Codex, or Cursor. Press Enter to create it.
  3. Craig creates an isolated branch and worktree, starts the runner there, and takes you directly into its live PTY. Tell the agent what you want it to do.
  4. Press Ctrl+] to return to Craig's control mode. Move between panels with Tab, navigate with the arrow keys or hjkl, and press Enter on a task to reattach to its agent.
  5. Press n again to start more tasks while the first agent keeps working. Each task remains isolated in its own worktree.
  6. Use Files to inspect the worktree and Review to follow diffs, pull requests, checks, and review state. Ask the agent to commit, push, create the PR, or merge from its PTY; Craig keeps the status in sync.

See the TUI reference for every panel and keyboard shortcut.

Local by default

Craig stores workspace state, task records, worktrees, and runtime metadata under .craig/ at the workspace root. Do not commit this directory; ignore .craig/ when the workspace root is itself a Git repository. Craig does not require an account or hosted control plane. Your agent CLIs still use their own authentication and network services.

Go deeper

Contributing

Craig is open source under the MIT License, but it is not a community-maintained project. Bug reports and focused questions are welcome. Please read the contribution guide before proposing a change and report security issues through the security policy.

Development

pnpm install
pnpm test
pnpm typecheck
pnpm lint
pnpm build
pnpm build:npm
pnpm package:audit
pnpm package:smoke

The npm package is published as craig-cli from packages/cli.