diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index 591b7f6b..f526c3fb 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -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.20.0", + "version": "1.21.0", "author": { "name": "Lauren Tan (original)" }, diff --git a/CHANGES.md b/CHANGES.md index aff8c3aa..4fb27e08 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -3,10 +3,14 @@ Open Pstack lands on green: Mergify merges a ready PR to main once verify and exact-head live-gate pass and no review thread is unresolved, and a workflow resolves Unfret's own threads. A PR that touches `.github/` or the Mergify config also waits for Unfret, and workflow changes require operator queueing. This port applies the Cursor → Claude Code substitutions in skill bodies. Earlier drafts left them flagged; this revision resolves them. A later pass added a Codex build that shares the same skills; see [Codex port](#codex-port) below. -## Unreleased +## 1.21.0 adds Grok as a parent harness + +Open Pstack 1.21.0 keeps the Cursor pstack 0.15.36 sync. Default roles and panels are unchanged. **Grok is a parent harness (#281).** Started from max-metaplanet's PR #282. In a Grok session, `inherit-parent` and `auto` use `spawn_subagent` with `pstack:poteto-agent`, and every explicit descriptor, including every `grok:*` descriptor, uses the runner with `--parent grok`. A Grok agent file that names a model Grok cannot serve runs the parent's model without an error, so only the runner's receipt proves a pinned Grok model. The runner's `explicitLaneRoute` parent field says this: Claude and Codex keep explicit same-provider lanes `native` and still refuse them, and Grok sends them to the `runner`. A Grok parent's children drop `GROK_AGENT` and `GROK_SESSION_ID` and keep `GROK_HOME`. `plugins/pstack/.grok-plugin/plugin.json` shares `skills/` and points `agents` at the generated `grok-agents/` directory, so Grok offers `poteto-agent` and `comment-sicko` and none of the Claude lane agents. Grok 1.0.77 reads each entry of an `agents` list as a directory, so a list of the two files loaded no agents. `codex-tools.md` gains a Grok column and a Waits on Grok section. `/setup-pstack` writes the Grok sheet to `/rules/pstack-models.md`, which Grok loads as a home rule. pstack's startup hook does not fire in Grok, so run `/pstack:poteto-mode` by name. +**Grok in the live gate (#281, #285, #287).** The verifier gains a `grok` harness. It loads the exact candidate into one Grok session with `grok agent --plugin-dir`, writes no operator Grok config, and has two cases. `grok:dispatch` runs a native lane, a Grok runner lane and a Codex runner lane, and checks that Grok offers only the model-free agents. `grok:setup` checks that setup writes the Grok sheet, then restores it byte for byte. Any path the registry owns as runtime code or instructions may name these cases, and they run only when named. Reflect copies a skill to `.grok/skills/` or `/skills/` on Grok. + ## 1.20.0 gives Amp an opted-in writer Open Pstack 1.20.0 keeps the Cursor pstack 0.15.36 sync. Default roles and panels are unchanged. diff --git a/README.md b/README.md index 1df11300..ac51439c 100644 --- a/README.md +++ b/README.md @@ -173,7 +173,7 @@ This repository also keeps: ## Staying close to Lauren's pstack -Open Pstack 1.20.0 tracks pstack 0.15.36 at Cursor commit [`2776ddd2355d6d6c8747d3964600f28daf62f049`](https://github.com/cursor/plugins/commit/2776ddd2355d6d6c8747d3964600f28daf62f049). +Open Pstack 1.21.0 tracks pstack 0.15.36 at Cursor commit [`2776ddd2355d6d6c8747d3964600f28daf62f049`](https://github.com/cursor/plugins/commit/2776ddd2355d6d6c8747d3964600f28daf62f049). The two projects have separate version numbers. The pstack version identifies Lauren's upstream content. The Open Pstack version identifies the Claude Code and Codex package built from it. diff --git a/UPSTREAM.md b/UPSTREAM.md index 019792af..452a93e1 100644 --- a/UPSTREAM.md +++ b/UPSTREAM.md @@ -10,9 +10,9 @@ open-pstack tracks [Cursor's pstack](https://github.com/cursor/plugins/tree/main | Path | `pstack/` | | Commit | `2776ddd2355d6d6c8747d3964600f28daf62f049` | | Upstream version | `0.15.36` | -| open-pstack version | `1.20.0` | +| open-pstack version | `1.21.0` | -The table above is the current Cursor sync point. Open Pstack 1.17.0 imported this 0.15.36 sync, and 1.18.0 to 1.20.0 keep it. `README-UPSTREAM.md` preserves the upstream pstack README verbatim. `CHANGES.md` and `NOTICE.md` describe the adaptations and provenance. +The table above is the current Cursor sync point. Open Pstack 1.17.0 imported this 0.15.36 sync, and 1.18.0 to 1.21.0 keep it. `README-UPSTREAM.md` preserves the upstream pstack README verbatim. `CHANGES.md` and `NOTICE.md` describe the adaptations and provenance. ## Upstream-only exclusions diff --git a/docs/reference.md b/docs/reference.md index 0f9a5fbd..a6af5699 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -2,7 +2,7 @@ This page contains the full skill, dependency, runtime, and porting reference. For the plain-English introduction and quick start, see the [main README](../README.md). -[Poteto](https://x.com/poteto)'s [pstack](https://github.com/cursor/plugins/tree/main/pstack), adapted to run in Claude Code, Codex and T3 Code without Cursor. One shared skill tree serves all three harnesses, and in T3 Code the Claude Code or Codex runtime loads it; lanes on other providers' models, including Grok and seven more providers, run through the bundled runner. Version 1.20.0 is synced to Cursor pstack v0.15.36 at `2776ddd2355d6d6c8747d3964600f28daf62f049`. See [UPSTREAM.md](../UPSTREAM.md) for the exact sync contract. +[Poteto](https://x.com/poteto)'s [pstack](https://github.com/cursor/plugins/tree/main/pstack), adapted to run in Claude Code, Codex, T3 Code and Grok without Cursor. One shared skill tree serves all four harnesses, and in T3 Code the Claude Code or Codex runtime loads it; lanes on other providers' models, including Grok and seven more providers, run through the bundled runner. Version 1.21.0 is synced to Cursor pstack v0.15.36 at `2776ddd2355d6d6c8747d3964600f28daf62f049`. See [UPSTREAM.md](../UPSTREAM.md) for the exact sync contract. Original by Lauren Tan. This distribution builds on Michael Denyer's [pstack-claude](https://github.com/michael-denyer/pstack-claude) port and retains its history and MIT attribution. It imports seven MIT-licensed skills from [cursor-team-kit](https://github.com/cursor/plugins/tree/main/cursor-team-kit): `deslop`, `thermo-nuclear-code-quality-review`, `make-pr-easy-to-review`, `fix-ci`, `fix-merge-conflicts`, `get-pr-comments`, `what-did-i-get-done`. diff --git a/plugins/pstack/.claude-plugin/plugin.json b/plugins/pstack/.claude-plugin/plugin.json index 9b747384..0bdf329d 100644 --- a/plugins/pstack/.claude-plugin/plugin.json +++ b/plugins/pstack/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "pstack", "displayName": "pstack", - "version": "1.20.0", + "version": "1.21.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" diff --git a/plugins/pstack/.codex-plugin/plugin.json b/plugins/pstack/.codex-plugin/plugin.json index b0a0e68b..77972f6e 100644 --- a/plugins/pstack/.codex-plugin/plugin.json +++ b/plugins/pstack/.codex-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "pstack", - "version": "1.20.0", + "version": "1.21.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" diff --git a/plugins/pstack/.grok-plugin/plugin.json b/plugins/pstack/.grok-plugin/plugin.json index 2bcb0e6a..917675d0 100644 --- a/plugins/pstack/.grok-plugin/plugin.json +++ b/plugins/pstack/.grok-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "pstack", "displayName": "pstack", - "version": "1.20.0", + "version": "1.21.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. Grok build of the Claude Code plugin; skills are shared, tool names resolve via skills/poteto-mode/references/codex-tools.md.", "author": { "name": "Lauren Tan"