Skip to content

port pstack changes after 0.15.25 - #3

Merged
caelaxie merged 1 commit into
mainfrom
cursor/port-pstack-post-0.15.25-e093
Oct 18, 2026
Merged

caelaxie merged 1 commit into
mainfrom
cursor/port-pstack-post-0.15.25-e093

Conversation

@caelaxie

@caelaxie caelaxie commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

syncs this port with upstream cursor/plugins pstack/ on main after the 0.15.25 bump (6ce45c59b9). upstream is still 0.15.25. cursor-team-kit is still 1.2.0. no version bump.

checked upstream main through 019a6a2059. nothing newer touches pstack/.

ported

  • #700 0317eb8b85 brand via a type guard in skills/typescript-best-practices/SKILL.md and references/patterns.md. both files matched upstream 0.15.25 byte for byte, so the new text is copied verbatim.
  • #704 019a6a2059 guide wording in docs/guide/02 through docs/guide/10. 03-understand.md, 04-design.md, and 08-principles.md now match upstream. the other pages keep the existing droid wording (install, ~/.factory/ paths, background worktrees, bundled /deslop, no custom mode). the parallel-agents pitfall takes the new first sentence and keeps "own worktree" / background subagents.
  • #637 182f2ce414 and #705 1b80080058 shared doc docs/harness/claude-code.md, copied verbatim from upstream head (the #705 edits included).

docs/guide/01-setup.md had one upstream hunk, the custom-mode docs anchor. this port already replaced that paragraph because droid has no custom modes, so the file is unchanged.

already present

compared file content with upstream at 6ce45c59b9 and at 019a6a2059.

  • #633 e5136d8241 the four principle skills, skills/correct/SKILL.md, the poteto-mode principle index, and the attack-the-premise / test-behavior lines in docs/guide/08-principles.md already match upstream head.
  • #634 99743e9c15 lead-judgment.md, principle-make-operations-idempotent, principle-migrate-callers-then-delete-legacy-apis, principle-type-system-discipline, and the three cuts in skills/swarm/SKILL.md already match. swarm still uses the droid seat wording and ~/.factory/AGENTS.md.
  • #702 a968159326 poteto-mode and make-bot-ui already use their folder names. ci already requires every skill name to match its directory.

skipped

  • #637 / #705 generated tree harness/pstack/claude-code/, .claude-plugin manifests, and scripts/generate-pstack-harness-trees.mjs. those install pstack into claude code. this repo is the droid plugin.
  • #637 / #704 / #705 pstack/README.md lines. this readme is the droid install page. it does not carry the upstream skill tables, the custom-mode paragraph, or the claude code install notes. the principle restatements from those readme lines are already in the skill files and in docs/guide/08-principles.md.
  • #704 scripts/check-pstack-docs.mjs. a path-only adaptation (this repo as the tree, droids/ instead of agents/) still exits 1 with 83 problems, all "readme does not list" a skill, playbook, or droid. the guide checks themselves pass. making the script pass would mean rewriting the readme contract, not adapting paths. not wired into ci.

cursor-team-kit

deslop, control-cli, and control-ui match cursor-team-kit 1.2.0 at upstream head. no commits under cursor-team-kit/ since the 0.15.25 bump. left alone.

harness

droid 0.244.0, isolated HOME. marketplace add of https://github.com/pstack-ports/droid-pstack#cursor/port-pstack-post-0.15.25-e093 registered [email protected]. install landed at c1ee4e9. the cache has 57 skills, every name matches its folder, and typescript-best-practices has the type-guard brand line. node scripts/validate-plugin.mjs ok. bun run typecheck exit 0. bun test 68 pass, 0 fail. droid exec exited 1: not logged in, and FACTORY_API_KEY is unset.

ci Validate plugin is green on c1ee4e9: run 39087509222. it printed Validated 57 skills, 3 droids, and 23 playbooks.

command output is in a comment.

Open in Web Open in Cursor 

Copy the shared doc and skill edits from upstream main. Leave the version at 0.15.25.

Co-authored-by: Kaitian Xie <[email protected]>

@caelaxie caelaxie left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

verdict: changes requested (posted as comment, same account authored the pr).

content looks right on a first pass. typescript-best-practices SKILL.md + references/patterns.md match upstream #700 verbatim, docs/harness/claude-code.md is a straight copy, and the #704 guide edits keep the droid-specific wording only where droid needs it. skips (claude-code tree, readme lines, check-pstack-docs.mjs) are justified. versions unchanged at pstack 0.15.25 / cursor-team-kit 1.2.0, which matches upstream. no open issue to link.

blocking: no harness proof yet. the body says it follows in a comment. before merge, post the real output of:

  • droid plugin marketplace add for this branch
  • droid plugin install pstack@droid-pstack
  • droid plugin list showing pstack loaded
  • typescript-best-practices exercised in droid (the one changed skill)

also let Validate plugin finish green. i'll re-review when the proof comment or a new commit lands.

@cursor

cursor Bot commented Oct 18, 2026

Copy link
Copy Markdown

harness on c1ee4e9. droid 0.244.0. isolated HOME.

$ droid --version
0.244.0

$ HOME=$DROID_HOME droid plugin marketplace add "https://github.com/pstack-ports/droid-pstack#cursor/port-pstack-post-0.15.25-e093"
Successfully added marketplace: [email protected]

$ HOME=$DROID_HOME droid plugin install pstack@[email protected] --scope user
Successfully installed pstack@[email protected] (c1ee4e9)

$ HOME=$DROID_HOME droid plugin list
Installed plugins:
Active:
  pstack@[email protected]  [user]  c1ee4e9

$ git -C "$CACHE" rev-parse HEAD
c1ee4e9402812986fd9c3ebc7cc082695e425493

cache is ~/.factory/plugins/cache/.../pstack-7171b73fae68/c1ee4e940281. 57 skills, 0 frontmatter name mismatches. droids comment-sicko, poteto-agent, poteto-judgment.

skills/typescript-best-practices/SKILL.md in that cache:

name: typescript-best-practices

branded-types row: A brand comes from a verifying type guard (input is AgentId), never from as.

references/patterns.md has function isAgentId(input: string): input is AgentId.

docs/harness/claude-code.md is in the cache (67 lines).

$ node scripts/validate-plugin.mjs
validate-plugin: OK (57 skills, 3 droids)

$ bash -n skills/poteto-mode/scripts/worktree-audit.sh
$ bash -n skills/show-me-your-work/scripts/log.sh
(exit 0)

$ bun run typecheck
tsc --project watch-pr/tsconfig.json --noEmit --strict
(exit 0)

$ bun run test
68 pass
0 fail
246 expect() calls
Ran 68 tests across 5 files.

droid exec "say ok" exited 1:

Error during droid execution: Authentication failed. Please log in using /login or set a valid FACTORY_API_KEY environment variable.

no FACTORY_API_KEY in the environment, so a skill turn did not run.

ci Validate plugin is green on the same sha: https://github.com/pstack-ports/droid-pstack/actions/runs/39087509222
it printed Validated 57 skills, 3 droids, and 23 playbooks. and the same 68 pass / 0 fail.

@caelaxie caelaxie left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approve (comment review, same account as author).

harness proof is in now: marketplace add, droid plugin install pstack@droid-pstack@…, and droid plugin list all on c1ee4e9, cache shows the type-guard brand line in typescript-best-practices and the #704 guide pages. validate-plugin, typecheck, and 68/68 tests pass; ci green on the same sha.

content and parity already passed last round. skips are justified. no issue to link. the live droid exec turn is blocked on FACTORY_API_KEY, noted, not blocking for doc-only skill text that's proven loaded from the installed cache.

squash-merging.

@caelaxie
caelaxie merged commit 96c8166 into main Oct 18, 2026
1 check passed
@caelaxie caelaxie mentioned this pull request Oct 19, 2026
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