poteto-help
Explain pstack for Codex and route the user to a skill, playbook or principle. Use for pstack help and usage questions.
SKILL.mdplugins/pstack-for-codex/skills/poteto-help/SKILL.md
GitHubRead Codex runtime contract before applying this workflow. It governs tools, delegation, models, authorization and fallbacks.
Poteto help
Use the host skill picker or name a skill explicitly, for example Use pstack-for-codex:poteto-mode to fix this bug and verify its behavior. Slash names below identify skills; they do not promise a host command or persistent mode. Start each new task by invoking the skill explicitly.
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, within the host's capabilities and the user's authorization.
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 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/LeonardSEO/pstack-for-codex/blob/main/plugins/pstack-for-codex/ followed by its path.
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:
- Without
.agents/pstack-config.mdin the project, roles inherit the parent model. No setup is required for these defaults. - 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. - No formal verification skill in the project means no property is checked past what tests reach. Mention
/create-formal-verification-skillwhen the question is about a race, an invariant, or another case tests rarely hit. When one exists and the code it covers changed after the commit it records as last in sync, mention/maintain-formal-verification-skillif the question touches that code.
When project preferences are missing and model choice matters, explain that setup-pstack can record preferences for explicit loading by poteto-mode. The host controls which models and tools are available. Ask at most once per chat whether the user wants to configure preferences.
- Now: give them
/setup-pstackto type, and answer their question too. - Later: answer their question using inherited-model defaults.
Get set up
- Install pstack-for-codex through the host's supported plugin installation flow. See the README.
- Optionally use setup-pstack to write project preferences to
.agents/pstack-config.md. Poteto-mode reads them explicitly; this does not install a host rule. Then it offers once each to generate a verification skill and a formal verification skill for the project, unless the project already has one. - Start a real task with
/poteto-mode, a goal, and a check that can pass or fail.
Installing changes nothing until the user explicitly invokes a skill. Native skill metadata disables implicit invocation. 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, explain that subagents and review panels spend extra tokens. Use inherited-model defaults, fewer authorized delegates, or supported model preferences from setup-pstack. The host controls model availability and cost. Save poteto-mode for work that needs rigor.
pstack is built for Cursor, and it also installs in Claude Code with /plugin marketplace add cursor/plugins, then /plugin install pstack@cursor-plugins. There, each command takes a pstack: prefix, such as /pstack:poteto-mode. The Claude Code adapter maps the Cursor names, and a step that needs a Cursor-only feature, such as Bugbot or Automations, is skipped with a one-line note.
Other tools can read the skills, because they use the Agent Skills format. But most workflow skills, including /poteto-mode, /how, /why, and /teach, spawn Cursor subagents with per-role models, and Custom Modes and /loop are Cursor features, so those parts may not work there.
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.
Do not promise a persistent mode, keyboard shortcut or native agent type. Invoke poteto-mode explicitly for each new task. When authorized native delegation is available, give delegates the bundled poteto-agent role and the absolute poteto-mode skill path. Otherwise run the phases sequentially.
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 |
| Check that the agent understood their goal and the problem before it starts | /in-your-own-words |
| Get a prompt rewritten deeper, not bigger, before sending it: what a top professional would add, their raw material and methods, and an outside check. It returns the prompt and doesn't do the task | /sharpen |
| 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 what changed in this chat since their last message, in plain words and small visuals, with every item waiting on them listed and decidable from the reply alone | /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 authorized parallel checks over slices, or race workers, when the host supports them | /swarm |
| Have independent reviewers inspect a diff and try to break it, within host capabilities | /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 |
| Formally verify a race, invariant, or other property that tests rarely reach | /create-formal-verification-skill |
| Bring a formal verification back in line after the code it covers changed, and learn whether a failure is drift or a bug | /maintain-formal-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 reasoning budget | /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 |
| Build a page whose buttons wake a Grok Bot over a webhook | /make-bot-ui |
| 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:
/deslop,control-cli, andcontrol-uiship in thecursor-team-kitplugin.- Repeated execution and skill-authoring tools depend on the host; this plugin installs neither.
- 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.
Explicitly select poteto-mode to use its Babysit playbook; other installed skills may match the same words. 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. Use host planning features when available. 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." Typing /principle-<name> still loads one on demand. Guide page 8 lists them.
Fix a run that went wrong
| Symptom | Fix |
|---|---|
| The mode stopped applying after a few turns | Explicitly invoke poteto-mode for each new task; persistence depends on the host. |
| 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 | Have poteto-mode reload project preferences and check the host's supported model choices. |
| Runs cost more than expected | See the cost paragraph under Get set up. |
| A skill did not load on its own | Invoke it explicitly. Poteto-mode reads skills as its playbook needs them; implicit invocation is disabled. |
| Parallel agents overwrote each other | Give authorized delegates separate worktrees or disjoint writable scopes. |
| An overnight run moved but finished nothing | Use a checkable done condition and respect session limits. This plugin installs no scheduler. 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.