Skip to content

feat(pstack): add /correct skill - #494

Merged
poteto merged 2 commits into
mainfrom
lauren/pstack-correct-skill-6f4d
Oct 3, 2026
Merged

poteto merged 2 commits into
mainfrom
lauren/pstack-correct-skill-6f4d

Conversation

@poteto

@poteto poteto commented Oct 3, 2026 •

Copy link
Copy Markdown
Collaborator

Why

Operators correct agents for the same mistakes again and again. /correct changes the repo so the next agent cannot make the same mistake again. It finds mistake classes in history and fixes each class at the highest level that works. The order is architecture, then types and lint, then tests, and docs last.

What changed

  • Add pstack/skills/correct/SKILL.md. It sets disable-model-invocation: true, the same as the other operator-invoked pstack skills. The body keeps the source prompt's content and order. The edits are only for skill format: second person to the agent, "the operator" for the human, and sentence-case headings. The description is the operator's short form in pstack style.
  • Add a /correct row to the README skills table and a line to the examples block. The guide and the poteto-mode routing do not list every skill, so they do not change.
  • Bump pstack from 0.15.6 to 0.15.7.

Verification

  • node scripts/validate-plugins.mjs passes.
  • A script compares the skill body with the source prompt, one sentence at a time. All 29 source sentences are present and in order. One sentence became a heading, and "the next one" became "the next agent". The operator's notes on the sources confirm each line.
  • Leak grep on the added lines. The patterns are company and product names, model families and slugs, internal paths and tools, attribution words (source, metadata, credit, adapted, based on, notes from, author names, URLs), and the mechanism names from the operator's notes. The only hits are the disable-model-invocation key and the prompt's own words "internals" and "source of truth".
  • Opus 5.5 check, one run for each input, in a scratch repo. The repo history has 17 commits, three repeated mistake classes, and one one-off decoy. Both runs found all three classes and did not count the decoy. Both used architecture for the status list and the storage internals, with one commit per class. Both made CI run the local command, added the rule-to-enforcer table, and required inline exceptions with a reason, an expiry date, and an approver. On each result, I put back five past mistakes. All five fail make check in both runs, and each error names what to use instead. The runs differ only in design choices. The raw-prompt run added a money type and a check for tests that assert nothing. The skill run used a lint for money and added fewer lines (542 against 1143). The skill version lost nothing.
Open in Web Open in Cursor 

cursoragent and others added 2 commits October 3, 2026 19:56
/correct turns mistakes the operator keeps correcting into repo changes
that make each one impossible. It mines history for mistake classes,
fixes each at the highest level that works, and keeps a table that pairs
each rule with what enforces it.

Co-authored-by: lauren <poteto@users.noreply.github.com>
Co-authored-by: lauren <poteto@users.noreply.github.com>
@poteto
poteto merged commit 9511e60 into main Oct 3, 2026
2 checks passed
@poteto
poteto deleted the lauren/pstack-correct-skill-6f4d branch October 3, 2026 20:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants