关于 poteto-help
poteto-help 是用于解答 pstack 问题并指向相关技能或指南的 pstack 技能。它说明操作方法但不代为开始工作,并区分求助与任务请求。
主要功能
- 01将问题引导至 pstack 技能和指南
- 02说明设置与任务工作流
- 03区分求助与工作请求
- 04提供源文档链接
适用场景
- 01为具体情境找到合适技能
- 02了解 pstack 设置和模型选择
- 03运行出错后获取指导
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mdsmithaustin/ pstack --skill poteto-help安装后在 Claude Code 中输入/poteto-help确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlreferences/prompting.mdrecipes.md详细介绍
原文在翻译后有更新,译文可能不是最新。
Poteto 帮助
回答用户关于 pstack 的问题,提供一段他们可以发送的提示词,并链接到答案所依据的文件。遇到帮助问题时,不要开始执行任务。用户问的是如何操作,而运行 pstack 会消耗实际的 token,因此让他们自己发送提示词。
像“用 pstack 修复这个 bug”这样要求执行任务的消息,不属于帮助问题。使用 poteto-mode 技能,并按该技能的要求完成任务。
此文件将问题对应到包含答案的技能和指南页面。具体内容以这些文件为准。引用前先阅读你转到的文件;若其内容与此映射不同,以该文件为准。从已安装技能的根目录读取同级技能。README 和指南页面不会随已安装的技能一起提供,因此,如果当前会话在 pstack 检出目录中运行,就从该目录读取;否则从公开副本读取。将文件的公开副本提供给用户:https://github.com/mdsmithaustin/pstack/blob/main/ 后接其仓库路径,例如 skills/how/SKILL.md 或 docs/guide/01-setup.md。技能文件位于 skills/ 下,因此像 how/SKILL.md 这样的相对于技能根目录的路径会返回 404。
弄清他们需要什么
根据消息和对话推断需求。对于明确指出的情形,例如“哪个技能可以审查 PR?”,直接进入相应章节。如果需求仍不明确,就提出一个包含以下选项的单选问题,然后只回答他们选择的章节:
- 完成设置
- 使用
/poteto-mode开始任务 - 根据情形选择技能
- 修复出错的运行
- 按自己的需求定制 pstack
检查会影响答案的状态,并且只在相关时提及:
- 如果既没有
~/.agents/pstack-models.md,也没有工作区中的.agents/pstack-models.md,则表示该用户尚未运行/setup-pstack,因此每个角色都会使用默认模型。 - 如果项目中没有
verify-*技能或其他应用测试工具,Agent 就没有脚本化的方式来驱动应用。如果问题涉及如何证明更改有效,请提及/create-verification-skill。 - 如果项目中没有正式验证技能,就不会检查测试覆盖范围之外的属性。如果问题涉及竞争条件、不变量或其他测试很少触及的情况,请提及
/create-formal-verification-skill。如果存在此类技能,且其覆盖的代码在它记录的最近一次同步提交之后发生过更改,而问题又涉及该代码,请提及/maintain-formal-verification-skill。
如果模型配置缺失且与问题相关,请询问用户现在是否想为每个角色选择模型和推理预算。用户是新用户、问题涉及设置或费用,或答案取决于运行哪些模型时,此事才相关。每次聊天最多询问一次。如果需求也不明确,就把两个问题一并提出。提供两个选项:
- 现在:让他们输入
/setup-pstack,同时回答他们的问题。 - 稍后:回答他们的问题,并补充一行说明,在他们运行
/setup-pstack之前,每个角色都会继续使用默认模型。
完成设置
- 在项目根目录运行
npx skills add mdsmithaustin/pstack进行安装,并选择用户使用的目标工具。-g会安装到用户级别,而不是每个项目单独安装。 - 运行
/setup-pstack。它会检查捆绑的角色,询问推理预算,为每个角色匹配模型,并写入~/.agents/pstack-models.md。技能下次运行时会读取该文件。在 Claude Code 中,它还会设置技能列表,这样仅按名称加载的技能就不会再显示其描述。然后,它会各提供一次为项目生成验证技能和形式化验证技能的选项,除非项目已经有相应技能。 - 使用
/poteto-mode,加上一个目标和一个可通过或不通过的检查,开始一项实际任务。
根据用户描述触发的技能列在“修复出错的运行”下。有关调用行为和 Claude Code 的设置要求,请参阅 README。指南第 1 页详细介绍了设置。请参照 references/prompting.md,主动提出协助用户撰写第一条提示词。
如果用户担心费用,请说明令牌用在何处,以及如何减少用量。pstack 会在子 Agent 和评审小组上花费额外令牌。重新运行 /setup-pstack,选择较低的预算或更便宜的模型。角色设为 auto 或 inherit-parent 时,会使用会话模型运行;如果会话使用更便宜的模型,就能节省令牌。评审小组列表越短,运行的子 Agent 越少,每个条目对应一个子 Agent。只有需要严谨处理的工作才使用 /poteto-mode。
pstack 可在 Claude Code、Codex、Hermes 和 Grok Build 中运行。大多数工作流技能,包括 /poteto-mode、/how、/why 和 /poteto-teach,都会按角色模型生成子 Agent。pstack-harness 技能会将子 Agent 生成、模型、工作列表和循环映射到各个 CLI。Hermes 不支持已提供的 Claude 别名,因此在 Hermes 中,默认角色会使用会话模型运行,默认多模型评审小组会变成同模型评审小组。写入模型配置的 Hermes 模型名称会按原样运行。
使用 /poteto-mode 开始任务
/poteto-mode 会将任务匹配到操作手册,将手册的开场说明和步骤复制到工作列表中,并在步骤需要时运行其他技能。跳过的步骤仍会保留在列表中,并标记为 skipped: <reason>。关闭任务工具后,工作列表会以编号列表的形式显示在聊天中。好的提示词会说明目标以及如何判断任务已完成。它不会列出技能,因为手写的步骤序列往往会遗漏或打乱操作手册中保留的步骤。协助撰写提示词前,请先阅读 references/prompting.md。指南第 2 页提供了示例。
/poteto-mode 会持续生效。调用后,它会在有匹配的操作手册或任务需要严谨处理时自动应用,否则不会干扰对话。用户可以明确表示退出。遇到上下文压缩或截断时,请阅读该模式的恢复规则。聊天过程中,“new task”会让该模式为新任务匹配一份操作手册。/poteto-mode 已使用 poteto-agent 来处理其操作手册步骤生成的子 Agent。若要让自己生成的子 Agent 也采用相同风格,请按 pstack-harness 技能的“生成角色”一节所述,生成 poteto-agent 角色。/setup-pstack 可以将其注册为原生 Agent。
选择技能
默认建议是 /poteto-mode;在步骤需要时,它会运行大多数其他技能。当用户希望某方面的程度超过或低于操作手册所提供的程度时,直接指定技能。推荐技能前,请先阅读该技能,并提供一个示例提示词。
| 用户想要 | 技能 |
|---|---|
| 严谨地完成任何非简单任务 | /poteto-mode |
| 在开始前确认 Agent 理解了他们的目标和问题 | /in-your-own-words |
| 发送提示词前对其进行深化,而非扩写:补充顶尖专业人士会加入的内容、他们的原始素材和方法,以及外部检查。该技能会返回提示词,不会执行任务 | /sharpen |
| 了解代码目前如何运行,或新代码应该放在哪里 | /how |
| 了解代码为何采用这种结构,或某个数字的来源 | /why |
| 用通俗易懂的方式理解一项变更或子系统 | /poteto-teach |
| 回顾自己最近在某个主题上的工作 | /recall |
| 用通俗的语言和简明的图示回顾上次发言以来本次聊天中的变化,并列出所有待他们处理的事项,且只需回复就能决定如何处理 | /ketchup |
| 了解一个小型差异可能对其自身以外造成的影响 | /blast-radius |
| 在编写跨越函数边界的代码前确定类型和模块结构 | /architect |
| 针对同一任务说明进行多次尝试,并合并出最佳结果 | /arena |
| 将工作拆分并行检查,或让工作线程竞速,作为并行子 Agent 运行 | /swarm |
| 让不同模型审查差异并尝试找出问题 | /interrogate |
| 在有成本低廉的本地测试时,先编写测试再修复 bug | /poteto-tdd |
对 .ts 或 .tsx 文件的工作应用 TypeScript 规则 | /typescript-best-practices |
| 在审查前移除注释,并交由未编写这些注释的审查者进行审查 | /no-comments |
| 在一条评论中用示意图说明拉取请求的目的和变更内容,帮助审查者了解背景 | /pr-recap |
| 在提交前清理分支所改代码中的冗余 | /deslop |
| 清除文案中的 AI 痕迹 | /unslop |
| 按照标准撰写文档、RFC、README、PR 描述或提交消息 | /technical-writing |
| 更新或审查变更所影响的文档 | /documentation-impact |
| 用通俗的语言再次听一遍上条回复 | /bro |
| 为 Agent 提供脚本化的应用操作方式,并证明其行为 | /create-verification-skill |
| 使验证技能及其功能映射与应用保持一致 | /maintain-verification-skill |
| 对测试很少覆盖的竞态、不变量或其他属性进行形式化验证 | /create-formal-verification-skill |
| 在所覆盖的代码发生变化后使形式化验证保持一致,并判断失败是因代码偏移还是 bug 导致 | /maintain-formal-verification-skill |
| 编写不会在毫无测量的情况下仍然通过的测试调用、CI 门禁或 shell 断言 | /verify-commands |
| 在编写代码前找出规格说明中的边界情况和绝不能发生的情况 | /spec-probes |
| 探测正在运行的产品、功能或 PR,找出尚未报告的 bug | /runtime-probes |
| 在报告或据此采取行动前,审查性能数据 | /benchmark-checklist |
| 处理大型变更或跨领域变更,或在离开一段时间后再审查变更 | /figure-it-out |
| 在运行过程中记录决策,并在之后进行审查 | /show-me-your-work |
| 为每个角色选择模型并分配推理预算 | /setup-pstack |
| 将自己的工作习惯转化为个人模式技能 | /automate-me |
| 将已完成任务中的经验转化为技能修改 | /reflect |
| 阻止 Agent 在此代码库中重复犯同样的错误 | /correct |
| 构建一个页面,让页面按钮通过 webhook 唤醒 Grok Bot | /make-bot-ui |
| 熟悉 pstack | /poteto-help |
如果相邻的技能目录未列在表格中,请读取其 frontmatter,并根据描述进行路由。principle-* 目录在下文的原则部分介绍。 |
容易混淆的情况:
/how说明代码的作用。/why解释原因。/poteto-teach会运行其中一个或两个,并用浅显的语言解释结果。/arena给每位工作者相同的任务说明,并整合最佳部分。/swarm将工作拆分为多个切片或一场竞赛,并返回一份报告。/architect在敲定设计后立即实现。添加“with checkpoint”,即可在写代码前审查设计。/interrogate审查差异。/blast-radius会查找差异之外的潜在破坏,并验证那个能证明更改安全的关键事实。/deslop清理代码。/unslop清理文字。/recall重建近期聊天中的上下文。/ketchup仅涵盖用户上次发消息后本次聊天中的内容。恢复某个特定聊天或分支,请使用 Session pickup playbook。/figure-it-out设计一次严谨的运行。Orchestrate playbook 会运行一个跨越多天和多个 PR 的程序。Autonomous run playbook 会推动一项任务达到完成条件。
pstack 中没有的内容:
control-cli和control-ui属于 Cursor 插件。pstack 通过项目自己的verify-<app>技能驱动应用,该技能由/create-verification-skill编写。/loop是 CLI 的唤醒机制,不是 pstack 技能。Claude Code 内置了这一机制。对于不具备该机制的 CLI,可定时重新提示,或运行一个监视器子 Agent。- pstack 没有
/orchestrate技能。Orchestrate 是一个/poteto-modeplaybook。如果斜杠菜单中出现/orchestrate,说明有另一套技能集提供了它。
Playbook 和原则
Playbook 是 /poteto-mode 中的步骤列表,不是技能,因此没有斜杠命令。在 /poteto-mode 中,描述任务即可选出适用的 playbook;以下短语则可直接指定 playbook:
- “babysit this pr”或“check on pr 123”会运行 Babysit。它会推动 PR 达到可合并状态,然后停止。除非用户要求合并、落地或发布,否则它不会合并。
- “review this pr”会运行 Code review,用于审查他人的拉取请求、分支或差异。
- “land the stack”会运行 Shipping。
- “take over this branch”会运行 Session pickup。
- “pause safely”会运行 Pause safely。
- “full autopilot on this queue”会运行 Autopilot-full。“stack them, don't ship”会运行 Autopilot-stack。
- “run the eval playbook”会运行 Eval。
如果没有 /poteto-mode,像“babysit this pr”这样的短语可能会启动 CLI 或另一套技能集中的同名技能。 poteto-mode 的 Playbooks 部分列出了所有 playbook 及其适用场景。指南第 6 页介绍了如何开启、跟进并落地 PR。
pstack 没有规划技能。CLI 自带的计划模式可以与它配合使用。对于跨越多个阶段或堆叠 PR 的工作,要求 /poteto-mode 制定计划会运行 Multi-phase plan playbook,它会编写计划,但不会执行计划。对于设计问题,Prototype playbook 或 /architect 会先通过代码敲定设计。
原则是每条规则对应一个技能,/poteto-mode 会读取这些技能,并在回复中引用。用户很少直接调用它们,而是使用名称来引导,例如“apply prove it works. show me the real output.”。输入 /principle-<name> 仍可按需加载对应原则。指南第 8 页列出了这些原则。
修复运行出错的问题
| 症状 | 修复方法 |
|---|---|
| 模式停止生效 | 阅读 README 中的续接指南。 |
| 某个问题被当成上一项任务的下一步 | 说“新任务”,或说明这轮不需要使用该模式。 |
| 新的模型选择没有生效 | 工作区中的 .agents/pstack-models.md 会覆盖主目录中的文件,而像 ## codex 这样的运行环境分区会优先于普通行。在 Claude Code 中,只有 /setup-pstack 注册了 pstack 的 effort agents 后,指定的 effort 才会生效一次。 |
| 运行成本超出预期 | 查看“开始使用”下的成本段落。 |
| 某项技能没有自动加载 | 在 Codex 中,以及 Claude Code 通过 /setup-pstack 设置技能列表后,只有 /setup-pstack、/how、/why、/unslop、/deslop、/pr-recap、/documentation-impact、/verify-commands、/spec-probes 和 /runtime-probes 会根据用户的话语加载。其他技能会在用户输入其名称,或其他 pstack 技能(例如 /poteto-mode)指示 Agent 使用它们时加载。/poteto-mode 不会运行所有技能。 |
| 并行 Agent 相互覆盖了对方的工作 | 为每个 Agent 分配自己的 worktree。 |
| 运行了一夜,有进展但什么都没完成 | /loop 需要的是一个可通过或失败的检查,而不是时长。参见指南第 7 页。 |
| 回复根据绿色构建结果宣称成功 | 要求提供实际命令、流程、存储值或配置文件。这就是“证明它能正常工作”的原则。 |
如果运行偏离了方向,references/prompting.md 提供了单行引导语。指南第 10 页列出了更多易踩的坑和值得复制的实用方案。
定制 pstack
/automate-me根据用户自己的历史记录起草个人模式技能,供其与/poteto-mode搭配使用。- 会话结束后运行
/reflect,将经验转化为技能修改,供用户审批。 /poteto-mode write a skill for <workflow>会运行技能编写指南。评估指南会对技能修改进行盲测。- 如果某项技能表现异常,应在其独立的 PR 中修复,不要在出错的功能工作中修复。
指南第 9 页介绍了上述每项内容。
回复
开门见山地回答。最多在代码块中给出一个示例提示词;合适时可改编自 references/recipes.md,然后附上该文件的链接。除非用户要求完整概览,否则保持简短。