michael-denyer /pstack-claude

Claude Code, Codex, Copilot, Pi, OpenCode, Muse, Gemini, and Prime Agent versions of Poteto's pstack. Rigorous agent workflows with Cursor primitives translated for other harnesses.

★ 3,875⑂ 352👁 7▤ 83
JavaScriptCreated 2026-05-26
3,875
stars
+0+91+2,474
352
forks
7
watchers
–
prs
–
issues
83
releases
–
discussions

README

pstack




Lauren Tan's pstack is an opinionated Cursor skill stack that improves agent outcomes. This is a port for Claude Code, Codex, Pi, GitHub Copilot, Muse, and other agent harnesses. It tracks upstream and also carries named policy forks, each declared in tools/forks.json.

Tell poteto-mode your goal and it will invoke the correct workflow for the task. It keeps your code concise, simple and verified.

For concurrency bugs and invariants that tests cannot reach, /create-formal-verification-skill picks the riskiest property in your code, verifies it with a tool that fits, and leaves a project skill the next agent reruns. The separate agent-formal-verify plugin goes deeper on the method, with guided TLA+ model checking, Lean proofs, and Kani for Rust.

 Built for Claude Code

This port translates upstream's Cursor skills for Claude Code before installation. Upstream's Claude Code install asks agents to translate Cursor names at runtime, using extra tokens and relying on them to apply the mapping correctly. This port also adds a SessionStart hook that routes tasks to poteto-mode.

 Install


Claude Code

Run in Claude Code 2.1.292 or later:

text
/plugin marketplace add michael-denyer/pstack-claude
/plugin install pstack@pstack-claude


Claude Code leaves auto-update off for third-party marketplaces, so pstack stays on the version you installed. To turn it on, run /plugin, open the Marketplaces tab, select pstack-claude, and choose Enable auto-update. To update once by hand, run claude plugin update pstack@pstack-claude.





Codex

Run in your terminal:

shell
codex plugin marketplace add michael-denyer/pstack-claude
codex plugin add pstack@pstack-claude


Invoke a skill by typing $ and its name, such as $poteto-mode or $babysit, then choosing its entry, which inserts $pstack:. /skills lists every skill.




Pi

Run in your terminal:

shell
pi install git:github.com/michael-denyer/pstack-claude


The package loads the skills and the pstack Pi extension, which adds the subagent, question, and wake-up tools the skills use, plus /loop and the routing instruction. Invoke a skill with /skill:.




GitHub Copilot

Run in your terminal:

shell
copilot plugin marketplace add michael-denyer/pstack-claude
copilot plugin install pstack@pstack-claude


This installs pstack for the Copilot CLI and the GitHub Copilot app, which share ~/.copilot. Start a new session afterwards. Copilot ships no default pstack models, so the first skill that needs one runs setup-pstack to pick from the models your account lists, and later sessions reuse that choice.

The Copilot build is tested on Copilot CLI 1.0.87 through 1.0.92. On those versions the routing hook's context reaches the session alongside other plugins' session-start context. If a later version keeps only one plugin's context, setup-pstack offers a standing instruction for ~/.copilot/copilot-instructions.md instead. On 1.0.92, once the CLI caches its computer-use experiment assignment, copilot -p sessions l

Snapshot: 2026-11-04T14:00:00Z · Data license Apache-2.0 · JSON