FA Dev Tools

English中文

pstack — Cursor Plugin for Rigorous Agent Engineering

ai/pstack-cursor-plugin · Updated · Tags: ai, cursor, agents, plugins, skills


pstack — Cursor Plugin for Rigorous Agent Engineering

TL;DR

  • pstack is an official Cursor plugin (v0.15.2, MIT, by Lauren Tan / poteto) that turns the agent into a disciplined engineering team instead of a code-volume machine.
  • Install with /add-plugin pstack, run /setup-pstack once, then just type /poteto-mode at the start of any real task.
  • 47 skills ship in it: 24 working skills plus 23 one-rule "principle" skills; /poteto-mode routes 23 playbooks and calls the rest for you.
  • If you only learn three, learn /poteto-mode, /interrogate and /how — entry point, review panel, and codebase walkthrough.

What it is

pstack is a plugin in the cursor/plugins monorepo. Its pitch is the opposite of most AI coding tooling: "the goal is not to maximize loc, in fact it's the opposite." The bet is that if one agent can be trusted to go deep and prove its work, you can run many agents in parallel without drowning in slop.

Name / versionpstack 0.15.2
AuthorLauren Tan (poteto) — React core team, ex-Meta/Netflix, at Cursor
LicenseMIT
Homehttps://github.com/cursor/plugins/tree/main/pstack
Install/add-plugin pstack
Contents47 SKILL.md files, 2 subagents, 23 playbooks, a benny automation pack, a 10-part guide

Two-step start

  1. /setup-pstack — detects which models you have, picks a reasoning budget, writes an always-applied rule mapping each role (code, judgment, review panel) to a model.
  2. /poteto-mode <your task> — the entry point. It matches your request to a playbook, opens a todo list from that playbook's steps verbatim, and pulls in the other skills as the steps fire.

Once entered it stays on across turns and applies itself whenever a playbook matches. Say so to opt out.

Default model split out of the box: code delegates (feature, refactoring, bug fix, perf, hillclimb) go to Grok; the hardest changes, prose and judgment go to Fable 5.1. Default panel is Fable 5.1 / Sol / Grok / Opus 5.

The 20 skills worth knowing

Ranked by how central each is to everyday use — the plugin publishes no download stats, so this is centrality in the README and the routing graph, not a popularity chart.

#SkillWhen to use itHow to use it
1/poteto-modeDefault entry point for any non-trivial task. Use it unless you know exactly which single skill you want./poteto-mode repro the scroll drift bug, then fix and verify
2/setup-pstackOnce, at install — and again whenever your model access changes./setup-pstack
3/howYou want a walkthrough of how a subsystem actually works, with the N+1s and surprises called out./how do we cancel runs? do we have an n+1 looking up every run?
4/whyYou want the history: why was this built this way. Discovers your MCPs at run time and queries source control, issue tracker, docs, chat, observability, error tracking and analytics in parallel./why is this feature flag not on yet?
5/interrogateYou have a diff and want several different models to try to break it, including a strict code-quality lens./interrogate review this pr.
6/architectBefore writing code that crosses a function boundary — settle the caller's usage, types and module shape first./architect this instrumentation for high signal, no false positives
7/tddFixing a bug where a cheap local test path exists. Failing test first, then the fix./tdd implement
8/blast-radiusA small-looking change, and you want to know what else it could break — proven by running code, not asserted./blast-radius on the staged diff
9/unslopCleaning up writing. Strips the AI tells out of docs, PR bodies and comments.can we unslop and tighten the new changes?
10/swarmN parallel workers across different slices, then one aggregated report./swarm check every package under packages/ against its check.sh
11/arenaN parallel attempts at the same thing, so you can cherry-pick the best parts of each./arena take my prompt to the arena verbatim
12/recallStarting or resuming work — rebuilds your recent context on a topic from your chat history and the shared record into a current-state brief./recall at the top of a resumed session
13/teachYou want to genuinely understand a change or subsystem, not just get it summarized. Runs how + why and builds one explanation diagram by diagram./teach how the scheduler works
14/no-commentsStrip comments before review. Spawns the Comment Sicko subagent, fixes accepted findings, offers structural encodings for claimed constraints./no-comments before opening the PR
15/technical-writingDocs, RFCs, readmes, PR descriptions, commit messages. Layered standard: Diátaxis + Google developer style + STE + Global English./technical-writing on the draft
16/figure-it-outNo bundled playbook fits. Designs a rigorous, auditable playbook for your specific task./figure-it-out migrate every caller to the async store
17/typescript-best-practicesReading or editing TypeScript. Grounds the type-system-discipline principle in actual syntax.Loads automatically; invoke directly when reviewing TS
18/reflectA long task just landed and you want the recipe captured as a skill edit so the next run is faster./reflect that took too long. capture what we learned
19/create-verification-skillYour project has no scripted way to prove app behaviour. Generates a project-local verify skill with a feature map, any language or platform./create-verification-skill
20/automate-meYou want your own <name>-mode skill, drafted from how you've actually worked, routing through pstack underneath./automate-me

Four more ship but are narrower: /show-me-your-work (commit a TSV decision trail), /bro (restate the last message in plain human language), /maintain-verification-skill (fix feature-map drift), /make-bot-ui (a dashboard whose buttons wake a Grok Bot over a webhook, sender-key handoff and Tailscale included).

The 23 playbooks

/poteto-mode picks one of these from your request. You never name them directly.

GroupPlaybooks
Understandinvestigation, runtime forensics, trace forensics
Fixbug fix, perf, hillclimb
Buildfeature, refactoring, prototype, visual parity
Skillsauthoring a skill, eval
Shipbabysit, shipping, opening a pr
Long-runningautonomous run, orchestrate, autopilot-full, autopilot-stack, multi-phase plan
Sessionsession pickup, pause safely, worktree cleanup

opening a pr is invoked at the end of every other playbook. hillclimb is the interesting one: sustained scientific improvement of a single metric against a target, looping hypotheses with before/after measurement and one commit per accepted win.

The 23 principles

Each is a one-rule skill so other skills can reference it by name. /poteto-mode indexes them inline and reads the index at task start.

GroupPrinciples
Core (10)laziness-protocol, foundational-thinking, redesign-from-first-principles, attack-the-premise, subtract-before-you-add, minimize-reader-load, outcome-oriented-execution, experience-first, exhaust-the-design-space, build-the-lever
Architecture (6)model-the-domain, boundary-discipline, type-system-discipline, make-operations-idempotent, migrate-callers-then-delete-legacy-apis, separate-before-serializing-shared-state
Verification (4)prove-it-works, fix-root-causes, sequence-verifiable-units, test-behavior-not-implementation
Delegation (2)guard-the-context-window, never-block-on-the-human
Meta (1)encode-lessons-in-structure

The sharpest ones in practice:

  • prove-it-works — verify against the real artifact (run the feature, read the actual value, inspect the diff), never a proxy, a self-report, or "it compiles."
  • test-behavior-not-implementation — if the test would still pass when every imported function returns undefined, rewrite the assertion or delete the test.
  • build-the-lever — build the codemod, script or skill that does the work, because the tool is the artifact a reviewer can rerun.
  • guard-the-context-window — route bulk to subagents; keep summaries in the main thread, never raw payloads.
  • never-block-on-the-human — proceed, present the result, let the human course-correct after the fact; reserve confirmation for irreversible actions.

Subagents and automations

  • poteto-agent — runs the whole style end to end. Spawn from a parent with subagent_type: "poteto-agent". It reads poteto-mode in full, including the principles index, before doing any work; substituting a general-purpose agent skips that read and drifts.
  • Comment Sicko — read-only comment reviewer, subagent_type: "Comment Sicko". Normally reached through /no-comments, not directly.
  • benny — an issue triage and bug-fix automation pack under automations/benny/, with setup-benny, triage-issue-reports and reproduce-and-fix-issues.

What it deliberately leaves out

The README's position: "the best spec is code" — Cursor's own plan mode is considered good enough, and /poteto-mode covers planning when you ask, but it isn't a default.

Some things poteto-mode references but doesn't bundle — install cursor-team-kit alongside it for the full set:

Missing pieceShips in
/deslopcursor-team-kit
control-cli (CLIs, TUIs)cursor-team-kit
control-ui (browser, Electron, web)cursor-team-kit
/create-skillCursor built-in

Caveats before you install

  • It is a Cursor plugin. /add-plugin is a Cursor command. The skills themselves are plain SKILL.md markdown and mostly portable to other agent harnesses, but the model routing, subagent_type names and /loop integration assume Cursor.
  • It is opinionated by design. poteto-mode is one person's style. If it doesn't fit, /automate-me mines your own transcripts and drafts <your-name>-mode on top of the same base.
  • Multi-model by default. Several skills run panels across Fable, Sol, Grok and Opus. On a single-model setup you lose a lot of what /interrogate and /arena are for — run /setup-pstack to remap roles.
  • It costs tokens. Parallel review panels, swarms and arenas are the point, and they are not cheap.

Sources

Disclaimer: These documents are personal notes. The information may be incomplete, out of date or wrong, so check it before you rely on it.