SKILL.md 2.73 KB

name: feature-review description: 功能循环第 5 步。AI 自审,输出审阅报告到 docs/superpowers/reviews/。approve 回调 module-start;request-changes 则编辑代码并 fix commit,重新执行 verify。自修复循环上限 5 轮。 user-invocable: false

allowed-tools: Read Write Edit Skill Agent Bash(git add *) Bash(git commit *)

所有输出必须使用中文。

feature-review

执行步骤

  1. 通过 Agent(subagent_type=superpower-code-reviewer) 调用本插件 code-reviewer agent(superpowers:code-reviewer 的本地 fork),以该 REQ 的 diff(git diff <feature-start>..HEAD)和规格作为输入。
  2. 推导路径:docs/superpowers/reviews/$(date +%F)-<REQ-id>.md
  3. Read 读取 ${CLAUDE_SKILL_DIR}/templates/feature-review-template.md,填充 roundverdictmust_fix[]nice_to_have[]gaps。verdict 必须是 approverequest-changes
  4. 写入报告。

  5. 分发:

    • verdict = approve → 用 Editdocs/08-模块任务管理.md § 二 本模块 bullet 下找到 - [ ] <REQ-id> ... 行勾选为 - [x] <REQ-id> ...(功能级进度可视化;模块完成仍由 MR: + GitLab API state 判定,不依赖本勾选)。然后输出 feature-review: <REQ> round <N> 通过,调用 Skill(module-start) 回模块主循环(module-start 会自动把本 REQ 识别为 done 并推进下一个 REQ)。
    • verdict = request-changes → 执行"自修复子流程":
      • 逐项处理 must_fix[]:对每个条目用 Edit 修改其指向的代码文件。
      • 所有 Must-fix 修复后,拼 commit 消息(格式与 feature-tdd 一致,单行):fix(<module_id>): 修复 review round <N> must-fix <REQ-id>
      • Bash: git add <修改的代码文件> + git commit -m "<上一步拼出的消息>"
      • 调用 Skill(feature-verify) 重新执行验证;verify 通过后会再次链到本 skill,作为 round <N+1> 重审。
  6. 上限:5 轮。第 5 轮仍为 request-changes → 停止并打印摘要(升级给用户手工介入),不再自动修复,不回调 module-start。

衔接

  • approveSkill(module-start) 回主循环。
  • request-changes(round < 5)→ Skill(feature-verify) 重新执行。
  • request-changes(round == 5)→ 停止。

参考

  • ${CLAUDE_SKILL_DIR}/templates/feature-review-template.md
  • Fix commit 格式与 feature-tddcommit-message-template.md 对齐(fix(<scope>): <subject> <req_id>
  • 委托:superpower-code-reviewer(本插件 agents/superpower-code-reviewer.md,superpowers:code-reviewer 的本地 fork)
  • 上游:feature-verify
  • 下游:module-start(approve)或 feature-verify(request-changes)