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

wolfpack-bridge

v1.6.24

Published

Wolfpack is a self-hosted control room for persistent coding-agent terminals on your own machines.

Readme

Wolfpack — browser terminal manager for AI coding agents

CI License: MIT Platform Version

Run coding agents remotely—from your desktop or phone. Keep their persistent terminals on your own machines, then monitor and control them even when you are away from your desk.

Wolfpack is a self-hosted control room built for remote and mobile use. Connect directly over your private Tailscale network without a Wolfpack-hosted relay or account. From the phone PWA, you can see which agents need attention, open a live terminal, and respond without returning to the host machine.

Built-in coding-agent provider choices: Claude Code, Codex, Gemini CLI, Cursor, Pi. Shell is the always-available fallback, and custom commands or wrappers on PATH are supported separately.

Sessions live in a Rust PTY broker, not the web server, so closing the browser or restarting only the web server does not end them; a broker restart or login-service reinstallation can terminate them.

Homepage: almogdepaz.github.io/wolfpack · Agent-readable overview: llms.txt

desktop demo

mobile views

Monitor your sessions, spot agents waiting for input, and take over a live terminal from the phone PWA.

security: wolfpack gives browser users shell-level control over configured projects. Keep it private to a trusted Tailnet. If other people share the Tailnet, configure device/user ACLs and consider JWT. Session control follows the ordinary global API auth policy when configured and has no inter-session authorization layer; read the full trust model.

quickstart

curl installer: persistent CLI

curl -fsSL https://raw.githubusercontent.com/almogdepaz/wolfpack/main/install.sh | bash

The installer immediately launches setup. After setup, if you accepted the login service, open the printed URL. If you declined the login service, run wolfpack, then open the printed URL. In either case, run wolfpack doctor to verify the installation.

On later runs, wolfpack stages current binaries, runs deferred setup to verify configuration and print the local and verified remote URLs plus a QR code, then restarts an existing configured service server-only. Sessions on a running broker remain attached. See what the installer does for the full lifecycle boundary.

Bunx or npm: package runner

bunx --bun wolfpack-bridge@latest
# or, with Node.js 22+
npx --yes wolfpack-bridge@latest

Package runners use the same setup wizard but do not add wolfpack to PATH. Use the runner prefix for every later command.

first success

you’ll choose: a projects directory, port, Tailscale remote access, optional Pi integration, and whether Wolfpack starts at login.

success looks like: a local URL; a verified Tailnet HTTPS URL and QR code when remote access is configured; and a diagnosis command with no unresolved failures.

| install path | verify | | --- | --- | | curl | wolfpack doctor | | Bunx | bunx --bun wolfpack-bridge@latest doctor | | npm/npx | npx --yes wolfpack-bridge@latest doctor |

Next, follow the first-session guide to create a terminal, run a harmless command or task, and reopen the same session.

Open the local URL on the host machine. The project picker lists projects under the configured directory by default; Open existing directory can launch an existing server-local absolute path elsewhere. For phone or remote access, scan only the verified Tailnet HTTPS QR code.

To uninstall: wolfpack uninstall --yes (curl), bunx --bun wolfpack-bridge@latest uninstall --yes (Bunx), or npx --yes wolfpack-bridge@latest uninstall --yes (npm with Node.js 22+).

built for remote and mobile work

| instead of | Wolfpack gives you | | --- | --- | | being tied to the host machine | remote browser and phone control for agent terminals | | SSH and tmux juggling | one visual control room with live session previews | | missing an agent waiting for input | needs-input states and optional phone notifications | | hosted remote-control SaaS | direct private Tailnet access, without a Wolfpack relay or account | | sessions dying with the web server | broker-owned persistent PTYs | | managing one host at a time | trusted multi-machine session control |

  • control agents while away from your desk — check progress, spot sessions that need input, and reopen live terminals from a trusted phone or browser.
  • use your phone as a real control surface — install the PWA, use touch-friendly terminal controls, and optionally receive notifications.
  • return to the same work on desktop — move between the mobile session list, desktop terminal grid, and direct terminal attach without replacing the underlying session.
  • use the agents you already run — choose a built-in command or configure a custom command on PATH in Settings → Agents.

The multi-machine dashboard and desktop sidebar show only local sessions and currently ready, handshake-verified Wolfpack peers. Generic, offline, malformed, and unreachable Tailnet candidates stay out of the control room; Settings → Machines retains bounded discovery diagnostics. Peer headers show the machine display name and hostname without rendering internal node, installation, or routing identities.

docs

agent skills

wolfpack-tailnet-control works with all agent harnesses that support Agent Skills. The opt-in Pi flow in wolfpack setup copies the bundled control skill, then installs Pi Tasks with pi install npm:@sgtbeatdown/pi-tasks. wolfpack-tailnet-control controls sessions; wolfpack-pi-task-delegation teaches Pi to use agent_task_* for durable task routing.

For a manual audited install, clone or update https://github.com/almogdepaz/wolfpack, review skills/wolfpack-tailnet-control/SKILL.md, then place the skill in ~/.pi/agent/skills/, ~/.agents/skills/, or ~/.claude/skills/. Start a fresh agent context afterward. Platform binaries do not expose skills as files; detailed safe symlink and copy instructions are in agent skills.

advanced automation

Target the supported session-control surface on a configured Tailnet peer with the global selector:

wolfpack --machine <short-name-or-fqdn> list --json
wolfpack --machine <short-name-or-fqdn> session status <session-or-id> --json

Short names use the exact suffix from configured tailscaleHostname; full names must be canonical hostnames in that same suffix. Wolfpack sends the normal JWT authorization on a bounded GET /api/machine handshake and subsequent requests. Invalid, incompatible, redirected, timed-out, or unreachable targets fail closed without localhost fallback. Remote JSON successes add verified "machine" identity while retaining server-owned sessionId values. agent spawn still resolves its parent on the selected machine and does not invent cross-machine lineage.

Create a top-level project session with an initial instruction:

wolfpack session create project-name --harness pi --plan .plans/000-task.md --json

Spawn a same-harness child agent:

wolfpack agent spawn project-name --plan .plans/000-review.md --notify-parent --json

To select an existing directory outside the configured projects root, replace the project name with --project-dir <path> on either command. Relative CLI paths are resolved locally; the server accepts and canonicalizes only existing absolute directories.

Use wolfpack session create <project> for top-level work and wolfpack agent spawn <project> for a same-harness child. The server validates the project selector and command, allocates a stable broker session ID, and delivers the initial instruction directly to the harness. For the full command surface and automation contract, use session control and the control API schema.

contributing

See CONTRIBUTING.md for development setup, the asset pipeline, and PR conventions.

For bugs, feature requests, questions, and usage help, use support and reporting. Report suspected vulnerabilities through private security reporting, never a public issue or discussion.

license

MIT