Answer the user's question about pstack, hand them a prompt they can send, and link the file the answer came from. For a help question, don't start the work. The user asked how, and a pstack run spends real tokens, so let them send the prompt.
A message that asks for work, such as "use pstack to fix this bug", is not a help question. Read poteto-mode, do the work under it, and mention once that starting each task with /poteto-mode keeps it on.
This file maps questions to the skills and guide pages that hold the answers. Those files own the details. Read the file you route to before you quote it, and trust it when it disagrees with this map. The skill links here point into the installed plugin, which the user may not be able to open, so give the user the file's public copy: https://github.com/ericlitman/open-pstack/blob/main/plugins/pstack/ followed by its path. The guide pages are Lauren's upstream guide. They show Cursor's interface, so translate any Cursor step with this file before you pass it on.
Find out what they need
Infer the need from the message and the conversation. A named situation, such as "which skill reviews a PR?", goes straight to its section. If the need is still unclear, ask one multiple-choice question with these options, then answer only the section they pick:
- Get set up
- Start a task with
/poteto-mode - Pick a skill for a situation
- Fix a run that went wrong
- Make pstack my own
Check the state that changes the answer, and mention it only when it does:
- No
pstack-models.mdin the active harness's config home means/setup-pstackhasn't run for this user, so every role uses its default model. Resolve the config home percodex-tools.md. - No
verify-*skill or other app harness in the project means agents have no scripted way to drive the app. Mention/create-verification-skillwhen the question is about proving a change works.
When the model rule is missing and it matters, ask whether the user wants to pick a model for each role and a requested effort now. It matters when the user is new, the question is about setup or cost, or the answer depends on which models run. Ask at most once per chat. If the need is also unclear, ask both questions together. Offer two choices:
- Now: give them
/setup-pstackto type, and answer their question too. - Later: answer their question, and add one line saying every role keeps its default model until they run
/setup-pstack.
Get set up
- Install. In Claude Code, run
/plugin marketplace add ericlitman/open-pstack, then/plugin install pstack@open-pstack, then/reload-plugins. In Codex, runcodex plugin marketplace add ericlitman/open-pstack --ref main, thencodex plugin add pstack@open-pstack, and turn onmulti_agentpercodex-tools.md. - Run
/setup-pstack. It maps a model to each role, asks one requested effort for each model family it assigns, probes those models, and writes a model sheet. The sheet applies to new sessions. - Start a real task with
/poteto-mode, a goal, and a check that can pass or fail.
In Claude Code, a typed skill carries the plugin prefix, as in /pstack:poteto-mode. In Codex, ask for a skill by name, as in "use pstack:poteto-mode". The README and guide page 1 have the details. Offer to word their first prompt with them, per references/prompting.md.
If cost is the worry, say where the tokens go and how to spend fewer. pstack spends extra tokens on subagents and review panels. Rerun /setup-pstack and pick lower efforts or cheaper models. A role set to auto or inherit-parent runs on the session's model, which saves tokens when the session runs on a cheaper model. A shorter panel list runs fewer subagents, one for each entry. Save /poteto-mode for work that needs rigor.
Open Pstack runs one shared skill tree in Claude Code and Codex. Workflow skills such as /poteto-mode, /how, /why, and /teach start subagents with per-role models. A model from the app you are using runs inside it, and other models run through their signed-in command-line tools. Codex has no loop skill and no poteto-agent type. codex-tools.md maps each Claude Code tool to its Codex form.
Start a task with /poteto-mode
/poteto-mode matches the task to a playbook, copies the playbook's steps into the todo list, and runs the other skills as the steps need them. A step it skips stays in the list as skip: <reason>. A good prompt states the goal and how to tell it's done. It doesn't list skills, because a hand-written sequence tends to drop or reorder steps the playbook would keep. Read references/prompting.md before you help word one. Guide page 2 has examples.
Whether /poteto-mode stays on depends on the harness:
- In Claude Code, a small startup instruction routes non-trivial work into
/poteto-mode. A typed/pstack:poteto-modeattaches the skill to that task, and it can fade as the session moves on. - In Codex, ask for
pstack:poteto-modeby name at the start of each task. - In both, start each new task with
/poteto-modewhen it matters.
Mid-session, "new task" makes the mode match a fresh playbook. In Claude Code, /poteto-mode already uses poteto-agent for the subagents its playbook steps spawn. To get the same style from a subagent of your own, spawn it with subagent_type: "poteto-agent". Codex has no poteto-agent type, so dispatch a spawn_agent whose instructions say to read the poteto-mode skill in full first.
Pick a skill
The default answer is /poteto-mode, which runs most of the others when its steps need them. Name a skill directly when the user wants more or less of something than the playbook gives. Read the skill before you recommend it, and give one example prompt.
| The user wants to | Skill |
|---|---|
| Do any non-trivial task with rigor | /poteto-mode |
| Know how code works now, or where new code should live | /how |
| Know why code is shaped this way, or where a number came from | /why |
| Understand a change or subsystem, explained plainly | /teach |
| Catch up on their own recent work on a topic | /recall |
| Catch up on everything in this chat since their last message, with enough context to decide each action item | /ketchup |
| Know what a small diff could break outside itself | /blast-radius |
| Settle types and module shape before code that crosses a function boundary | /architect |
| Get several attempts at one brief, merged into the best one | /arena |
| Run parallel checks over slices, or race workers, as background subagents | /swarm |
| Have several models review a diff and try to break it | /interrogate |
| Fix a bug test-first when a cheap local test exists | /tdd |
Apply TypeScript rules to .ts or .tsx work |
/typescript-best-practices |
| Strip comments before review, using a reviewer that didn't write them | /no-comments |
| Clean AI tells out of prose | /unslop |
| Write docs, an RFC, a README, a PR description, or a commit message to a standard | /technical-writing |
| Hear the last reply again in plain words | /bro |
| Give agents a scripted way to drive the app and prove behavior | /create-verification-skill |
| Bring a verification skill and its feature map back in line with the app | /maintain-verification-skill |
| Vet a performance number before reporting or acting on it | /benchmark-checklist |
| Run a large or cross-cutting change, or one to review after stepping away | /figure-it-out |
| Keep a decision log during a run, and review it afterward | /show-me-your-work |
| Pick a model for each role and a requested effort for each model family | /setup-pstack |
| Turn their own working habits into a personal mode skill | /automate-me |
| Turn what a finished task taught into skill edits | /reflect |
| Stop agents from repeating the same mistakes in this repo | /correct |
| Find their way around pstack | /poteto-help |
If a skill directory next to this one is missing from the table, read its frontmatter and route by its description. The principle-* directories are covered under principles below.
Close calls:
/howexplains what the code does./whyexplains the reasons./teachruns one or both and explains the result plainly./arenagives every worker the same brief and merges the best parts./swarmsplits work into slices or a race and returns one report./architectimplements right after it settles the design. Add "with checkpoint" to review the design before it writes code./interrogatereviews the diff./blast-radiuslooks for breakage outside the diff and proves the one fact that makes the change safe./recallrebuilds context across recent chats./ketchupcovers only this chat since the user's last message. Resuming one specific chat or branch is the Session pickup playbook./figure-it-outdesigns one rigorous run. The Orchestrate playbook runs a program that spans days and many PRs. The Autonomous run playbook drives one task to a finish condition.
Not in pstack:
run(CLIs and TUIs),verify(UIs), andloopare Claude Code built-ins.plugin-dev:skill-developmentships in the separateplugin-devplugin, which skill-authoring routes need. In Claude Code, install it with/plugin marketplace add anthropics/claude-plugins-official, then/plugin install plugin-dev@claude-plugins-official.codex-tools.mdnames the Codex equivalent of each./make-bot-uiis not ported, because it depends on Cursor routines and webhooks.- pstack has no
/orchestrateskill. Orchestrate is a/poteto-modeplaybook. If the slash menu shows/orchestrate, another plugin provides it.
Playbooks and principles
Playbooks are step lists inside /poteto-mode, not skills, so they have no slash command. Inside /poteto-mode, describing the task picks one, and these phrases name one directly:
- "babysit this pr" or "check on pr 123" runs Babysit. It drives the PR to merge-ready and stops there. It doesn't merge unless the user asks to merge, land, or ship.
- "land the stack" runs Shipping.
- "take over this branch" runs Session pickup.
- "pause safely" runs Pause safely.
- "full autopilot on this queue" runs Autopilot-full. "stack them, don't ship" runs Autopilot-stack.
- "run the eval playbook" runs Eval.
Without /poteto-mode, a phrase such as "babysit this pr" can start the bundled /babysit skill for the same job instead. The Playbooks section of poteto-mode lists every playbook and when it applies. Guide page 6 covers opening, babysitting, and landing a PR.
pstack has no planning skill. Claude Code's plan mode works alongside it. For work that spans phases or stacked PRs, asking /poteto-mode for a plan runs the Multi-phase plan playbook, which writes the plan and doesn't implement it. For a design question, the Prototype playbook or /architect settles it in code first.
Principles are one-rule skills that /poteto-mode reads and cites in its replies. The user rarely invokes one. They steer with the names instead, as in "apply prove it works. show me the real output." Principles are hidden from the slash menu, but asking for one by name, such as pstack:principle-prove-it-works, still loads it on demand. Guide page 8 lists them.
Fix a run that went wrong
| Symptom | Fix |
|---|---|
| The mode stopped applying after a few turns | A typed skill fades as the session moves on. Start each task with /poteto-mode. |
| A question got treated as the next step of the last task | Say "new task", or say the turn doesn't need the mode. |
| A new model choice had no effect | The model sheet from /setup-pstack applies to new sessions. Start one. |
| Runs cost more than expected | See the cost paragraph under Get set up. |
| A skill didn't load on its own | /poteto-help, /correct, and /ketchup run only when typed. Others can load from the user's words, but only when the request matches their description, and /poteto-mode doesn't run every skill. |
| Parallel agents overwrote each other | Give each agent its own worktree. |
| An overnight run moved but finished nothing | /loop needs a check that can pass or fail, not a duration. See guide page 7. |
| The reply claims success from a green build | Ask for the real command, flow, stored value, or profile. That's the prove-it-works principle. |
For a run that drifts, references/prompting.md has one-line steers. Guide page 10 has more pitfalls and the recipes worth copying.
Make pstack my own
/automate-medrafts a personal mode skill from the user's own history, to use alongside/poteto-mode./reflectafter a session turns its lessons into skill edits the user approves./poteto-mode write a skill for <workflow>runs the authoring playbook. The eval playbook tests a skill change blind.- Fix a misbehaving skill in its own PR, not inside the feature work where it went wrong.
Guide page 9 covers each of these.
Reply
Lead with the answer. Give at most one example prompt in a code block, adapted from references/recipes.md when one fits, then the link to that file. Keep it short unless the user asked for the whole map.