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

@mbokinala/pstack

v0.2.2

Published

Portable pstack workflows for Codex, Claude Code, and Cursor

Readme

pstack

Port of @poteto's pstack workflows for Codex, Claude Code, and Cursor. This independent port builds from a pinned upstream Git submodule and installs a complete skill bundle. It is not an official Cursor or OpenAI package.

Installation

Codex plugin from GitHub

Install the pstack Codex plugin from mbokinala/pstack:

  1. Register the GitHub marketplace from your terminal:
codex plugin marketplace add mbokinala/pstack
  1. Open the desktop Plugins Directory, select the pstack marketplace, and install the pstack plugin.
  2. Start a new conversation and invoke $poteto-mode, for example:
$poteto-mode Help me implement this feature and verify it works.

pstack is the plugin name; $poteto-mode is the entry skill. All 51 skills retain their existing names, including $how and $interrogate.

The repository includes the generated plugin under plugins/pstack, so marketplace installation needs no Node.js build or upstream submodule checkout. Optional helper workflows still require their documented tools (such as Bun and GitHub CLI). The plugin bundles the two agent prompts as skill references; it does not install custom agents into .codex/agents.

Use either the Codex plugin or the Codex file installer to avoid duplicate skills. The installer below remains available for all three hosts.

File installer

Node.js 22 or newer is required for the installer. From this checkout:

npm ci
npm run check
node bin/pstack.mjs install --providers=codex,claude --scope=project --target=/absolute/path/to/your-project
node bin/pstack.mjs doctor --scope=project --target=/absolute/path/to/your-project

In Codex, invoke $poteto-mode. In Claude Code or Cursor, invoke /poteto-mode. Individual skills such as $how or /interrogate remain available. Reload the host if newly installed skills or agents do not appear.

The installer writes:

| Provider | Skills | Custom agents | |---|---|---| | Codex | .agents/skills/ | .codex/agents/ | | Claude Code | .claude/skills/ | .claude/agents/ | | Cursor | .cursor/skills/ | .cursor/agents/ |

The two custom agents are poteto-agent and comment-sicko. Workflows can use their bundled prompt references if custom-agent registration is unavailable. Native delegation itself is optional, with explicit limits on what a sequential fallback proves.

For all projects on your machine:

node bin/pstack.mjs install --providers=codex,claude --scope=global

Global installation targets your home directory. --target overrides the target directory, including for isolated global-scope testing. Project installations are ordinary files that a team can commit. Global installation applies only where the host reads local user files; it does not provision cloud environments.

Update and remove

Codex plugin

Manage the pstack plugin through the desktop Plugins Directory. Start a new conversation after changing the installed version. The pstack update and pstack remove commands below apply to file installations, not marketplace plugins.

For a fixed release, register an existing Git tag instead of following the default branch:

codex plugin marketplace add mbokinala/pstack --ref <release-tag>

Replace <release-tag> with a tag published in the repository.

File installer

Run these from the target project using the CLI from a newer built checkout or release package:

pstack update --scope=project
pstack remove --providers=claude --scope=project

For this unpublished checkout, replace pstack with node /absolute/path/to/pstack-port/bin/pstack.mjs. update applies the version bundled with the running CLI; it does not fetch npm or upstream Git by itself. Install/update/remove accept --dry-run.

.pstack/install.json records managed file hashes and release provenance. Installation refuses collisions with unmanaged or locally edited files before changing any files. Updates retire unchanged files removed from a release. Removal preserves modified files and unrelated content. User settings in .pstack/config.json are never managed by the installer.

Keep installed skill names distinct from other copies of pstack. Do not install this bundle alongside the original plugin into the same host unless you resolve duplicate names.

Configure models

Run setup-pstack in the coding agent, or create .pstack/config.json in your project:

{
  "version": 1,
  "roles": {
    "interrogate reviewers": ["inherit-parent", "inherit-parent", "inherit-parent"]
  }
}

All roles default to the parent model. User settings at ~/.pstack/config.json are read first; project role values override them. Real model identifiers are used only when the host supports them. Multiple inherited-model reviewers provide separate contexts, not cross-provider model diversity.

Transcript-based skills use the current conversation or project-scoped exports supplied by the user/host. They do not guess internal Codex, Claude, or Cursor history locations. See the installed references/pstack-runtime.md for the optional transcript configuration schema.

What is included

  • All 47 upstream skills, 23 playbooks, and two agent prompts.
  • Portable replacements for deslop, control-cli, control-ui, and create-skill, bringing the bundle to 51 skills.
  • Existing orchestration and GitHub PR watcher helpers.
  • Explicit adaptations for model setup, delegation, transcript access, webhook setup, and long-running work.

The four dependency replacements implement the required workflow locally. They do not install browser automation, MCP servers, or third-party services.

Capability limits

  • Agent Skills does not supply persistent modes, scheduling, background wakeups, or cloud worker infrastructure. The workflows use exposed host capabilities and report missing ones.
  • Native model selection cannot reproduce Cursor's mixed Claude/GPT/Grok panels unless the host exposes equivalent models. Unavailable overrides fall back with disclosure.
  • Historical recall needs supplied/exported history. Reflection on the current conversation works without private history access.
  • Browser/desktop proof requires an available automation tool or project harness. Missing live verification remains a blocked verification gate.
  • The PR watcher and orchestration tools require Bun; the watcher also needs authenticated GitHub CLI. Some orchestration commands require Graphite. The portable worktree audit requires Python 3, Git, and optionally du for sizes.
  • The helper bootstrap installs its locked Bun dependencies beside the helper on first use, requiring network access and a writable skill directory. The installer itself requires no runtime npm dependencies or network access.
  • Benny's Cursor automation service pack is excluded. make-bot-ui can use an existing webhook receiver or an explicitly labeled local mock; it does not provision Cursor routines.
  • These are instruction workflows, not enforcement of policy or automatic permission grants. Host rules and the user's authorized scope still apply.

Development

See DEVELOPMENT.md for upstream maintenance, release distribution, and validation.

Sources and license

The content follows the Agent Skills specification, with host metadata based on Codex skills and Claude Code skills. The distribution approach is inspired by Impeccable; its installer code is not copied here.

MIT. Upstream pstack is copyright Lauren Tan. See LICENSE and NOTICE.md.