Skip to content

0.9.83

Choose a tag to compare

@michael-denyer michael-denyer released this 13 Oct 00:58
· 95 commits to main since this release
058a348

The upstream pin moves from df58112 to 997ffc7, upstream v0.15.21, 15 commits. The /ketchup skill catches the user up on everything in the chat since their last message, with a before-and-after visual for each action item, and /poteto-help routes to it. Upstream distilled the prompts of most skills to cut tokens, and the port takes every distilled text. poteto-mode tells the chat that receives /poteto-mode to run the playbook itself and spawn poteto-agent only as a delegate, which the agent's description and the generated effort agents repeat, and it names where the bundled leaf skills live relative to its own file. create-verification-skill reads "ready" as usable from an empty data dir, and unslop's description drops "Must always apply." @Tradie-AI-2000 asked for this sync in #260.

watch-pr reads review threads one page at a time, as upstream now does: the reader returns a page and resolveReviewThreads walks the cursor, so the Bugbot pass count still comes from every thread. The port's check that a cursor advances now lives in one helper that both page loops call, and a thread page that promises more pages without a cursor is refused, as the reader refused it before the sync. check-plan.mjs takes upstream's fence tracking by delimiter character and length, and keeps opening a fence at any indentation so a fence inside a list item still counts. Upstream's new check-plan.test.ts runs in CI with the orch and watch-pr tests; its valid-plan fixture carries the boxes and marker lines the port's checker requires.

Upstream added a root plugin.json for clients that read the Agent Plugins 1.0.0 manifest. The port ships its own at the same path with the port's author, homepage, and repository, and the generator stamps its version with the other manifests, so the sync excludes upstream's copy. Upstream's fix to worktree-audit.sh, which checked merges against origin/main, has no port counterpart: the port excludes that script, and its worktree-audit.mjs reads the MERGED column from the PR's state. The sync rule that points the worktree-cleanup playbook at that script now matches upstream's new sentence, which documents the -b flag the port's script does not need. Two more rules arrive: subagent_type: "comment-sicko", the id upstream adopted so Grok can spawn the agent, becomes the namespaced pstack:comment-sicko that Claude Code dispatches, and reflect's reworded transcript sentence names Claude Code's projects directory. The Principles index in poteto-mode names each leaf by its title now, so the test that checks the index against the leaves derives the leaf name as the index tells the agent to. A new test checks that every agent under agents/ is named in the Pi agent tool's description and in the Pi, Copilot, and Codex subagent policies, which are kept by hand. The scripts package's Prettier check skips fakes.test-helper.ts, which upstream no longer formats with Prettier, so the port's copy keeps upstream's wrapping.

The package also carries upstream's thermos plugin, synced as its own component at 118e73b (thermos 1.0.0). /thermo-nuclear-review audits a branch's changes for bugs, breakage, security issues, devex regressions, and feature-gate leaks. /thermos runs that audit and the code-quality review as two background subagents, pstack:thermo-nuclear-review-subagent and pstack:thermo-nuclear-code-quality-review-subagent, over the same diff and file contents, then synthesizes their findings. thermo-nuclear-code-quality-review now comes from thermos instead of cursor-team-kit, which carries an identical copy, and keeps the port's Report Format section. The agents' parent-orchestration notes name git diff and the Explore agent in place of Cursor's shell and explore subagent types, the review audit reads PR comments from any review bot where upstream names Bugbot, and the Codex, Pi, and Copilot mappings say how each runtime dispatches the two reviewers. The package now carries 37 public skills and 24 principles.

Measured with bun tools/sync.mjs pstack 997ffc7 over 105 synced files with 36 excluded: 35 updated, 3 added, 6 merged, and 14 conflicts resolved by hand. Each conflict takes upstream's new text and re-adds only the lines its forks.json entry names. The reflect finder, the why human-rulings steps, the verify skill name, the driver line, the Platform Adaptation section, the principle-test-behavior-not-implementation keep-list exceptions, and the Autopilot-full merge-ready wording all survive. opening-a-pr drops a per babysit.md cross-reference no fork declared. No file became port-only.