* docs(pstack): complete the poteto-mode route map The guide's route paragraph predates the autopilot playbooks, so a reader browsing routes never learns a PR queue can run on autopilot. Add that route, and give worktree cleanup a prompt in the section that tells readers to fan out worktrees in the first place. Co-authored-by: lauren <poteto@users.noreply.github.com> * docs(pstack): teach /no-comments and Comment Sicko in the cleanup chapter The cleanup habit covered /deslop and /unslop but not the comment pass, so readers never met Comment Sicko or the constraint-encoding offer. Add the before-review step and state the deslop / unslop / no-comments division of labor. Co-authored-by: lauren <poteto@users.noreply.github.com> * docs(pstack): cover Babysit and Shipping after the PR opens The chapter ended at opening the PR and a note claiming pstack bundles no PR monitoring. That note is stale: Babysit ships with the watch-pr watcher and Shipping lands verified stacks through Graphite merge-when-ready. Replace it with the two playbooks, their prompts, and the merge-ready versus land distinction. Co-authored-by: lauren <poteto@users.noreply.github.com> * docs(pstack): teach the autopilots and orchestrate in the overnight chapter The chapter covered one task per night and nothing bigger, so the queue and program playbooks had no home in the guide. Add autopilot-full, autopilot-stack, and orchestrate with prompts and the rule for choosing between them. Co-authored-by: lauren <poteto@users.noreply.github.com> * docs(pstack): introduce /technical-writing and /bro in the later chapters Both skills shipped without a guide mention. /technical-writing sits with skill authoring, where readers already write prose that agents and humans consume. /bro joins the recipes as the one-word prompt for a jargon-free restatement. Co-authored-by: lauren <poteto@users.noreply.github.com> * docs(pstack): technical-writing pass over the new guide prose Fixes traced to the skill's rules. Split sentences carrying two or three thoughts (STE). Moved 'only' next to what it changes and gave the merge-ready heading a real subject instead of 'it' (Global English). One name per thing: uncommitted work, Autopilot-full, verdict instead of say-so. Replaced unglossed jargon with plain words: 'drains completions' and 'merge frontier' now say what the coordinator does, 'the real surface' is now 'proves the behavior live'. Co-authored-by: lauren <poteto@users.noreply.github.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com>
4.7 KiB
Build the change and clean the diff
The build playbooks share one discipline. Say what you observed, let the playbook demand the evidence. This page shows what to put in the prompt for each common build task, then the cleanup habit that keeps diffs reviewable.
Prompt each build playbook with what you know
A bug prompt states the symptom and asks for a reproduction first:
/poteto-mode this command emits two records after a retry. repro first, then fix and verify.
A feature prompt states the behavior and what must not change:
/poteto-mode add a --json flag. text output stays byte-identical. verify both forms.
A refactoring prompt pins behavior before structure moves:
/poteto-mode move parsing into one module, zero behavior change. record the current output first and prove it's unchanged after.
A perf prompt states the measurement, not a vibe:
/poteto-mode startup takes 1.8s on this fixture. trace it, fix the measured cause, show me before and after.
Each of these routes to its playbook (Bug fix, Feature, Refactoring, Perf issue), and the playbook supplies the steps you didn't type: reproduce before fixing, name the data shape before implementing, pin behavior before restructuring, profile before optimizing.
For sustained improvement of one number, there's the Hillclimb playbook. Give it the metric, a target, and a floor on attempts, and it loops one hypothesis at a time with a frozen measurement harness. It keeps wins and reverts everything else.
Write the failing test first with /tdd
When a bug has a cheap local test path, the whole prompt can be two words:
/tdd implement
In context, that's enough. /tdd writes the smallest test that fails for the intended reason, then the fix, then reruns the test. If a test would need broad harness setup or brittle mocks, the skill says so and uses the closest executable check instead. Don't force a test where a real command is stronger evidence.
Let the TypeScript rules load themselves
typescript-best-practices has no slash command in your workflow. It loads whenever the agent touches a .ts or .tsx file and turns the type-system principles into concrete rules: discriminated unions, unknown at boundaries, exhaustive variants, schema-derived types.
Clean before you commit
The Opening a PR playbook runs /deslop on the diff before each commit and applies /unslop to the PR description and commit bodies. /deslop ships in the cursor-team-kit plugin, not in pstack. If you don't have it, ask for the same outcome in plain words: remove narrating comments, unsupported guards, dead compatibility paths, and unrelated edits.
For prose, /unslop takes a target and any extra rules you have:
/unslop the readme changes, no emdashes
You'll develop your own shorthand. The skill reads intent fine from terse prompts like unslop that, tighten it.
Strip the comments with /no-comments
Comments need their own pass, and not from the agent that wrote them. An author defends its comments the way you'd defend yours. So before review, hand them to fresh eyes:
/no-comments the diff
/no-comments spawns Comment Sicko, a read-only reviewer with a short keep list: license headers, doc comments on a public API, links that explain what code can't, behavior forced by an external dependency you can't reshape. Everything else goes. A surprise in your own code gets no such pass. The comment comes back as a refactor flag, and /no-comments fixes the flags it accepts at the root cause. When a comment claims a constraint, "do not remove", the skill offers to encode the claim as a type, test, or lint. Either way, the comment comes out.
The division of labor is worth keeping straight. /deslop cleans slop out of the code, /unslop cleans it out of prose, and /no-comments hands the comments to a reviewer who didn't write them.
Pitfall: cleanup is not optional polish. A diff with narrating comments and defensive dead weight reads as unfinished to reviewers, and the extra code is where the next bug hides. If the diff feels padded, say deslop it before you commit, not after review calls it out.
Next: Verify and ship.