跳到主內容

Theme / 0.9.130

Pstack

用可驗證的工作流程協作,從單一入口學會工程技能

Changelog

版本更新紀錄

收錄 Pstack 的版本變遷軌跡。每條紀錄以舊值→新值呈現,舊值以紅線劃掉但保留可見,方便對照改動軌跡。

當前記錄版本

0.9.130

查看上游所有 Release ↗
  1. 0.9.130

    當前版本2026-11-06
    • 版本定位:0.9.129→0.9.130(2026-11-06 查核)。移植版上游 michael-denyer/pstack-claude 的 v0.9.130 於 2026-11-05 12:36 UTC 發布,releases 清單確認 0.9.129 與 0.9.130 之間無其他版本。本版主軸:新增 Kimi Code CLI、Grok Build、OMP、OpenCode 2 四個原生平台支援,並修正 setup-pstack 的模型行為、Antigravity 關閉輸出與多項工具行為。Cursor 原版(cursor/plugins)不發 GitHub releases,本次查核無新 release 活動。
    • Kimi Code CLI 原生 plugin(#394,@donbeave 貢獻):官方原文——「pstack now installs as a native Kimi Code CLI plugin」。根層級的 kimi.plugin.json 指向共用 skills 樹,plugin 啟用時把 kimi-instructions.md 的 routing 指令加進 system prompt。安裝:fresh session 跑 /plugins install https://github.com/michael-denyer/pstack-claude 與 /reload,以 /skill:pstack:poteto-mode 呼叫 skill。新的 kimi-tools.md 把 Claude 工具對應到 Kimi 的工具(Agent 含內建 coder、explore、plan agents,以及一次性 wake-up 的 CronCreate)。Kimi 不讀 session hook 行,關閉 routing 要用 /plugins disable pstack;setup-pstack 不在該處寫 effort 或 hook 行。Kimi Code CLI 2.4.1 for macOS 實測確認安裝與 routing/skill 內容送達 synthetic provider;model compliance 未測。
    • Grok Build 原生 plugin(#398,@donbeave 貢獻):官方原文——「pstack now loads as a native Grok Build plugin from a local checkout」。從本地 checkout 以 grok plugin install "$PWD/plugins/pstack" --trust 安裝、grok plugin enable pstack 啟用。.grok-plugin/plugin.json 列出共用 skills 與 Grok 專屬的 pstack-routing skill——Grok 會丟棄 SessionStart hook 輸出,改由該 skill 的 description 攜帶 poteto-mode hint;模型可能不遵循,且 session hook: off 關不掉,唯有停用 plugin 才能關閉。新的 grok.md 把 Claude 工具對應到 Grok 的(Agent 對應 spawn_subagent)。grok plugin update 不會刷新本地安裝,README 另給更新步驟。Grok Build 1.0.70 for macOS 以 tests/grok-smoke.py 確認 synthetic provider 收到 routing skill description 與明確 skill 內容。
    • OMP 原生 plugin(#396,@donbeave 貢獻):官方原文——「pstack now installs as a native OMP plugin through the marketplace」。安裝:omp plugin marketplace add michael-denyer/pstack-claude 之後 omp plugin install --scope user pstack@pstack-claude。新的 plugins/pstack/package.json 在 omp/index.mjs 宣告 extension:在每個 main-agent turn 前加 poteto-mode mandate,並把 main 與 subagent turns 指向新的 omp-tools.md;agent 從已安裝 plugin 的檔案讀取每個 pstack:<name> skill,不會誤取同名 skill。在 ~/.omp/pstack-models.md 設 session hook: off 對所有 OMP profile 關閉 routing,setup-pstack 在 OMP 只寫這一行、models 留給 OMP 自己的 modelRoles。限制:OMP 18.16.0 跨 scope 共用同一個 plugin cache,升級或移除可能影響其他安裝(上游 issue 16827)。OMP 18.16.0 實測確認本地 marketplace 安裝、skill 存取與 routing 開關;model compliance 未測。
    • OpenCode 2 原生 plugin 取代 ~/.agents/skills 安裝(#397,@donbeave 貢獻):官方原文——「OpenCode 2 now has a native plugin in place of the ~/.agents/skills install」。安裝:把 checkout 的 plugins/pstack/opencode 目錄加進 ~/.config/opencode/opencode.jsonc 的 plugins 陣列,或以 opencode plugin add 'github:michael-denyer/pstack-claude#main' 安裝 Git 套件;根層級 package.json 現以 ./server 匯出 plugin。opencode/index.js 把每個 skill 註冊為 pstack-<name>,並在 root sessions 的每個 model step(含 compaction 之後)加 session-start-opencode.md 的 routing 指令;當 pstack- skill ID 解析到其他安裝時略過 routing;在 ${XDG_CONFIG_HOME:-~/.config}/opencode/pstack-models.md 設 session hook: off 可關閉。先前把 pstack skills link 進 ~/.agents/skills 的使用者要先移除那些 links。OpenCode 1 不支援。新的 opencode-tools.md 把 Claude 工具對應到 OpenCode 的。OpenCode 2.2.5 以 synthetic loopback provider 實測明確啟用與 routing;CLI delegation 更早在 2.0.30 驗證;此 plugin 的真實模型行為未測。
    • RUNTIMES 註冊與測試:Kimi、Grok、OMP、OpenCode 加入 tools/runtimes.mjs 的 RUNTIMES,generator 會標記四者的 manifest 版本與各 mapping 的 Model names 區段並檢查每個 manifest;poteto-mode 的 Platform Adaptation 與 setup-pstack 的 runtime 表都列上四者。tests/kimi.test.mjs、tests/grok.test.mjs、tests/omp.test.mjs、tests/opencode.test.mjs 檢查各 mapping 覆蓋 skills 用到的 Claude 術語。
    • Kimi 的 setup-pstack model 參數行為(#407,@donbeave 貢獻):setup-pstack 在 Kimi 的步驟 1、6 與 sheet header 說明 inherit-parent 與 auto 會省略 model;Kimi 此時在設了 [secondary_model] 預設時以該預設跑 subagent,否則用 parent 的 model——這兩個別名不再必然等於 parent 的 model。當 Agent 工具沒有 model 參數時,setup 只提供這兩個別名;Kimi 2.5.1 只在模型池有兩個以上模型時才顯示該參數。步驟 2 保留 model ID 原樣(含 claude- 開頭者),不改寫成 family 名稱;kimi-tools.md 同步說明,無 sheet 時 agent 省略 model。
    • Grok 的 setup-pstack 模型來源修正(#408,@donbeave 貢獻):setup-pstack 原本從 Agent 工具與 session model selector 讀模型,但 Grok 透過 spawn_subagent 派發,其 description 才列出 subagent 可用的模型;步驟 1 現改提供那些模型。當 subagent model inheritance 隱藏 model 引數時,setup 只提供 inherit-parent 與 auto,並註明設定的 subagent overrides 仍然生效。步驟 2 保留工具列出的完整 claude- model ID,不改寫成 family 名稱。
    • Antigravity:session hook: off 時 hook 改印 {}(#405,@donbeave 貢獻):官方原文——「With session hook: off, the Antigravity SessionStart hook now prints {} where it printed nothing」,因為 Antigravity 的 hooks 文件說 hook 以 JSON 在 stdout 回傳輸出;{} 不帶 injectSteps,故不載入 mandate,tests/session-hook.test.mjs 的 agy off 案例改以 JSON 解析輸出。
    • MiniMax Code 更新步驟不再刪除已裝副本(#401,@donbeave 貢獻):README 的 MiniMax Code 更新步驟改為:記錄 plugin 啟用狀態、結束所有 mcode process、把 plugins/pstack 搬到 plugins/ 之外的未用路徑(MiniMax 會載入 plugins/ 下每個目錄),再跑 git pull 與 cp 行,最後還原啟用狀態。首次安裝會檢查 plugins/pstack 不存在。參考表新增記錄:MiniMax Code 0.7.4 上,synthetic-provider sessions 在 plugin 啟用時送達 routing 與明確的 pstack:poteto-mode skill、停用時省略;agent dispatch 與真實模型 compliance 仍未驗證。
    • worktree-audit.mjs 在 Bun/macOS 不再卡死(#406,@donbeave 貢獻):官方原文——「worktree-audit.mjs no longer stalls under Bun on macOS」。原以 realpathSync 以名稱比對 sibling symlink,而 Bun 會開啟 link 目標取其名稱;macOS 27.2 guest 中,對 autofs 的 /home link 做該開啟動作會卡死 worktree-audit 測試。Bun on macOS 下 audit 改只以 stat identity 比對 links;在 Node(腳本 shebang 所指定)與其他平台則維持名稱比對。
    • deslop diff 基準改 base、how 路徑提示修正、session-pickup 先驗證、codex-tools.md 對映 Codex rollouts、policy forks(#400,@wattanartongtipsukon-create 貢獻):官方原文——「deslop diffs against the branch's base, where it diffed against main」,base 依序取 PR 的 base branch、否則分支切出的來源分支、否則預設分支,未提交變更也計入;編輯後 deslop 重跑驗證該變更的 checks,檢查失敗的編輯會被還原。how 的 simple path 中,explainer prompt 改告知孤身 explainer 沒有 explorers 跑過、需自行追蹤程式碼(舊 prompt 謊稱 explorers 已完成該工作)。session-pickup playbook 現在先驗證 inherited claims 再路由剩餘工作——原本步驟 4 路由後即結束 playbook,步驟 5 的驗證落在結束之後。codex-tools.md 對映 ${CODEX_HOME:-~/.codex}/sessions/ 與 archived_sessions/ 下的 Codex rollouts(含以 zstd -dc 讀取的 zstd 壓縮 .jsonl.zst),只保留 cwd 為 workspace 或其 worktree 的 rollouts;recall 與 show-me-your-work 改把 Codex 導向該對映、讀 Codex 歷史而非 Claude Code 的 projects 目錄,show-me-your-work 在 CODEX_THREAD_ID 未設定時回報審計無法執行。tools/forks.json 將 deslop 與 explainer-prompt 編輯自 0.9.130 起宣告為 policy forks。
    • 完整教學見 lessons/v09130-four-native-platforms.md。
    上游 Release Notes ↗
  2. 0.9.129

    舊版本2026-11-05
    • 版本定位:0.9.128→0.9.129(2026-11-05 查核)。移植版上游 michael-denyer/pstack-claude 的 v0.9.129 於 2026-11-04 15:24 UTC 發布,releases 清單確認 0.9.128 與 0.9.129 之間無其他版本。本版只有一項變更:Antigravity 平台支援。Cursor 原版(cursor/plugins)不發 GitHub releases,其 pstack 路徑最新 commit 為 2026-10-27(#1043,含 chore(pstack): bump to 0.15.36),本次查核日無活動。
    • Antigravity 平台支援(#390,@minatoaquaMK2 貢獻):官方原文——「pstack now runs on Antigravity. agy plugin install ./plugins/pstack installs all 67 skills, the 4 agents, and the SessionStart routing hook」。安裝內容來自新的 .antigravity-plugin/plugin.json 與根層級的 hooks.json:Antigravity 只從該根檔案讀 hooks、忽略 Claude Code 的 hooks/hooks.json,hook 執行 ./hooks/session-start.sh agy。
    • Antigravity 的兩個限制與對應作法:其一,Antigravity 在已安裝的 plugin 目錄內啟動 hooks、且不設定 plugin-root 變數,共用腳本的 agy 分支因此以相對於該目錄的路徑運作;其二,Antigravity 原生 skill loader 只保留 skill 本文前 24,000 bytes,會截掉 poteto-mode 結尾,因此 routing hook 以 injectSteps system message 發出 poteto-mode mandate、新的 agy-tools.md(含 invoke_subagent 與 inherit/flash_lite/flash/pro 模型值)都指示 agent 用 read_file 完整讀取 poteto-mode 的 SKILL.md。在 ~/.gemini/config/pstack-models.md 設 session hook: off 可關閉該 mandate。
    • 驗證範圍與 Windows 限制:generator 會檢查 Antigravity manifest、hooks.json 的 hook 宣告與 hook script 的 execute bit;tests/agy.test.mjs、tests/session-hook.test.mjs 與 tests/runtime-packaging.test.mjs 新增案例。官方實測:agy 1.4.12 與 1.5.0 對本地 model stub(無 Google 帳號)確認 mandate 出現在 model request、session hook: off 時不出現;macOS 上登入的 agy 1.5.0 session 完整讀取 poteto-mode skill 並成功派發 poteto-agent。官方明言 hook 用 sh、Windows 未測試(untested)。
    • 2026-11-05 複查更正:本條初版誤將 #1043 的 commit 訊息主體寫成 chore(pstack): bump to 0.15.36。經親自查 gh api repos/cursor/plugins/commits/c742dd6,#1043 主體是 feat(pstack): make Orchestrate agentic and delete the orch scripts,bump to 0.15.36 只是該 commit 內的第二個訊息段落;前 6 筆中也僅見 #983 的 bump to 0.15.34。0.9.127~0.9.128 條目與舊課文中同一段描述已一併更正為「含 chore(pstack): bump to 0.15.36」。
    • 完整教學見 lessons/v09129-antigravity-support.md。
    上游 Release Notes ↗
  3. 0.9.128

    舊版本2026-11-04
    • 版本定位:0.9.126→0.9.128(2026-11-04 查核)。本站教學基準為移植版 0.9.126(commit 2dc481b);移植版上游 michael-denyer/pstack-claude 於查核日當天連發兩個 release:0.9.127(2026-11-04 00:10 UTC)與 0.9.128(2026-11-04 01:50 UTC),之間無其他版本。Cursor 原版(cursor/plugins)不發 GitHub releases,其 pstack 路徑最新 commit 為 2026-10-27(#1043,含 chore(pstack): bump to 0.15.36),本次查核日無活動。
    • 安全修復:移除被 Claude plugin directory 掃描器判定為 credential forward 的兩種寫法(0.9.128,#393):官方原文——「pstack no longer has the two source shapes that the Claude plugin directory's scanner read as a credential forward (MCP_FORWARDS_CREDENTIAL_ENV), the finding that held the plugin from publishing」;修復原則是「No child process inherits the whole environment」:statechart runner 改給 mise 與 java 一份不含 proxy 變數的具名變數清單,proxy 環境下首次 mise install TLC 或 Java 不再看到 HTTPS_PROXY(此時依錯誤訊息設定 TLA2TOOLS 與 JAVA,或自行帶 proxy 跑 mise install);Pi extension、codex-session-effort.mjs、worktree-audit.mjs 與 claude-project-dir.mjs 改讀具名變數而非整個 environment 物件;檔案讀取旁名為 key 的識別字也改為說明其實際持有的內容。
    • watcher 查詢失敗類別更名:missing-key → missing-field(0.9.128):官方原文——「the watcher's missing-key query failure is now missing-field, so a consumer that matches that failure kind needs the new name」;比對此失敗類別的下游消費端需要改用新名稱。
    • 0.9.128 撤回 0.9.127 的 pi 提示句(0.9.128):設定 pi agent tools: off 時,pstack-pi-tools system prompt 區段不再加回 0.9.127 那句「用 session 自己的 subagent 工具委派」。官方以 pi-subagents 0.84.0 並裝的 10 個 live sessions 實測(模型 openai/gpt-6.1-sol):5 個帶 0.9.127 原句、3 個帶改寫句、2 個無句,10 個 session 全部在讀 pi-tools.md 後呼叫 subagents_enable 與 subagent、從未呼叫 agent;且 10 個 session 的 subagent 都以不認得 description 選項為由拒絕呼叫,模型直接停止、沒有重試——模型是從 skill 自己的 Agent 呼叫指示取得 description,一句 system prompt 蓋不掉。tools: off 移除 agent、send_message、list_agents、stop_agent 與 /pstack-agents 的行為維持不變。
    • Pi delegation 可讓位給外部擴充(0.9.127,#384,@foreztgump 貢獻):在 ~/.pi/agent/pstack-models.md 寫 pi agent tools: off 一行,Pi extension 即不註冊 agent、send_message、list_agents、stop_agent 與 /pstack-agents,模型只看到一組委派工具——例如 pi-subagents 註冊的單一 subagent tool;pstack-pi-tools system prompt 區段加了一句「在 pi-tools.md 指名 pstack 工具處,改用 session 自己的 subagent 工具委派」;skills、ask_user_question、schedule_wakeup、/loop 與其他 prompt 區段保留。
    • Codex prompt stubs 全數移除(0.9.127,#388):plugins/pstack/.codex-plugin/prompts/ 下 43 個 prompt stubs 刪除——官方原文「Codex 0.166.0 loads none of them」,經 plugin install 或 docs/reference.md 的 ~/.codex/prompts 配方(該配方一併移除)都不會載入;「Each skill already serves its own slash command」——每個 skill 本來就有自己的 slash command;generator 不再寫 stubs,commands/ 資料夾仍會使其失敗;#385 的 stub frontmatter quoting 隨 stubs 一併消失。
    • watch-pr readSnapshot 重新攜帶上游 CI chain(0.9.127,#386):行為不變,no-checks wait 成為頭部新增的一個 branch;取代的上游行數從 62 行降到 3 行,sync dry-run 從 2,927 行降到 2,816 行,上游改 policy.ts 時的衝突更少。
    • Claude desktop:poteto-mode 的 playbook checklist 保進 todo.md(0.9.127,#389):mcp__ccd_turn__update_plan 要求約七個詞的簡短條目,desktop 實測(@Fpshealth 於 #387 測得)沒有 checklist 時 agent 丟掉了 36 個 playbook 步驟中的 17 個、且沒有 skip: 說明;現在逐字的 playbook checklist 保留在旁邊的 todo.md。
    • 完整教學見 lessons/v09127-09128-security-scan-and-platform-invocation.md。
    上游 Release Notes ↗

圖例

  • 當前版本 本站現在記錄的版本
  • 舊版本 已被取代,保留作歷史對照
  • 已同步 與上游 release 對齊
  • 僅上游變動 上游 main 有 commit,但未發佈新版