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

@lanquarden/pi-dev-worktrees

v0.6.0

Published

Pi extension for isolated branch workspaces — git worktrees via wtp and optional devcontainer targeting

Readme

@lanquarden/pi-dev-worktrees

A pi extension that provides isolated branch workspaces using git worktrees (via wtp) and optional devcontainer targeting.

Features

  • Worktree isolation — create/switch/remove git worktrees per branch; all bash commands run inside the active worktree
  • Devcontainer targeting — start, stop, rebuild, and route bash commands into the project's devcontainer
  • File tool routing — read/write/edit with relative paths automatically route to the active worktree
  • Composable — worktree + devcontainer combine: commands run in the container at the worktree path
  • HOST: escape hatch — prefix any command with HOST: to bypass all routing
  • Git/gh passthrough — git, gh, and find commands always run on the host
  • External/Herdr mode — disable extension-owned worktrees while keeping cwd-rooted devcontainers
  • Native TUI feedbackDEV, HOST, RTK, RTK fallback, managed CWD, and error chips without changing executable commands
  • Local generated-artifact excludes — uses Git's resolved info/exclude; never modifies .gitignore

Install

pi install npm:@lanquarden/pi-dev-worktrees

Requirements

Configuration

~/.pi/agent/pi-dev-worktrees.config.json supports independent default-on capability flags; repos is optional:

{
  "worktrees": { "enabled": false },
  "devcontainer": { "enabled": true },
  "advisories": { "rtkLoadOrder": "once" }
}

With worktrees disabled, pi's exact session cwd is authoritative. No .wtp.yml, wtp invocation, worktree/file-path routing, managed-worktree dashboard UI, or worktree tool remains active. Devcontainer discovery, override/log generation, probes, labels, lifecycle calls, and exec routing all use that exact cwd, including non-Git directories. Config changes require /reload or a new session runtime.

Set devcontainer.enabled to false to disable all container side effects, routing, tool exposure, and feedback independently of worktrees.

advisories.rtkLoadOrder controls the pi-rtk-optimizer load-order startup info message: "once" (default) shows it only once per machine, "always" shows it every session, "off" suppresses it entirely. Once shown, the marker persists at ~/.pi/agent/pi-dev-worktrees.advisory-state.json; delete that file to see the advisory again. Conflict warnings (e.g. an incompatible spawnHook-based pi-rtk) are always emitted regardless of this setting.

Generated artifacts are excluded through git rev-parse --git-path info/exclude, including linked worktrees and external Git directories. .gitignore is preserved byte-for-byte.

Plain-pi status shows only container:starting or container:on. TUI bash rows preserve stock execution/results and add width-aware routing chips; external mode omits CWD.

Commands

| Command | Description | |---------|-------------| | /worktree [set] <branch> | Create or switch to a wtp-managed worktree | | /worktree off | Deactivate worktree routing | | /worktree status | Snapshot of all worktrees and container status | | /worktree remove <branch> | Remove a worktree | | /worktree prune | Clear stale worktree metadata | | /worktree init | Interactively create .wtp.yml | | /worktree hooks ... | Manage post-create hooks | | /devcontainer on | Start or reuse the devcontainer | | /devcontainer off | Disable container targeting (leaves container running) | | /devcontainer stop | Stop the container entirely | | /devcontainer rebuild | Rebuild the container image (--build-no-cache) | | /devcontainer logs | Tail the startup log |

When a capability is disabled, its LLM tool is removed. The corresponding slash command remains registered but is explanatory and non-mutating.

See the repo README for full documentation.

Dashboard Plugin

For pi-agent-dashboard integration, install @lanquarden/pi-dev-worktrees-dashboard-plugin.