Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .agents/skills/verify-open-pstack/features/workflows.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,11 @@ Users invoke poteto-mode for an engineering task or call a focused skill directl
- `workflow-correct`: the `correct` skill mines a fixture's real git history for a repeated mistake class and fixes it at the highest enforcing level, proven against a past mistake.
- `workflow-architect-screen`: architect screens design candidates against agent-shaped red flags before synthesis.
- `workflow-perf-order`: perf-issue tries the ordered performance mantras cheapest-first and stops at the first that meets the target; hillclimb borrows only their order, never that step's stop rule.
- `workflow-help`: poteto-help answers setup, usage, and routing questions without starting the work, and does not swallow work requests as help.

## How to get to it (user POV)

Claude Code: `/pstack:poteto-mode` or `/pstack:how`. Codex: select the same names in the skill picker, or mention `$pstack:poteto-mode` and `$pstack:how`.
Claude Code: `/pstack:poteto-mode`, `/pstack:how`, or `/pstack:poteto-help`. Codex: select the same names in the skill picker, or mention `$pstack:poteto-mode`, `$pstack:how`, or `$pstack:poteto-help`.

## Driving it with the parent apps

Expand All @@ -33,12 +34,14 @@ Preconditions: installed candidate identity established, authenticated selected
- **Repeat-mistake correction:** build a scratch repository with a genuine two-commit history — commit 1 adds a small module plus one call site carrying a recognizable mistake (a second hand-maintained list, an inline normalization copied instead of shared), and commit 2 repeats the same mistake at another call site. Invoke the skill through its manual entry point: `/pstack:correct` in Claude Code, or `pstack:correct` in the Codex skill picker or a `$pstack:correct` mention. Expect the run to group both commits into one mistake class, fix it at the highest level that works (structure, types, or a lint or CI check whose error names the fix — not a docs-only fix when a higher level applies), and prove the new check fails when the second commit's mistake is reintroduced. Expect a rule-table entry pairing the rule with its enforcement and a reply naming each class, its evidence, and why a higher level did not work.
- **Agent-shaped screening:** in a fresh parent session submit `Use pstack:architect. Sketch the design for <fixture change> and stop before implementation.` on a fixture whose shortest-path candidate would add a second writer to shared state or duplicate a list of items. Expect the candidate screen to reject or revise shapes with split ownership, two ways to do one task, importable internals, or a hand-synced list, and to prefer the design where a change that looks right from one file is right for the whole repo.
- **Perf ordering and stop semantics:** in a fresh parent session run a perf task through `pstack:poteto-mode` where the traced slowdown is work whose result nothing uses, so the cheapest mantra applies. Expect hypotheses ordered cheapest-first through the seven mantras and the run to stop once an earlier mantra meets the agreed target rather than escalating to caching, batching, or concurrency. In a separate sustained-metric task, expect hypotheses ordered by the same mantras while hillclimb keeps its own stop predicate — the target paired with an attempts floor — because it borrows only the order, not the perf-issue stop rule.
- **Help boundary:** in a fresh parent session submit `Use pstack:poteto-help. How do I set up pstack, and which skill should I use to get a PR reviewed?` Expect a help-only answer: no implementation and no configuration changes. The reply leads with the answer, gives at most one example prompt, and links the owning file's public copy. Check the grounded distinctions against the actual parent: the model sheet path (`~/.claude/pstack-models.md` on Claude Code, `~/.codex/pstack-models.md` mirrored into `~/.codex/AGENTS.md` on Codex) with every role on its documented default when no sheet exists, native versus external worker routing for the named providers, persistence through session-start routing rather than a mode toggle (automatic on Claude Code, opt-in `SessionStart` hook trust on Codex), and recovery only through the sheet's saved fallback chains. Confirm `git status --short` and the host's model sheet and integration bytes are unchanged. Then, in a separate fresh session, submit a work request that names pstack, such as `Use pstack to fix <a small real defect in the fixture>`, and expect the work to proceed under `pstack:poteto-mode` rather than being answered as help.
- **Evidence:** retain parent input, skill loads, native events or external receipts, and `git status --short` plus `git diff` before and after. Verify referenced source locations and the stated persistence behavior against the orchestration recipe.

## Gotchas

- The general and direct entry prompts prove read-only workflow entry; they do not cover implementation, architect, arena, or review panels.
- The benchmark, fresh-worker, schema-cast, and PR-heading fixtures prove the loaded skill's guidance in the reply or diff; they do not prove a completed benchmark, a merged PR, or an armed loop.
- The correction fixture proves mistake-class mining and enforcement on a synthetic two-commit history, not prevention across an arbitrary real codebase. The screening and perf-ordering recipes prove the loaded guidance in the reply or plan, not a finished design or a measured win.
- The help recipe proves the help-versus-work boundary and grounded routing pointers in the reply. It does not prove installation, setup writes, or that session-start routing later fires.
- Reading a skill manually or launching an external worker directly does not prove the parent selected it.
- Do not add a timeout, weaker model, or unsaved backup to finish a verification run.
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"name": "pstack",
"source": "./plugins/pstack",
"description": "if you want to go fast, go deep first. pstack helps you write less, but higher quality code. rigorous agent workflows you can parallelize with confidence.",
"version": "1.11.0",
"version": "1.12.0",
"author": {
"name": "Lauren Tan (original)"
},
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ This file records what each version of the Open Pstack package changed. Versions

Entries describe package versions. Published release checkpoints have tag links; installation follows `main` unless pinned. Validation belongs to the linked pull requests. Older reports remain available through immutable links.

## 1.12.0 adds help for setup and workflows

Cursor baseline: [0.15.10](https://github.com/cursor/plugins/tree/4e5b1cf2ccb0ea3716f08c8ee0a5856b5ab93536/pstack). [Issue #113](https://github.com/arjitj2/open-pstack/issues/113). [PR #114](https://github.com/arjitj2/open-pstack/pull/114). Tag [v1.12.0](https://github.com/arjitj2/open-pstack/releases/tag/v1.12.0).

Adds `poteto-help` for setup, skill selection, and troubleshooting. Help questions receive grounded guidance without starting the work; action requests proceed through `poteto-mode`. The shared skill reflects this distribution’s Codex/Claude invocation, providers, model policy, and startup controls.

## 1.11.0 strengthens engineering evidence

Cursor baseline: [0.15.9](https://github.com/cursor/plugins/tree/e43c7ee26e0038c6c1fa8380dd34ce86ff94cb2a/pstack). [Issue #110](https://github.com/arjitj2/open-pstack/issues/110). [PR #111](https://github.com/arjitj2/open-pstack/pull/111). Tag [v1.11.0](https://github.com/arjitj2/open-pstack/releases/tag/v1.11.0).
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,7 @@ Use the verification skill for each change. If you add or change a feature, upda
| `babysit` | A pull request needs CI failures and review comments handled until it is ready. |
| `reflect` | A hard task is finished and its lessons should improve the next run. |
| [correct](plugins/pstack/skills/correct/SKILL.md) | You keep correcting agents for the same mistakes and want the repo changed so the next agent cannot repeat them. |
| [poteto-help](plugins/pstack/skills/poteto-help/SKILL.md) | You want help installing, setting up, or picking the right pstack skill. |

Plugin skills include `pstack:` in their name. In Claude Code, invoke `/pstack:architect`. In Codex, select `pstack:architect` from the skill picker or mention `$pstack:architect`. Browse the [packaged skills](plugins/pstack/skills/) for each skill's description and instructions.

Expand Down
9 changes: 5 additions & 4 deletions UPSTREAM.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ This page records the current Cursor baseline and the maintainer procedure for r
| --- | --- |
| Repository | `https://github.com/cursor/plugins.git` |
| Path | `pstack/` |
| Commit | `e43c7ee26e0038c6c1fa8380dd34ce86ff94cb2a` |
| Upstream version | `0.15.9` |
| open-pstack version | `1.11.0` |
| Commit | `4e5b1cf2ccb0ea3716f08c8ee0a5856b5ab93536` |
| Upstream version | `0.15.10` |
| open-pstack version | `1.12.0` |

The table records the packaged version on `main` and the Cursor content it incorporates, minus the exclusions below. Detecting or reviewing a newer Cursor commit does not advance this baseline. Cursor's version identifies the imported content. The open-pstack version identifies the cross-harness package, and its numbers are independent of Cursor and Eric's port.

The upstream README at this baseline is [cursor/plugins `pstack/README.md` @ e43c7ee2](https://github.com/cursor/plugins/blob/e43c7ee26e0038c6c1fa8380dd34ce86ff94cb2a/pstack/README.md). [CHANGELOG.md](CHANGELOG.md) records the baseline of each release, and [NOTICE.md](NOTICE.md) records provenance.
The upstream README at this baseline is [cursor/plugins `pstack/README.md` @ 4e5b1cf2](https://github.com/cursor/plugins/blob/4e5b1cf2ccb0ea3716f08c8ee0a5856b5ab93536/pstack/README.md). [CHANGELOG.md](CHANGELOG.md) records the baseline of each release, and [NOTICE.md](NOTICE.md) records provenance.

## Upstream-only exclusions

Expand All @@ -25,6 +25,7 @@ The upstream README at this baseline is [cursor/plugins `pstack/README.md` @ e43
- The `23a56e2` default-model hunks for `bug-fix`, `perf-issue`, and `hillclimb` are not applied, and the equivalent hunks in `889ec4b` and `70b2dc8` carry the same exclusion. The first-run defaults for those roles stay on `codex:gpt-5.6-sol@max` for cost. Existing user assignments take precedence.
- The `23e4138` invocation flags for `benchmark-checklist` and the numerical-evidence principle are adapted to preserve automatic workflow use. The new `correct` skill keeps its manual invocation flag. Cursor-only guide content remains excluded.
- The `9511e60` test-deletion instruction preserves meaningful absence and relational-contract tests, matching this port’s test-behavior principle.
- The `4e5b1cf` help workflow uses this distribution’s owning documents, namespaced invocation, native/external routes, and host startup controls. Cursor Custom Modes, excluded `make-bot-ui`, and Cursor-only guide edits are not applied.
- The Claude manifest does not take the logo field from `efa2a53` because Claude Code has no schema for it. The Codex manifest exposes the shared asset instead.

Earlier exclusions include Cursor's Benny automation, tutorial and sticky-mode UI, Cursor-only agent metadata, and Team Kit tools covered by host built-ins or bundled skills. The [historical port record](https://github.com/arjitj2/open-pstack/blob/5f0bb42dea46344c2f1961ebeebaeee135b49778/docs/reference.md#whats-deliberately-not-ported) records those source revisions.
Expand Down
10 changes: 9 additions & 1 deletion maintenance/upstream-ledger.json
Original file line number Diff line number Diff line change
Expand Up @@ -87,9 +87,17 @@
"subject": "refactor(pstack): use bare performance mantras in perf-issue step 2 (#496)",
"reason": "Adapt ordered performance mantras into the provider-aware playbooks. Both hosts stop perf investigation at its verified target while retaining the hillclimb target AND iteration-floor predicate.",
"evidence": "https://github.com/arjitj2/open-pstack/pull/111"
},
{
"commit": "4e5b1cf2ccb0ea3716f08c8ee0a5856b5ab93536",
"date": "2026-10-04",
"status": "adapted",
"subject": "feat(pstack): add /poteto-help skill (#502)",
"reason": "Adapt poteto-help to Codex/Claude invocation, local model sheets, approved provider recovery, startup routing, bundled skills, and distribution documentation. Preserve help-versus-action intent. Cursor Custom Modes and Cursor-only guide edits remain excluded.",
"evidence": "https://github.com/arjitj2/open-pstack/pull/114"
}
],
"reviewed_through": "e43c7ee26e0038c6c1fa8380dd34ce86ff94cb2a",
"reviewed_through": "4e5b1cf2ccb0ea3716f08c8ee0a5856b5ab93536",
"schema": 1,
"source": {
"path": "pstack/",
Expand Down
2 changes: 1 addition & 1 deletion plugins/pstack/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "pstack",
"displayName": "pstack",
"version": "1.11.0",
"version": "1.12.0",
"description": "if you want to go fast, go deep first. pstack helps you write less, but higher quality code. rigorous agent workflows you can parallelize with confidence. Ported from cursor/plugins/pstack for Claude Code and Codex.",
"author": {
"name": "Lauren Tan"
Expand Down
2 changes: 1 addition & 1 deletion plugins/pstack/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "pstack",
"version": "1.11.0",
"version": "1.12.0",
"description": "if you want to go fast, go deep first. pstack helps you write less, but higher quality code. rigorous agent workflows you can parallelize with confidence. Codex port of the Claude Code plugin; skills are shared, tool names resolve via skills/poteto-mode/references/codex-tools.md.",
"author": {
"name": "Lauren Tan"
Expand Down
Loading
Loading