# skills 详细内容 ## 命令参考 ### 撰写命令 **`/req new [标题]`** — 对话式创建需求(仅 draft) - 参数:`--priority=high|medium|low`,`--project=`,`--category=feature|bug|improvement` - 流程:描述→提取关键信息→用户故事→验收标准→`ai-proj req create`→ Gate 1 需求讨论 **`/req draft <描述>`** — 一句话快速创建 draft,AI 自动补全 **`/req edit [REQ-ID]`** — 编辑需求:`ai-proj req get` → 询问修改点 → `ai-proj req update` → 显示变更摘要 **`/req check [REQ-ID]`** — 完整性检查(Gate 4): ``` ✅ 三段式结构完整 / ✅ 验收标准: 4 条 / ✅ 讨论结论已记录 / ❌ PRD 文档缺失 ``` **`/req split [REQ-ID]`** — 拆分为开发任务(后端/前端/测试)并关联 ### 原型设计 **`/req prototype [REQ-ID]`** — 基于 PRD 生成 Stitch 原型: 1. 读取 PRD 文档,提取 UI 相关描述 2. 创建 Stitch 项目 + 生成页面(调用 req-prototype 子技能) 3. 截图回填 PRD「4.2 界面原型」章节 - 参数:`--device [desktop|mobile|tablet]`,`--model [pro|flash]` **`/req prototype edit [REQ-ID] --prompt "..."`** — 修改已有原型 **`/req prototype variant [REQ-ID]`** — 生成设计变体供选择 ### 提交评审 **`/req submit [REQ-ID]`** ⭐ — 从 draft 到 pending 的唯一合法路径: 1. Gate 1: description 末尾有「## 讨论结论」 2. Gate 2: 讨论结论经过用户确认 3. Gate 3: 有 linkRole=prd 任务且附有文档 4. Gate 4: 执行 `/req check` 全部通过 5. → `ai-proj req submit --id ` → 展示 PRD 摘要 → 等待评审 **`/req review pass [REQ-ID]`** — 评审通过(必须用户明确确认后才调用 `ai-proj req approve --id `) **`/req review reject [REQ-ID] [原因]`** — 评审驳回,必须提供原因 ### 阶段管理 **`/req` 或 `/req list`** — 按状态分组列出所有需求(`ai-proj req list`) **`/req status [REQ-ID]`** — 查看需求详情(`ai-proj req get --id `)、进度、关联任务 **`/req next [REQ-ID]`** — 推进到下一阶段: 1. 检查当前阶段任务完成度 2. 智能跳阶段检测(无 implementation 任务时建议跳过 review/testing) 3. `ai-proj req advance --id --to `(门禁检查,未通过→AskUserQuestion,**禁止 AI 自动 force**) 4. ⭐ 内容门禁检查(review/testing/staging 阶段) 5. 自动创建目标阶段建议任务 6. 展示:「✅ 已创建: #XXXX {任务名}。如需撤销请说明」 **dev → review 门禁**: - `pr_created`: PR 已创建 - `quality_gate`: CI 质量门禁通过记录(质量门禁未通过时提示:「CI 质量门禁未通过,请先运行 `/req ci`」) **阶段顺序**:`analysis → design → dev → review → testing → [待部署池] → released` **`/req resume [REQ-ID]`** — 会话断点恢复:`ai-proj req get --id ` 获取 delivery_stage + 任务状态 + 建议操作 ### 开发命令 **`/req dev [REQ-ID]`** — 启动开发: 1. `ai-proj req tasks --id ` 找 implementation 任务 2. `ai-proj task start --id ` 更新任务状态为开发中 3. `/pr start` 从 origin/main 建分支 **`/req cr [REQ-ID]`** — 代码评审(前置:开发任务完成): 1. `ai-proj req tasks --id ` 确认所有 implementation 任务已完成 2. `git diff` / `find` 确定变更范围(文件数、行数) 3. 读取所有变更文件源码(非 test 文件) 4. **五视角扫描**:逐一用攻击者/泄露者/并发者/边界者/依赖者视角审查 5. **约定检查**:运行所有 `scripts/check-*.sh --ci`,将结果写入 CR 报告 6. **⭐ Bug 约定建议**(bug 类需求自动触发:category=bug,或标题含 fix/修复/bug,或描述含根因/复现步骤): - 分析本次 bug 的根因模式 - 判断可检测性:能写 grep 找到同类问题?(规则见 convention-flow.md「可检测性判断」) - 不可检测 → 仅在 CR 报告记录根因,跳过 - 可检测 → 检查已有 `scripts/check-*.sh` 是否已覆盖 → 已覆盖则跳过 - 扫描代码库统计同类模式数量 N - AskUserQuestion(N=0: 防未来复发;N>0: 防恶化+逐步清理) - 是 → 执行 convention flow → 产出物**单独 commit**(`chore: 建立 {name} 约定`) 7. `ai-proj task create` 创建【代码评审】任务并关联需求(linkRole=code_review) 8. `ai-proj create-and-attach` 附加 CR 报告文档(必须含五视角扫描结果 + 约定检查结果) 9. 展示发现摘要,AskUserQuestion 确认是否创建 bug 修复任务 10. 若有 High/Critical 发现 → `ai-proj task create` 创建关联修复任务 **`/req ci [REQ-ID]`** — CI 质量门禁检查与自动修复: 1. `check-ci-status.sh` 检查当前分支 CI 状态 - 通过 → 写入 `quality_gate` 门禁证据(`gate-callback.sh`)→ 完成 - 运行中 → `--wait` 等待最多 5 分钟 - 失败 → 进入自动修复循环 2. 自动修复循环(最多 3 轮): a. `fetch-ci-logs.sh --failed-only` 获取失败 job 日志 b. AI 诊断根因(见错误模式目录) c. 自动修复代码 d. 本地验证(`go vet ./...` / `npx tsc --noEmit`) e. `git commit && git push` f. `check-ci-status.sh --trigger --wait` 等待新 CI g. 通过 → 写入门禁证据 → 完成 h. 仍失败 → 下一轮(超过 3 轮 → AskUserQuestion 是否继续) - 参数:`--trigger` 手动触发 CI,`--wait` 等待完成,`--no-fix` 仅诊断不修复 **错误模式目录**: | 失败 Job | 错误模式 | 修复策略 | |----------|---------|---------| | architecture-gate | 架构 ratchet 违规 | 读取违规文件,用 service 层替代直接 database import | | backend-lint (go vet) | `file.go:42: unreachable code` | 读取文件,修复具体问题 | | backend-lint (gofmt) | `Files need gofmt:` | 运行 `gofmt -s -w` | | backend-lint (go test) | `--- FAIL: TestXxx` | 读取测试和实现,修复根因 | | frontend-lint (ESLint) | `warnings N > 4600` | 对比 main,只修复新增警告 | | frontend-lint (Prettier) | `unformatted N > 1000` | `npx prettier --write` 变更文件 | | frontend-lint (TS) | `errors N > 60` | 对比 main,只修复新增类型错误 | **`/req test [REQ-ID]`** — 测试(前置:代码评审通过),遵循 dev-test 技能的 5-Gate 流程 **`/req deploy [--project ] [--env production]`** — 项目级批量部署(Staging 已自动化,push develop 即触发): 1. 收集待部署需求(delivery_stage=testing + 全 test 任务 completed) 2. AskUserQuestion 确认范围 3. `ai-proj task create` 创建【部署】批次任务(linkRole=deploy) 4. 部署前检查(变更检测、数据库迁移) 5. 执行 `./scripts/build-and-push.sh prod --detect --deploy --wait --verify` 6. **Deploy Gate 1: 健康检查** — `/health` 返回 200 7. **Deploy Gate 2+3: PDV 验收**(为每个需求创建独立验收任务): a. `ai-proj task create --title "【验收】PDV: {需求标题}"` 创建验收任务 b. `ai-proj req link --id --task-ids --link-role verification` 关联需求 c. 从需求关联任务中提取前端变更范围(页面路由、菜单项、关键 API) d. 生成验收检查清单(页面可达 + 菜单可见 + 基础渲染 + API 连通) e. 用 Playwright 对部署环境执行冒烟测试:`E2E_BASE_URL=<部署环境URL> npx playwright test e2e/pdv/ --project=chromium` f. 收集截图证据 g. `ai-proj task append-doc --id ` 附加验收文档(检查项表格 + 截图 + 结论) h. **全部通过** → `ai-proj task complete --id ` → Gate 2+3 放行 i. **任一失败** → 任务保持 in_progress,**阻断推进**,报告失败项 8. `ai-proj task append-doc` 记录【部署】任务文档(构建日志 + 健康检查 + PDV 结果摘要) 9. `ai-proj req advance --id --to released` 批量推进(仅 Gate 1-3 全部通过的需求) **`/req done [REQ-ID]`** — 类型化归档门禁 + git commit + push + `ai-proj req archive --id `: **Gate 0(强制):AC 验收逐条确认** — 在所有类型检查之前执行: 1. `ai-proj req get --id ` 获取需求描述 2. 提取 `## 验收标准` 章节下的所有 `- [ ]` / `- [x]` 条目 3. **无验收标准**:AskUserQuestion 警告并要求用户确认为何无 AC,必须说明跳过原因才能继续 4. **有未勾选项(`- [ ]`)**:逐条列出,AskUserQuestion 请用户对每条提供验证证据(截图/curl 输出/日志)或明确标记为 N/A + 说明原因 5. **全部已勾选(`- [x]`)**:展示 AC 摘要,直接继续 6. AC 确认通过后,将每条 AC 的验证结果追加到需求描述(`ai-proj req update`),格式:`- [x] {原AC内容}(验证于 YYYY-MM-DD)` **类型检查(Gate 0 通过后)**: - **推断类型**:有 implementation → code;无 implementation 有 prd/test → skill;仅 deploy → ops - **code 检查**:delivery_stage=released + deploy 任务完成 + verification 任务完成(PDV 通过) + 部署文档 + 所有任务完成 - **skill 检查**:delivery_stage≥testing + 所有任务完成 - **ops 检查**:deploy 任务完成 + 所有任务完成 ### PRD 文档创建(通过任务中转) ```bash # create-and-attach 只支持任务 ID(task_documents 外键约束) # 1. 创建任务 ai-proj task create --title "【评审】PRD: 用户认证功能" # 2. 关联需求 ai-proj req link --id 711 --task-ids 5214 # 3. 附加文档到任务 ai-proj task append-doc --id 5214 --content "# PRD: 用户认证功能\n..." ``` ### 阶段任务 Checklist | 阶段 | 建议任务 | linkRole | |------|----------|----------| | analysis | 【评审】PRD: {需求标题} | prd | | design | 【评审】技术设计: {需求标题} | design | | dev | 【开发-后端】{需求标题}、【开发-前端】{需求标题} | implementation | | review | 【代码评审】{需求标题} | code_review | | review | 【约定】{约定名称}(bug 类需求,convention flow 自动创建) | documentation | | testing | 【测试】集成测试: {需求标题} | test | | deploy | 由 `/req deploy` 批量创建 | deploy | | released | 【验收】PDV: {需求标题}(`/req deploy` 自动创建) | verification |