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

pi-gui-extension

v0.4.1

Published

Pi extension for a localhost multi-session web UI.

Readme

pi-gui-extension

Pi extension for a localhost multi-session web UI over the same coding-agent SDK as the terminal.

Install

pi install npm:pi-gui-extension

Requires Node.js ≥ 20 and a working pi install (models / auth already set up).

Git and path installs work from the repository because package-root dist/ is committed. After changing web/, run npm install --prefix web && npm run build before testing the local package with pi install <path>.

pi remove npm:pi-gui-extension

Usage

In any pi session:

/gui                          # live-attach current session + open browser
/gui <sessionId>              # open that session (live if in-process, else from disk)
/gui open <sessionId>         # same
/gui open <sessionId> 4000    # custom port
/gui stop                     # shut down

/gui ensures the host runs in this process (takes over the port if needed), then opens the browser on the session. Pass a session id (or path) to target a specific chat; omit it to use the current TUI session.

How this relates to pi (disk vs live, ownership): ownership documentation.

Localhost only (127.0.0.1). No auth — treat it like the TUI on your machine.

Features

  • Multi-session — open, resume, and switch chats; concurrent turns
  • Streaming — assistant text, tools, and thinking over SSE
  • Steer & abort — send while the agent works; stop a turn
  • Models & thinking — picker and levels from the status bar / palette
  • Command palette (⌘K) — /new, /resume, /session, models, skills, export, …
  • Skill workspace — browse loaded skills, view or edit Markdown, and create/import project or user skills directly into pi
  • Git Changes — working-tree status and diffs for the session cwd
  • Images & bash — paste/drop images; !command in the composer
  • Theme — light / dark

Configuration

| Variable | Default | Meaning | |----------|---------|---------| | PI_GUI_PORT | 3847 | HTTP port | | PI_GUI_SESSION_IDLE_MS | 86400000 (1 day) | Close hub session when no SSE clients (0 disables) |

Models, auth, skills, and extensions come from pi — this package does not add a second config system.

License

MIT

Documentation

For humans: pi-gui.pages.dev is a TanStack Start landing page with install, usage, and customization examples.

For coding agents: read llms.txt before changing code. It contains the repo map, safe change boundaries, customization contract, anti-patterns, and test commands.

npm install --prefix docs
npm run dev:docs       # local docs server
npm run build:docs     # TanStack Start build in docs/dist/