Files
ai-proj-helper/skills-req/req-commands-plugin/skills/SKILL.md
John Qiu 712063071c refactor: 通用技能按类别拆分为独立目录
skills/ → skills-dev(9), skills-req(10), skills-ops(4),
skills-integration(8), skills-biz(4), skills-workflow(7)

generate-marketplace.py 改为自动扫描所有 skills-* 目录。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 11:31:58 +10:30

19 KiB
Raw Blame History

name, description
name description
req-commands 需求命令详细参考。当需要查看 /req 命令的详细用法、参数、示例时使用。

req 命令参考

基础命令

/req/req list

列出所有需求,按状态分组显示。

/req new [标题]

创建新需求。

  • 参数:--priority=high|medium|low--project=<name>--category=feature|bug|improvement
  • 创建后提示使用 req-prd 技能编写 PRD

/req status [REQ-ID]

查看需求详情、进度、关联任务。

阶段管理命令

/req phase [REQ-ID]

查看需求当前开发阶段和任务状态。

执行逻辑

  1. get_requirement(id) → 获取 delivery_stage
  2. get_requirement_tasks(id) → 获取所有关联任务
  3. 按 linkRole 分组展示,标注当前阶段任务完成度

输出示例

REQ-20260218-0013 | 阶段: dev (开发)
────────────────────────────────────
✅ analysis (评审)
   ✅ #6035 【评审】PRD: 需求全生命周期阶段化管理
   ✅ #6040 【评审】技术设计: 数据模型
▶ dev (开发) ← 当前阶段
   🔄 #6042 【开发-后端】实现阶段管理 API [in_progress]
   ⬜ #6043 【开发-前端】阶段可视化组件 [todo]
⬜ review (代码评审)
   (无任务)
⬜ testing (测试)
   (无任务)

/req next [REQ-ID]

检测当前阶段完成度,推进到下一阶段。

执行逻辑

  1. 获取当前 delivery_stage 和该阶段所有任务
  2. 检查任务完成度:
    • 全部完成 → 提示「当前阶段已完成,是否推进到 {下一阶段}?」
    • 部分未完成 → 显示未完成任务列表 + AskUserQuestion
      • 选项 A: "强制推进(需说明原因)"
      • 选项 B: "返回完成任务"
      • 用户选 A → 输入跳过原因 → advance_delivery_stage(force=true)
      • 记录到需求历史: POST /requirements/{id}/historycomment 包含跳过原因
    • ⚠️ 禁止 AI 自动使用 force=true必须经过 AskUserQuestion 确认
  3. 智能跳阶段检测(推进前):
    • get_requirement_tasks(id) → 收集所有 linkRole
    • 如果目标阶段与当前 linkRole 不匹配,主动建议跳过:
      • implementation → 推进到 review/testing 时提示「该需求无代码任务,建议跳过此阶段」
      • code_review → 推进到 review 时提示跳过
      • test → 推进到 testing 时提示跳过
    • 通过 AskUserQuestion 确认:「跳过」或「仍然创建任务」
  4. 用户确认推进后:
    • 更新 delivery_stage 到下一阶段
    • 自动创建目标阶段的建议任务(create_stage_task 批量创建,无需询问)
    • 展示已创建任务列表:「 已创建: #XXXX 【代码评审】CR: {需求标题}。如需撤销请说明」
    • ⚠️ 仅当用户主动要求撤销时才删除已创建任务

阶段顺序

analysis → design → dev → review → testing → [待部署池] → released
                                                ↑ /req deploy 批量推进

linkRole 到阶段的映射

linkRole 所属阶段
prd analysis
design design
implementation dev
code_review review
test testing
deploy (staging) staging
deploy (prod) released

会话恢复命令

/req resume [REQ-ID]

从上次中断的位置恢复工作。会话被截断后的首选命令

执行逻辑

  1. 若无 REQ-ID → list_requirements(status=approved) 找到最近活跃的需求
  2. get_requirement(id) → 获取需求基本信息和 delivery_stage
  3. get_requirement_tasks(id) → 获取所有关联任务及状态
  4. 汇总展示恢复上下文

输出格式

📋 恢复工作上下文
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
需求: REQ-20260218-0016 | 需求全生命周期 AI 开发管理优化
状态: approved | 阶段: dev (开发)

📊 任务进度: 2/4 完成
  ✅ #6051 【开发-后端】实现 advance_delivery_stage MCP 工具
  ✅ #6052 【开发-后端】实现 create_stage_task 组合 MCP 工具
  🔄 #6053 【开发-Skill】req-commands 阶段 checklist 模板化 [in_progress]
  ⬜ #6054 【开发-Skill】会话断点恢复机制 [todo]

▶ 建议操作:
  1. 继续任务 #6053当前 in_progress
  2. 执行 /req next 推进阶段
  3. 执行 /req phase 查看完整阶段视图

自动行为

  • 如果有 in_progress 任务,提示继续该任务
  • 如果当前阶段所有任务已完成,提示执行 /req next
  • 如果需求已 archived,告知用户无需操作

评审命令

/req review [REQ-ID]

提交评审。前置条件:必须有 PRD 文档。

评审等待机制(强制)

  1. submit_requirement(id) → status 变为 pending
  2. 展示 PRD 要点摘要:
    PRD 评审摘要
    ─────────────────────
    标题: {需求标题}
    核心方案: {1-2句总结}
    验收标准: {N}项
    改动范围: {文件列表}
    
  3. AskUserQuestion: "请确认 PRD 是否通过评审"
    • "通过评审" → approve_requirement(id)
    • "需要修改" → 回到编辑流程
  4. ⚠️ 禁止 AI 自动审批,必须等待用户明确选择

/req review pass [REQ-ID]

评审通过。支持多人审批。参数:--comment="审批意见"

/req review reject [REQ-ID] [原因]

评审驳回。必须提供驳回原因。

/req review status [REQ-ID]

查看审批进度(多人审批时)。

开发命令

/req dev [REQ-ID]

启动开发,自动选择优先级最高的 todo 任务并开始计时。

  • 参数:--task=<task-id> 指定任务
  • 优先启动 implementation 角色任务
  • 自动设置 delivery_stage = dev(如尚未设置)

/req cr [REQ-ID]

代码评审。前置条件:开发任务完成。

  • 显示 Git diff 摘要
  • 生成代码评审检查清单
  • 自动设置 delivery_stage = review

/req test [REQ-ID]

启动测试。前置条件:代码评审通过。

  • 参数:--skip-cr --reason="原因" 跳过代码评审
  • 自动设置 delivery_stage = testing
  • 遵循 req-test-gate v2 技能的 5 道门禁

执行逻辑5-Gate 流程,详见 req-test-gate 技能)

  1. Gate 1 前置条件CR 已通过 + 开发任务全部完成(不可跳过)
  2. Gate 2 测试执行推断需求类型code/skill/ops分阶段验证
    • code 类型四阶段
      • 2A 静态验证:编译 + 单元测试 + 条件前端/iOS 测试
      • 2B 集成验证API 端点 + DB 约束 + 错误处理
      • 2C 冒烟测试Staging 环境健康检查 + 核心流程(已部署时)
      • 2D 原型符合性:对比原型 HTML 的结构/字段/交互/状态(有原型时)
    • skill: 关键词一致性 + 规则无歧义 + 边界情况(至少 3 项)
    • ops: 部署命令可执行 + 健康检查
  3. Gate 3 质量验证:派遣 test-validator 子代理审查测试质量
    • code 类型:总是触发 | skill 类型≥5 测试项时触发 | ops 类型:不触发
    • Critical 缺陷必须修复Important 缺陷需 AskUserQuestion 确认
  4. Gate 4 文档持久化(不可跳过)create-and-attach 将完整测试报告写入测试任务文档
    • 文档模板见 req-test-gate 技能的「最小必填模板」(含 2A-2D 阶段标记)
    • 必须包含:前置条件结果 + 测试执行表格 + 质量验证摘要 + 通过/失败结论
    • 无此文档 → /req deploy 前置检查会警告
  5. Gate 5 回归贡献code 类型):检查是否有 linkRole=regression 任务和用例文档
    • v2.0 过渡期为警告级别,不阻塞
    • 提醒补充回归测试用例到回归池

/req deploy [--project <name>] [--env <environment>]

项目级批量部署。收集所有待部署需求,一次构建部署。

  • 这是项目级动作,不是单需求操作
  • --project 默认为当前项目,--env 默认为 staging
  • 参数:--platform=web|ios|android
  • 遵循 req-test-gate v2 的 Deploy Gates (DG1-DG6)

执行逻辑

  1. 前置检查(强制)
    • 对每个待部署需求,检查 testing 阶段任务是否有文档附件(has_task_document
    • 有文档 → 继续
    • ⚠️ 无文档 → AskUserQuestion「测试任务 #XXXX 无测试记录文档,确认继续部署?」
  2. 收集待部署需求
    • delivery_stage = testing 且所有 test 任务 completed
    • 有 implementation 任务(排除纯运维/文档需求)
  3. 展示待部署列表AskUserQuestion 确认部署范围
  4. 创建部署批次任务
    • 标题:【部署】{project} {date} ({N} requirements)
    • 对每个选中需求:link_tasks_to_requirement(role=deploy)
  5. Deploy Gates (DG1-DG6)(详见 req-test-gate/deploy-gates.md
    • DG1 迁移检查(不可跳过):对比 migrations/ vs 数据库,有新 migration 先备份再执行
    • DG2 Staging 部署:构建镜像 + 部署到 singapore
    • DG3 冒烟测试:健康检查 + 登录 + 新 API 验证
    • DG4 影响域回归:根据 module-deps.json 运行对应回归套件(无套件时跳过)
    • DG5 性能基线(推荐):关键 API 响应时间检查
    • DG6 生产部署(不可跳过):部署 + 健康检查,失败立即回滚
  6. 部署后强制检查点
    • 部署文档创建(必须):create-and-attach 到部署任务,包含 Deploy Gates 结果表格
    • ☑️ 截图验证(可选):有 chrome-dev MCP → 执行截图;无 → 记录跳过
  7. 部署成功后
    • 所有关联需求 advance_delivery_stage → released
    • complete_task(部署任务)

单需求兼容:当仅 1 个需求待部署时,流程自动退化为单需求部署。

/req done [REQ-ID]

完成归档。参数:--force 强制归档。

类型化归档门禁(强制)

  1. get_requirement_tasks(id) → 获取所有关联任务
  2. 推断需求类型(从 linkRole 集合判断):
    • code: 有 implementation 角色任务 → 代码需求
    • skill: 无 implementation,有 prd/code_review/test → Skill/文档需求
    • ops: 仅 deploy 角色任务 → 运维需求
  3. 按类型执行检查清单
检查项 code skill ops
delivery_stage = released - -
delivery_stage >= testing - -
deploy 任务已完成 -
部署文档存在 - -
所有关联任务已完成
  1. 检查结果处理
    • 全部通过 → 展示检查清单 + AskUserQuestion "确认归档?"
    • 有缺失 → 显示缺失项 + AskUserQuestion "是否强制归档?"
    • 用户确认 → 进入步骤 5
  2. Git 提交(强制)
    • git add 本需求相关变更文件
    • git commit -m "feat(skill): REQ-XXXX 需求标题"(或 fix/refactor 等合适的 type
    • git push origin <current-branch>
    • ⚠️ 提交前确认无敏感文件(.env、credentials 等)
  3. archive_requirement(id)
  4. 归档后生成生命周期总结,触发同步

/req regression [--module <name>] [--mode <mode>]

运行回归测试。系统级持续质量活动。

  • --module 指定模块okr/task/auth/...),不指定则按影响域推断
  • --mode 执行模式:impact(影响域)| critical(关键路径)| full(全量)
  • 默认模式:impact(根据最近变更推断影响域)

执行逻辑(详见 req-test-gate/regression.md

  1. 确定范围
    • 指定 module → 直接运行该模块回归套件
    • 未指定 → git diff --name-only 获取变更 → 查 module-deps.json → 推断影响域
  2. 运行回归套件
    • 执行 regression-suite/suites/ 下对应脚本
    • 记录每个用例的 PASS/FAIL 状态
  3. 回归判定
    • 对比上次运行结果
    • 上次 PASS + 本次 FAIL → 标记为「回归」
  4. 结果处理
    • 全部通过 → 展示通过率
    • 有回归 → AskUserQuestion「是否为回归项创建 bug 需求?」
    • 有新失败 → 展示失败列表,建议排查
  5. 报告输出
    回归测试结果 - {module/all}
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    模式: {impact/critical/full}
    套件: {N} 个 | 用例: {M} 个
    ✅ 通过: {P} | ❌ 失败: {F} | 🔴 回归: {R}
    

当前状态:回归套件待初始化,首次运行会提示建立基线。

辅助命令

关联任务到需求。

/req decompose [REQ-ID]

分解需求为任务。创建时自动加阶段前缀

/req generate-tasks [REQ-ID]

根据 PRD 自动生成开发任务。所有任务带【开发】前缀

/req priority [REQ-ID] [low|medium|high]

设置需求优先级。

/req stats [REQ-ID|--all]

查看需求统计信息。

阶段任务 Checklist 模板

/req next 推进到新阶段时,根据目标阶段自动建议创建的任务。使用 create_stage_task 组合工具一步完成(创建+关联+可选启动)。

analysis评审

☐ 【评审】PRD: {需求标题}          (linkRole: prd)
☐ 【评审】技术设计: {需求标题}      (linkRole: design) [可选]

design设计

☐ 【设计】技术方案: {需求标题}      (linkRole: design)
☐ 【设计】数据模型设计              (linkRole: design) [可选]

dev开发

☐ 【开发-后端】{需求标题}           (linkRole: implementation)
☐ 【开发-前端】{需求标题}           (linkRole: implementation) [可选]
☐ 【开发-MCP】{需求标题}            (linkRole: implementation) [可选]

review代码评审

☐ 【代码评审】{需求标题}            (linkRole: code_review)

testing测试

☐ 【测试】单元测试: {需求标题}       (linkRole: test)
☐ 【测试】集成测试: {需求标题}       (linkRole: test) [可选]

按需求类型的最低测试标准

需求类型 最低测试要求
code go test 或前端测试通过 + API 验证 + 截图验证
skill 关键词跨文件一致性 + 规则无歧义验证 + 边界情况检查(至少 3 项)
ops 部署命令可执行 + 健康检查通过

skill 类型测试 checklist(最低 3 项):

☐ 关键词一致性grep 验证核心概念在所有相关 skill 文件中对齐
☐ 规则无歧义:每条规则的触发条件和执行动作明确,无二义性
☐ 边界情况:至少验证 1 个边界场景(如混合类型需求的分类)
☐ 交叉引用:文件间的引用(如"见 xxx 技能")指向正确 [可选]

部署(项目级,由 /req deploy 触发)

部署不再按单需求创建任务,而是通过 /req deploy 批量收集待部署需求:

testing 完成的需求 → 进入「待部署池」
/req deploy → 创建批次任务:【部署】{project} {date} ({N} requirements)
              关联到所有选中需求 (linkRole: deploy)
              部署成功后批量推进 → released

/req next 执行流程(更新版)

  1. get_requirement(id) → 获取 delivery_stage
  2. get_requirement_tasks(id) → 获取关联任务,收集 linkRole 集合
  3. 智能跳阶段检测:检查目标阶段是否与 linkRole 匹配
    • 不匹配 → AskUserQuestion「建议跳过 {阶段},是否同意?」
    • 用户同意跳过 → 递归检测下一阶段
    • 用户拒绝 → 继续推进到该阶段
  4. 门禁检查advance_delivery_stage(id, nextStage) 自动检查
    • 通过 → 进入步骤 4.5
    • 未通过 → 显示阻塞任务AskUserQuestion 确认 force禁止自动 force 4.5. 内容门禁检查(防空转):对关键阶段的已完成任务验证文档附件
    • 适用阶段: reviewCR 报告、testing测试结果、staging部署文档
    • 检查逻辑
      对当前阶段的每个 completed 任务:
        has_task_document(taskId) → 有文档?
          ✅ 有 → get_task_document(taskId) → 检查质量:
            - review: ≥500字符 + 含 file:line 代码引用 + 含结论章节
            - testing: 含测试项表格 + 含通过/失败结论 + ≥200字符
                       (详见 req-test-gate 技能 Gate 4 文档质量门禁)
            - staging: 含健康检查结果 + 含镜像/commit 信息
          ❌ 无 → 阻止推进,提示「任务 #XXXX 缺少 {类型} 文档」
      
    • 未通过处理AskUserQuestion「内容门禁未通过选择操作」
      • 选项 A: "补充文档后重试"
      • 选项 B: "强制跳过(记录原因)" → 记录跳过原因到需求历史
    • ⚠️ 禁止 AI 自动跳过,必须经过 AskUserQuestion
  5. 自动创建阶段任务create_stage_task 批量创建目标阶段建议任务
    • 展示已创建列表:「 已创建: #XXXX {任务名}。如需撤销请说明」
    • 用户主动要求撤销时才删除

MCP 工具映射

命令 MCP 工具
/req list_requirements
/req new create_requirement
/req phase get_requirement + get_requirement_tasks
/req next advance_delivery_stage (门禁检查+推进) + create_stage_task (创建任务)
/req resume get_requirement + get_requirement_tasks (断点恢复)
/req dev get_requirement + get_requirement_tasks + start_task_with_timer
/req cr get_requirement_tasks + Git diff
/req test req-test-gate v2 5-Gate 流程: 前置检查 → 类型化测试(2A-2D) → test-validator 子代理 → create-and-attach 持久化 → 回归贡献检查
/req deploy 前置检查 + Deploy Gates(DG1-DG6): 迁移→staging→冒烟→回归→性能→生产 + 部署文档
/req regression git diff 影响域推断 + 运行回归套件 + 回归判定 + 可选创建 bug 需求
/req done 类型推断 + 检查清单 + AskUserQuestion + archive_requirement⚠️ 禁止直接调用 archive
/req review submit_requirement
/req review pass approve_requirement
/req review reject reject_requirement
/req link link_tasks_to_requirement

任务关联类型

link_role 说明 阶段前缀 进度权重
prd PRD 文档 【评审】 0.1
design 技术设计 【评审】 0.05
implementation 开发实现 【开发】 0.5
code_review 代码评审 【代码评审】 0.05
test 测试验证 【测试】 0.15
deploy 部署发布 【部署】 0.1
regression 回归用例 【回归】 0.0
documentation 文档编写 【文档】 0.05