O

executing-plans

作者 obra

使用 executing-plans 技能加载一份书面的实现计划,对其进行审慎评审,并按步骤执行小颗粒度的开发任务,同时带有检查点与状态跟踪。

Stars0
收藏0
评论0
收录时间2026年3月27日
分类项目管理
安装命令
npx skills add https://github.com/obra/superpowers --skill executing-plans
概览

概览

executing-plans 技能的作用

executing-plans 技能适用于这样一种场景:你已经有了一份书面的实现计划,希望交给一个 agent 按照计划有条不紊地执行。它主要聚焦于:

  • 从项目中加载一份具体的、逐步拆解的计划
  • 在开始任何工作之前对计划进行批判性审查
  • 逐条执行任务,并清晰标记状态变化
  • 按计划要求运行验证与测试
  • 在开发完成后,交接给收尾工作流

在会话开始时,期望 agent 先声明:

"I'm using the executing-plans skill to implement this plan."

这样可以明确当前 agent 处于“结构化执行模式”,而不是自由形式的头脑风暴或规划模式。

适用人群

该技能适合:

  • 开发者:习惯先完成设计,再让 agent 按详细计划执行
  • 使用 GitHub 的团队:每个特性或分支都有一份书面实现计划
  • Agent 运营者:在如 Claude Code、Codex 等环境中,需要可预测、可复用的执行工作流
  • 项目维护者:希望严格按计划推进,且在关键步骤有显式检查点和验证动作

当你的计划已经拆分为 小颗粒度步骤,并包含明确的验证或测试要求时,这个技能尤其有用。

executing-plans 解决了哪些问题

executing-plans 技能可以帮助你:

  • 通过依托预先批准的计划,避免临时发挥、偏离方向式的实现
  • 要求在任何代码变更前先对计划进行批判性评审,从而尽早发现问题
  • 逐任务跟踪进度,将工作标记为 in_progress,然后再标记为 completed
  • 确保计划中指定的验证和测试真正被执行
  • 在开发结束后,顺畅交接给收尾技能,完成最终测试验证和决策

通过标准化计划执行流程,它可以减少沟通误差,帮助人类与 agent 在开发工作中以更可预测的方式协作。

什么时候适合使用,什么时候不适合

在以下情况下使用 executing-plans:

  • 你已经有了一份书面的实现计划
  • 计划已经按任务或步骤排好顺序
  • 你希望 agent 主要专注于 执行,而不是设计解决方案
  • 你需要在关键点上让 agent 主动求助,当有不清楚或被阻塞的情况时发出询问

考虑使用其他技能或工作流的情况:

  • 你需要从零开始 制定 一个计划(此技能假定计划已存在)
  • 计划过于模糊,或缺少关键细节
  • 你的平台具备丰富的 subagent 能力(例如 Claude Code、Codex),并希望使用更高级的编排能力——这种情况下建议改用仓库中推荐的 superpowers:subagent-driven-development
  • 你尚未确定具体实现策略,仍希望探索多种方案

仓库还说明,当所有任务执行完成后,应切换到必需的子技能 superpowers:finishing-a-development-branch 来收尾工作。

使用方式

安装与初始化

1. 安装 executing-plans 技能

obra/superpowers 仓库安装该技能:

npx skills add https://github.com/obra/superpowers --skill executing-plans

安装完成后,executing-plans 的执行工作流就可以在你的 agent 环境中使用了。

2. 准备你的实现计划

在调用技能之前,请确保你的项目中已有一份书面的实现计划。理想情况下,该计划应当:

  • 存放在 agent 可读取的文件中(例如在你的 repo 里)
  • 拆分成独立的任务或小颗粒度步骤
  • 为每个任务列出所需的 verificationtesting 指令

计划越清晰、越高质量,executing-plans 工作流就越可靠。

核心工作流:从计划到执行

步骤 1:加载并审查计划

当你使用 executing-plans 开启会话时,agent 应:

  1. 读取项目中的计划文件
  2. 对计划进行批判性审查,重点关注:
    • 信息缺失或指令模糊的地方
    • 步骤之间的冲突或自相矛盾之处
    • 不切实际的假设,或可能不成立的前置条件
  3. 如果发现问题,agent 应在开始执行 之前先向你提出 这些担忧
  4. 如果没有明显问题,agent 应创建内部待办结构(例如 TodoWrite),并准备执行

这一审查步骤至关重要。它可以防止 agent 盲目遵循存在缺陷的计划,鼓励尽早澄清问题。

步骤 2:带状态跟踪地执行任务

对计划中的每个任务,executing-plans 技能预期遵循如下模式:

  1. 先将任务标记为 in_progress,方便你查看当前进行中的工作
  2. 严格按照计划执行每个步骤
    • 默认假定计划中的步骤已经足够细致、具体
    • 除非计划明显不充分,否则 agent 应尽量避免自行发挥
  3. 按计划要求运行验证
    • 可能包括运行测试、linters,或计划中描述的手动检查
  4. 当该任务的所有工作和验证都完成后,将任务标记为 completed

这种结构既便于人类监控进度,也有助于 agent 避免跳过验证环节。

步骤 3:通过收尾技能完成开发

当计划中的所有任务都执行并通过验证后:

  • agent 应先声明:

    "I'm using the finishing-a-development-branch skill to complete this work."

  • 然后使用必需的子技能superpowers:finishing-a-development-branch

  • 依照该收尾技能的流程:

    • 视情况重新运行或确认测试
    • 给出最终结果或选项(例如分支当前状态或后续步骤)
    • 执行你选定的收尾操作

因此,executing-plans 最适合作为你开发流水线中的中段:从书面计划到具体实现变更,然后再交接给专门的收尾工作流。

处理阻塞与不确定性

何时应该停下来求助

根据技能定义,如果出现以下情况,agent 必须立即停止执行并向你求助:

  • 遇到 blocker,例如:
    • 缺少依赖或工具
    • 测试以意料之外的方式失败
    • 由于上下文限制,指令无法执行
  • 计划存在 关键性空缺,导致无法启动或继续工作
  • agent 对计划的某部分理解不足,无法有信心继续执行

这类情况下,会话应从“执行模式”切回“澄清模式”,agent 需要解释是什么阻碍了进度,以及它需要你提供什么信息或支持。

使用 executing-plans 的最佳实践

想要最大化发挥 executing-plans 的价值,可以参考以下建议:

  • 将计划写得 具体且有明确顺序,每个任务对应一个清晰的预期结果
  • 为每个主要变更添加验证说明
  • 鼓励 agent 在初始审查阶段 总结它发现的疑点,而不是默默猜测
  • 在执行完成后,持续使用 finishing-a-development-branch 技能收尾,让整体工作流保持一致、可预测

常见问题(FAQ)

用通俗的话说,executing-plans 技能是什么?

executing-plans 是一个结构化的工作流,帮助 agent 加载、审查并执行一份预先写好的实现计划。它会按任务逐步推进,执行指定的验证操作,在开发完成后再将控制权交给收尾技能。

如何安装 executing-plans 技能?

你可以通过 obra/superpowers 仓库安装:

npx skills add https://github.com/obra/superpowers --skill executing-plans

安装完成后,请配置你的 agent 或运行环境,确保它能读取你的实现计划文件,并在相关会话中调用 executing-plans。

使用 executing-plans 必须要有 subagents 吗?

不需要。executing-plans 设计之初就考虑了在 没有 subagent 支持的环境中使用。不过仓库也指出,Superpowers 在有 subagent 支持时效果更好。如果你的平台支持 subagents(例如 Claude Code 或 Codex),可以考虑改用 superpowers:subagent-driven-development,以获得更丰富的编排能力,而不是仅使用 executing-plans。

什么时候应该优先选择 executing-plans,而不是 subagent-driven development?

在以下情况下,更适合使用 executing-plans:

  • 你的环境对 subagent 支持有限或完全不支持
  • 你希望对既有计划进行简单、线性的执行
  • 你更看重“审查 → 执行 → 收尾”的简单流程,而不需要复杂的多 agent 编排

如果你需要多 agent 协作、动态任务拆解或更高程度的自主决策,则推荐使用 superpowers:subagent-driven-development

什么样的计划最适合与 executing-plans 搭配?

executing-plans 最适合以下类型的计划:

  • 写在 agent 可访问的文件中
  • 被拆分为 小颗粒度、有顺序的任务
  • 对预期结果、输入和输出有清晰说明
  • 明确规定每次变更之后的 验证或测试步骤

若计划过于高层、含糊,往往会触发更多澄清循环,阻碍执行进度。

executing-plans 如何处理测试和验证?

该技能期望计划中明确说明需要运行哪些测试或验证。对每个任务,agent 应:

  • 完成计划中描述的代码或配置变更
  • 运行计划中提到的具体测试、检查或命令
  • 只有在这些验证成功,或经与你沟通达成一致后,才将任务标记为 completed

这样可以把测试执行融入整个工作流,而不是事后补做。

当所有任务都完成后会发生什么?

当所有任务执行完毕且验证通过后,executing-plans 会把工作交接给 finishing-a-development-branch 工作流:

  • agent 会声明自己正在切换到收尾技能
  • 使用 superpowers:finishing-a-development-branch 作为必需的子技能
  • 由该技能负责最终检查、展示选项,并执行你选择的收尾操作

这种分工可以让“执行”和“收尾”职责边界清晰,更易于理解和维护。

如果计划本身是错的怎么办?

如果 agent 发现在严格遵循计划的情况下会导致错误行为,或计划按原样无法成功完成,它应该:

  1. 停止继续执行后续任务
  2. 清楚地说明计划 哪里存在问题
  3. 询问你是否要修改计划、重新制定一份,或切换到其他工作流

executing-plans 假定计划是唯一“真相来源”;当这个假设不成立时,就需要人类重新介入审查。

executing-plans 是否只适用于代码变更?

该技能主要面向 开发类工作(代码及相关任务),但“加载计划 → 审查 → 执行任务 → 进行验证”这一模式也可以应用于其他已明确规范的项目流程。最佳适用场景是:你可以将工作拆解为清晰的任务,并有客观、可验证的成功标准。

如何评估 executing-plans 是否适合我的项目?

你可以从以下迹象判断:

  • 计划中的任务稳定地被标记为 in_progresscompleted,且有良好的溯源性
  • agent 会按你指定的验证流程执行,并汇报其结果
  • 当计划不清晰或被阻塞时,你能较早收到 agent 的提醒
  • 切换到 finishing-a-development-branch 的过程顺畅且可预期

若上述情况基本符合,executing-plans 很可能与贵团队的项目管理和工作流自动化需求匹配得不错。

评分与评论

暂无评分
分享你的评价
登录后即可为这个技能评分并发表评论。
G
0/10000
最新评论
保存中...