pstack跨平台部署:同一棵技能树如何在6种Agent运行时跑起来
【免费下载链接】pstack-claudeClaude Code, Codex, Copilot, Pi, OpenCode, Gemini, and Prime Agent versions of Poteto's pstack. Rigorous agent workflows with Cursor primitives translated for other harnesses.项目地址: https://gitcode.com/GitHub_Trending/ps/pstack-claude
pstack 是一套跨 Agent 运行时的技能树(skill stack)部署方案:它在 Claude Code、Codex、Pi、GitHub Copilot、opencode、Gemini CLI 等 6 种 Agent 运行时之间共享同一套 58 个技能目录,让你用一句话poteto-mode驱动严谨的编码工作流,而不是在每个运行时里各写一套规则。
为什么需要 pstack 跨平台部署
AI 编码 Agent 生态分裂很快:今天用 Claude Code,明天切到 Codex,IDE 里还挂着 GitHub Copilot。技能、规则、模型配置散落在各处,换个工具就要重来一遍。
pstack 的答案是:写一次,处处跑。
- 所有技能集中在一棵共享技能树 plugins/pstack/skills/,各运行时原生发现同一批
SKILL.md; - 运行时差异不靠改技能内容解决,而是靠映射文件和执行适配器,见 CONTEXT.md 中的 "Build" 定义;
- 模型配置统一为"角色 → 模型"的 override sheet,由
setup-pstack一键生成。
同一棵技能树:它到底"共享"了什么
理解跨平台部署的关键,是分清三层:
| 层 | 位置 | 各运行时是否相同 |
|---|---|---|
| 技能内容 | plugins/pstack/skills/ 下的 58 个目录(34 个公开技能 + 24 个 principle 原则) | ✅ 完全相同 |
| 工具/模型映射 | 如poteto-mode/references/下的 codex-tools.md、pi-tools.md、copilot-tools.md | ⚙️ 各运行时一份 |
| 执行适配器 | 插件清单、hooks、Pi 扩展等 | 🔧 各运行时定制 |
也就是说,技能里写的 "用Agent工具派发子 Agent、用opus跑评审" 这类 Claude 风格措辞保持不变,运行时侧的映射文件负责把工具名和模型名翻译成各自的等价物。这样上游技能更新时,各运行时不会分叉成 N 份——同步机制见 tools/forks.json 与 tools/upstream.json。
6 种运行时一键安装指南
每个运行时的安装都是一两行命令,详情见 README.md:
Claude Code
在 Claude Code 中执行:
/plugin marketplace add michael-denyer/pstack-claude /plugin install pstack@pstack-claudeCodex
终端执行:
codex plugin marketplace add michael-denyer/pstack-claude codex plugin add pstack@pstack-claude装完后用/hooks信任路由钩子即可。
Pi
pi install git:github.com/michael-denyer/pstack-claudePi 包会加载技能树外加一个 pstack 扩展(plugins/pstack/pi/index.ts),补上 Pi 原生缺失的子 Agent 派发、提问、唤醒等工具。
GitHub Copilot
copilot plugin marketplace add michael-denyer/pstack-claude copilot plugin install pstack@pstack-claudeCLI 与 Copilot 桌面应用共享~/.copilot,一次安装两处生效。
opencode / Gemini CLI(共享技能目录方式)
这两个运行时走"skills-only"安装:clone 仓库后把技能目录软链进~/.agents/skills/,完整步骤和 skills CLI 方式见 docs/reference.md 的 Shared skills installation 一节。
另:Prime Agent 也通过共享目录发现技能,可在同一份清单中参考。
自动路由:让技能树"自己找上门"
装好只是第一步,pstack 的亮点是路由钩子:Claude Code、Codex、Copilot 三个插件在会话启动、恢复、清空、压缩时注入同一段 路由指令,由 session-start.sh 完成(Windows 上 Codex 走 PowerShell 适配器)。Pi 则由扩展在每次 Agent 启动时注入。
任务满足以下任一条件时,路由会把任务交给poteto-mode:
- 涉及多个文件,或改动被其他文件调用的签名;
- 包含设计或架构决策;
- 是原因不明的 bug 或性能问题。
小任务直接处理,不打扰你。不想自动路由?跑setup-pstack关闭即可。
setup-pstack:一条命令配齐模型与推理强度
不同运行时的模型生态完全不同(Claude 家系列 vs GPT-6 vs Gemini),pstack 的做法是把默认值集中放在 plugins/pstack/models.json,再用setup-pstack技能(SKILL.md)生成当前运行时的 override sheet:
- 探测当前会话真正可用的模型清单;
- 按角色(
arena runners、interrogate reviewers、how explorer等)逐项确认,支持opus @xhigh这类"模型 + 推理强度"写法; - 校验并写入 sheet,各运行时的存放路径与加载机制在 setup-pstack 的 Other runtimes 表格中列明。
之后所有多模型技能(arena 三模型并跑、architect 设计评审、interrogate 三方挑刺)都从 sheet 取模型,换运行时只需重跑一次 setup。
如何验证"真的跑起来了":Pi 等价表
跨平台最容易翻车的不是安装,而是"看起来装了,行为却悄悄缺了一块"。pstack 的做法是把每个 Claude Code 机制逐条对照,形成 docs/pi-equivalence.md 等价表:每个机制标注native/extension/mapping/difference状态、离线测试证据和真实会话验证结果。配套测试 tests/pi-equivalence.test.mjs 会拦住缺证据的行。这套"机制级对账"思路,对任何多运行时项目都值得抄。
快速上手:第一个 poteto-mode 任务
安装完成后,直接把需求丢给它:
Use poteto-mode to fix the search filter resetting when I change pages.对 bug 类任务,它会复现失败 → 用how和why调查 → 委托修复 → 重跑失败用例;跨函数边界的改动会先拉architect定方案。更多 playbook(计划、性能、调查、原型、PR 维护、发布等)见 poteto-mode/SKILL.md。
常见问题
Q:换个运行时,之前配置还要重来吗?技能不用重装(共享同一棵树),但模型 sheet 是每运行时一份,跑一次setup-pstack即可。
Q:只想用技能、不要插件和钩子?走 skills-only 安装路径(软链或 skills CLI),显式点名poteto-mode或写一条常驻指令替代路由钩子。
Q:技能树会不会被运行时改花?不会。同步边界由 CONTRIBUTING.md 定义,上游同步与生成校验由 tools/sync.mjs 和 tools/generate.mjs 强制,CI 会拒绝任何未声明的改动。
总结:pstack 的跨平台部署 = 一棵共享技能树 + 每运行时一份映射 + 一个模型 sheet + 路由钩子/扩展。安装命令各不同,但日常工作流完全一致——这正是"写一次,处处跑"的意义。
【免费下载链接】pstack-claudeClaude Code, Codex, Copilot, Pi, OpenCode, Gemini, and Prime Agent versions of Poteto's pstack. Rigorous agent workflows with Cursor primitives translated for other harnesses.项目地址: https://gitcode.com/GitHub_Trending/ps/pstack-claude
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考