pstack如何路由任务:poteto-mode的22条触发器逐条注解
【免费下载链接】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 是把 Poteto 的 agent 工作流移植到 Claude Code、Codex、Pi 等运行时的技能栈,其核心是 poteto-mode:你只描述目标,它负责把任务路由到正确的技能、Playbook 和子代理。本文逐条注解 pstack 任务路由背后的 22 条触发器,帮你看懂 AI 编码代理是如何"自动选对流程"的。
一、先搞懂:pstack 的两层任务路由
pstack 的路由分两层,分别来自两个文件:
- 会话启动层:插件在启动、恢复、清空、压缩时自动注入一段路由指令(见 session-start-context.md,由 hooks.json 中的
SessionStart钩子触发)。它负责判断"这个任务要不要进 poteto-mode"。 - poteto-mode 内部层:进入后,SKILL.md 的 "Remaining triggers" 区块定义了 19 条流程触发器,决定"接下来调哪个技能"。
两层合计构成本文逐条注解的 22 条触发器(其中 3 条启动层条件与 19 条内部触发器共同作用,架构决策类条件在两层中只计一次)。
二、启动层:3 条自动路由条件(触发器 1-3)
这 3 条条件满足任意一条,pstack 就会调用pstack:poteto-mode;更小的任务(单文件改动、一行编辑、单纯提问)则直接干活,不走重型流程。
| # | 触发条件 | 注解 |
|---|---|---|
| 1 | 改动涉及多个文件,或修改了其他文件调用的函数签名 | 影响面扩散的信号,必须先规划再动手 |
| 2 | 涉及设计或架构选择 | 有取舍的任务交给 architect 等技能做并行设计探索 |
| 3 | 原因未知的 bug,或性能问题 | 走 Bug fix / Perf issue Playbook:先复现、再定位、后修复 |
如果意图已经明确(比如你直接说"用 TDD 修这个 bug"),可以直接进入对应技能,跳过 poteto-mode 中转(如 session-start-context.md 所列的pstack:tdd、pstack:architect等)。
三、poteto-mode 内部:19 条流程触发器逐条注解(触发器 4-22)
以下 19 条全部来自 poteto-mode SKILL.md 的触发器区块,每条都规定了"遇到什么情况 → 自动调用哪个技能/Playbook"。
| # | 触发场景 | 路由到 | 注解 |
|---|---|---|---|
| 4 | 非平凡改动、架构决策,或冒出"我们确定吗?" | how技能 | 先搞清楚子系统怎么工作,再动手 |
| 5 | 准备问用户"该选哪种方案" | 先分类,能跑实验的就用 Prototype 剧本实测 | 能观察到的事实不该问人;只有真正的产品取舍才提问 |
| 6 | 写任何代码 | 先命名数据形状(principle-model-the-domain) | 数据结构定对了,代码自然简单 |
| 7 | 代码跨越函数边界 | architect技能 | 实现前先做并行设计探索 |
| 8 | 需要并行 fan-out | swarm(覆盖矩阵/竞速)或arena(方案烤战+择优嫁接) | 见 playbooks/ 与 reference.md 的命令表 |
| 9 | 设计有争议 | interrogate技能 | 三个不同模型对抗式审查,过审才发布 |
| 10 | 非平凡的多步任务 | 写入吞吐检查点 | 长任务留下可验证的中途锚点 |
| 11 | 任何文字输出(包括回复本身) | unslop技能 | 清掉"AI 味",短陈述句、一个论点一句 |
| 12 | 文档、RFC、README、PR 描述、提交信息 | technical-writing技能 | 在 unslop 之上加结构化和句子纪律 |
| 13 | commit 之前 | deslop技能 | 提交前对 diff 做最后一轮去噪 |
| 14 | 代码评审之前 | no-comments技能 | 剥离阶段叙述式注释,只保留"非显而易见的 why" |
| 15 | 跑基准、测性能、报告加速/回退数字 | benchmark-checklist技能 | 先排除瓶颈、调参、测量错误,再让数字开口说话 |
| 16 | 发布 UI / IDE / CLI | run / verify驱动技能 | bug 修复要先在同一界面复现;没有项目 verify 技能时回退到 run |
| 17 | 任何PR 状态请求("看下 PR X"、"让它变绿") | Babysit剧本 | 驱动 PR 到可合并状态;先声明模式再轮询 |
| 18 | 要求落地/发布绿色 PR 栈 | Shipping剧本 | "绿"不等于"安全":每个 PR 独立裁定,只落地从根连续的已验证段 |
| 19 | 自动评审 bot / 安全 bot 留下评论 | 按 bugbot-triage.md 分诊 | 怀疑姿态:真 bug 修掉,噪音用具体理由驳回 |
| 20 | 部署到托管平台(Railway、Vercel 等) | 先加载平台技能 | 运行平台 CLI 前先把该平台的技能读进来 |
| 21 | 任务中途发现缺陷 | 按严重度定产物 | 正确性/数据缺口必须开 issue,哪怕是在写收尾文档时发现的 |
| 22 | 长任务、自主运行、用户"去睡觉" | show-me-your-work决策轨迹 | 留下可审计的决策记录,高风险时提交入库 |
💡 触发器之外还有几条伴生规则:技能本身坏了就单独开 PR 修而不是默默绕过;没有匹配的剧本时路由到figure-it-out现场设计一份;项目还能在
.agents/playbooks/放置自己的剧本扩展内置流程。
四、触发之后:22 条触发器如何落到 23 个 Playbook
触发器解决"调谁",Playbook 解决"怎么走"。poteto-mode 内置了 23 个剧本(Playbooks 区块),常用的几个:
- 🐞Bug fix:复现 → 用 how/why 调查 → 委派修复 → 重跑失败用例,交付"失败证据 + 通过证据"
- ✨Feature:从命名好的数据形状出发,跨函数边界先过 architect
- 🚚Babysit / Shipping:前者盯 PR 到可合并,后者验证后自底向上落地
- 🌙Autonomous run / Orchestrate:前者把一个任务跑到完成,后者接管一个跨天项目
匹配到剧本后,它的步骤会逐字拷进任务清单;不做的步骤必须保留并写明skip: 原因。每个角色用哪个模型由 models.json 决定,可用setup-pstack按角色配置(如arena runners: opus @xhigh),配置入口见 setup-pstack SKILL.md。
五、快速上手:让路由自己工作
在 Claude Code 里安装后,只需自然语言下达目标:
Use poteto-mode to fix the search filter resetting when I change pages.启动路由不需要任何手动配置——钩子随插件一起安装;想关掉自动路由,运行setup-pstack把 session hook 设为 off 即可(详见 reference.md 的 Automatic routing 小节)。
六、延伸阅读
- 触发器全文:plugins/pstack/skills/poteto-mode/SKILL.md
- 注入的路由指令:plugins/pstack/hooks/session-start-context.md
- 23 个 Playbook:plugins/pstack/skills/poteto-mode/playbooks/
- Pi 运行时的等价机制:docs/pi-equivalence.md 与 plugins/pstack/pi/index.ts
- 技能与斜杠命令总表:docs/reference.md
📌 一句话总结:pstack 把"该走什么流程"这件事编码成了 22 条触发器——3 条决定进不进重型流程,19 条决定流程里每一步调哪个技能。读懂它们,你就读懂了这个 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
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考