mcpField
F
feature-planning

feature-planning

github.com/nicepkg开发28850 次安装40 周前更新
代码仓库

关于 feature-planning

feature-planning 是将 Z01 研究资料转为 Z02 实施计划的工作流技能,面向准备进入功能实现阶段的项目团队。它先加载 CLAUDE.md 约束并检查研究与澄清文件,再调用 superpowers:writing-plans 并验证输出。

主要功能

  1. 01读取 CLAUDE.md 项目约束
  2. 02检查并读取全部 Z01 文件
  3. 03阻止未答复问题进入规划
  4. 04调用 superpowers:writing-plans
  5. 05验证 Z02 计划与澄清文件

适用场景

  1. 01根据研究资料制定功能实施计划
  2. 02将项目约定纳入实施步骤
  3. 03检查阻塞问题后再开始规划

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/nicepkg/ai-workflow --skill feature-planning

安装后在 Claude Code 中输入/feature-planning确认已加载。

详细介绍

功能工作流:规划实现

你正在阅读此技能

停止。在进行任何其他操作之前:

  1. ☐ 创建 TodoWrite 清单(见下文)
  2. ☐ 将步骤 1 标记为 in_progress
  3. ☐ 首先阅读 CLAUDE.md(如果存在)

此技能是一个封装器,用于加载 Z01 上下文并调用 superpowers:writing-plans

强制第一步:创建 TodoWrite

TodoWrite({
  todos: [
    {content: "Step 1: Load project context (CLAUDE.md if exists)", status: "in_progress", activeForm: "Reading CLAUDE.md"},
    {content: "Step 2: Verify Z01 files exist", status: "pending", activeForm: "Checking research"},
    {content: "Step 3: Read ALL Z01 files", status: "pending", activeForm: "Loading context"},
    {content: "Step 4: Invoke superpowers:writing-plans", status: "pending", activeForm: "Creating plan"},
    {content: "Step 5: Verify Z02 outputs", status: "pending", activeForm: "Validating output"}
  ]
})

每完成一步: 将其标记为已完成,并将 in_progress 移至下一步。

为什么使用此封装器?

  • 自动管理 Z01 → Z02 文件
  • 将 CLAUDE.md 约束加载到规划上下文中
  • 强制采用功能工作流命名约定(Z02_{feature}_plan.md)
  • 集成澄清工作流(Z02_CLARIFY)
  • 保持文件结构一致

不使用此封装器: 你需要手动加载 Z01 文件、传递给 superpowers:writing-plans、管理 Z02 输出路径并检查是否存在需要澄清的问题。

工作流步骤

步骤 1:加载项目上下文(强制第一步)

如果 CLAUDE.md 存在,请先阅读。

从 CLAUDE.md 中提取(如果存在):

  • 必须保留的强制模式
  • 必须避免的禁止做法
  • 项目约定(命名、结构等)
  • 发布工作流和约束

重要: 如果 CLAUDE.md 存在且包含约束,必须将这些约束传递给 superpowers:writing-plans,以确保计划遵循项目标准。


步骤 2:确认 Z01 文件存在

在常见位置(docs/ai/ongoing、.ai/ongoing、docs/ongoing)中查找现有的 Z01 文件。

如果找到 Z01 文件:

  • 记录 ONGOING_DIR 的位置
  • 从文件名中提取功能名称(例如,Z01_metrics_research.md → “metrics”)
  • 功能名称应已由 feature-research 转换为规范的 snake_case

如果未找到 Z01 文件:

  • 询问用户是否要先运行 feature-workflow:feature-researching
  • 或者在没有研究上下文的情况下继续(不理想)

步骤 3:读取所有 Z01 文件

读取 ONGOING_DIR 中的所有 Z01 文件:

  • Z01_{feature}_research.md(必需)
  • Z01_CLARIFY_{feature}_research.md(如果存在)

阻断性检查——如果 Z01_CLARIFY 存在:

  • 读取该文件
  • 检查“User response:”字段是否为空
  • 如果有任何字段为空 → 停止,并报告:“无法在问题尚未回答的情况下制定计划。请先回答 Z01_CLARIFY_{feature}_research.md 中的所有问题。”
  • 如果所有问题均已回答 → 继续

提取:

  • 技术研究和集成点
  • 文件路径和行范围
  • 已回答的澄清问题
  • 安全和测试要求

步骤 4:调用 Superpowers 规划

重要: 此技能的主要职责是调用 superpowers:writing-plans 并提供 Z01 上下文。如果跳过此调用,此技能将毫无用处。

使用 Skill 工具调用 superpowers:writing-plans

提供以下指令:

“根据 Z01_{feature}research.md 中的研究内容以及 Z01_CLARIFY{feature}_research.md 中的澄清内容,为 {feature} 功能制定实现计划。

来自 CLAUDE.md 的强制约束: [如果 CLAUDE.md 存在,请在此处填写其中的约束、模式或禁止做法]

重要:将计划保存到 {ONGOING_DIR}/Z02_{feature}_plan.md(使用检测到的路径,而非硬编码的 docs/plans/)。

该计划应为一份指令性文档,并包含:

  • 研究中提到的确切文件路径
  • 完整的代码示例
  • 每项任务的验证步骤
  • TDD 结构(测试失败-实现-测试通过-提交)
  • 假设工程师对该领域的了解很少

如果规划期间发现新的阻断性问题(Z01_CLARIFY 中尚未涉及),请创建 {ONGOING_DIR}/Z02_CLARIFY_{feature}_plan.md。否则,不要创建 Z02_CLARIFY 文件。

纳入已回答的问题时: 删除已全部回答的 CLARIFY 文件;如果只有部分问题已回答,则移除已纳入的问答对。”


步骤 5:验证输出

superpowers:writing-plans 完成后:

检查结构:

  • Z02_{feature}_plan.md 必须存在于 ONGOING_DIR 中(主指令计划)
  • 仅当存在新的问题时,才创建 Z02_CLARIFY_{feature}_plan.md

向用户报告:

  • “已创建计划:Z02_{feature}_plan.md”
  • 如有待澄清事项:“Z02_CLARIFY_{feature}_plan.md 中有待解决的问题”
  • 下一步:“检查待澄清事项,然后使用 feature-workflow:feature-implementing”

危险信号——出现以下情况说明你做得不对:

  • Z01_CLARIFY 中的问题尚未解答就继续操作(阻塞——必须停止)
  • 未先读取 CLAUDE.md(如果存在)
  • CLAUDE.md 存在,但未将其中的约束传递给规划流程
  • 未检查 Z01 文件*
  • 未加载 Z01 上下文就直接调用 superpowers:writing-plans
  • 创建了非标准名称的计划文件(不是 Z02_{feature}_plan.md)
  • 将计划保存到了错误的目录
  • 使用了 SlashCommand /superpowers:write-plan(应使用 Skill 工具)
  • 未在提示词中明确指定输出路径
  • 跳过读取 Z01_CLARIFY(如果存在)
  • 使用硬编码路径(应检测路径模式)

常见借口

借口事实
“跳过路径检测吧,我知道是 docs/ai/ongoing”不行。 路径假设会导致非标准仓库出错。检测 ONGOING_DIR。
“没有 Z01 文件,跳过检查吧”不行。 研究上下文对计划质量至关重要。先检查。
“Superpowers 会弄清楚输出结构”不行。 通用计划缺少我们的研究整合。明确说明 Z02* 要求。
“只读取 Z01_research,跳过 Z01_CLARIFY”不行。 缺失上下文会导致计划不完整。读取所有 Z01* 文件。
“即使没有问题,也创建 Z02_CLARIFY”不行。 空文件会使目录杂乱。仅在有新问题时创建。
“直接调用 superpowers:writing-plans 就行”不行。 此封装会加载 Z01 上下文,这正是它的价值。
“这是封装技能,不需要跟踪步骤”不行。 封装包含关键步骤(加载上下文、调用)。使用 TodoWrite 跟踪。
“TodoWrite 会增加开销,跳过吧”不行。 TodoWrite 可让用户了解进度,并避免遗漏步骤。必须使用。

成功标准

符合以下条件即表示你遵循了工作流:

  • ✓ 如果 CLAUDE.md 存在,则已读取
  • ✓ 已将 CLAUDE.md 中的约束传递给 superpowers:writing-plans
  • ✓ 已检查 Z01* 文件
  • ✓ 如果 Z01* 文件存在,则已全部读取
  • ✓ 已调用 superpowers:writing-plans 技能(不是斜杠命令)
  • ✓ 已在提示词中明确指定输出路径
  • ✓ 已验证 Z02_{feature}_plan.md 已创建
  • ✓ 已向用户报告后续步骤

适用场景

工作流位置: 位于 feature-research(Z01 文件)之后、feature-implement 之前

适用于:

  • 存在 Z01 研究文件
  • 需要创建实施计划
  • 希望自动完成 Z01 → Z02 工作流

不适用于:

  • 不存在 Z01 文件 → 先使用 feature-research
  • 已有完整计划
  • 简单的单步骤任务

评论

支持 Markdown