rapid-mvp — 交互式 PRD 生成 → 多 Agent 并行 MVP 开发
核心方法论:业务闭环保障流程
用户: "我想做一个XX系统"
↓
🔄 Phase 0: 交互式 PRD 生成(与用户对话,逐步细化)
→ 澄清问题 → 功能梳理 → 🔴核心闭环定义 → API确认 → 部署架构规划(运维工程师介入) → 🔍GitHub开源项目调研 → PRD生成 → 用户确认
🛑 用户确认 PRD(含核心闭环技术链路表 + 开源基座项目选型)定稿后继续
↓
Phase 1: 设计产出 (3-4 Agent 并行)
→ 多Agent架构总览 + DB设计(ER图+DDL) + UI/UX视觉定稿 + 运维架构设计(网络拓扑+部署图+CI/CD)
→ 设计围绕核心闭环展开
🛑 确认设计产出质量
↓
Phase 2: 跨角色评审 (6 Agent 并行)
→ PM/后端/前端/UI/QA/运维 评审报告(每角色≥3 Blocker)
→ 重点评审闭环链路的完整性和可实现性
🛑 确认 Blocker 清单
↓
Phase 3: 优化方案 + 协调 (6+1 Agent)
→ 6角色优化 + 跨角色冲突检测
🛑 确认冲突和优化方向
↓
Phase 4: 冲突修复 (4 Agent)
→ API统一 + 运维填补 + 安全修复 + 时间线裁定
🛑 锁定全部裁定(之后不改设计)
↓
Phase 4.5: 设计文档终稿整合 (1 Agent)
→ 将 Phase 2-4 全部修订合并回所有设计文档,产出终稿版作为唯一真相来源
🛑 确认终稿文档一致性:每个修订可溯源、跨文档无矛盾
↓
Phase 5: 核心路径优先编码(两阶段 5+5 Agent)
→ Phase 5.1: 核心闭环编码(先完成闭环链路表的 ✅ API 和页面,确保可联通)
→ Phase 5.2: 外围功能编码(P1/P2 模块补充)
🛑 确认核心闭环 + 外围功能均已交付
↓
🔴 Phase 5.5: 业务闭环自动检测与验证(AI 驱动,MVP 可用性最终门禁)
→ 静态代码分析(自动扫描断裂点) → 自动修复 → E2E测试 → 动态运行验证 → 失败修复循环
🛑 闭环全部节点 PASS 后才交付(检测/修复全程自动,用户只看报告)
↓
输出: PRD终稿 + 终稿设计文档 + 🔴闭环验证通过的可运行代码
核心原则:业务闭环优先 (Business Closure First)
MVP 的核心衡量标准不是文件数量,而是用户能否走通一个完整的核心业务流程。
⚠️ 重要: 闭环的定义、检测、修复全部由 AI 自动完成。用户不需要懂技术,不需要自己梳理闭环——AI 根据用户描述的功能自动推断核心流程,Phase 5.5 自动分析代码找出断裂点并修复。用户只需要在 Phase 0 确认"这个流程对吗"、在 Phase 5.5 看最终的 ✅/❌ 报告。
什么是业务闭环?
用户入口 → 核心操作 → 数据持久化 → 反馈展示 → 用户出口
↑ ↓
└──────────── 可以再次进入循环 ─────────────────┘
闭环通过标准(Phase 5.5 自动验证,必须全部满足):
- ✅ 用户可以完成从入口到出口的完整操作(不卡在任何一步)
- ✅ 每一步都有真实的代码支撑(禁止 mock/stub/TODO 占位核心路径)
- ✅ 数据在前后端之间正确流转(前端请求 → API → 数据库 → 响应 → 前端渲染)
- ✅ 错误情况有合理处理(不会白屏或崩溃,有用户可理解的错误提示)
- ✅ 闭环中的每个 API 都有对应的前端调用方,每个前端交互都有对应的后端实现
AI 自动检测闭环断裂(Phase 5.5 静态分析,无需用户参与)
闭合检测其实非常容易自动化——不需要用户来发现,AI 直接扫描代码就能找出所有断裂点:
| 检测项 | 检测方法 | 示例断裂 |
|---|---|---|
| API 缺失 | 前端 HTTP 调用 ↔ 后端路由定义 交叉对比 | 前端调了 /api/v1/orders 但后端没定义 → 🔴 |
| 死交互 | 前端 form/button handler 是否有 API 调用 | 注册表单的 handleSubmit 只有 console.log → 🔴 |
| 无持久化 | 后端 Service 层是否有 DB 操作 | POST API 只 return {success:true} 不写库 → 🔴 |
| 导航断裂 | 前端路由 ↔ 页面组件的映射关系 | /product/:id 指向了 ProductEdit 组件 → 🔴 |
| 字段不匹配 | 前端请求体字段 ↔ 后端 DTO/Schema 字段 | 前端发 {userName} 后端收 {username} → 🔴 |
闭环节杀反模式(必须避免)
| 反模式 | 为什么导致闭环失败 |
|---|---|
| 前端页面做好了,API 没实现 | 用户点击按钮无响应 → 闭环断裂 |
| API 实现了,前端没调用 | 后端代码成为"孤儿"→ 无法验证 |
| 数据库表建了,但 API 没连接数据库 | 数据不持久化 → 刷新即丢失 |
| 所有模块独立完成但互不联通 | 每个模块都是孤岛 → 无法串联成流程 |
| 用 mock 数据填充核心路径 | 看起来能跑,实际业务不通 |
| 只有 Happy Path,无错误处理 | 一个异常就卡死整个流程 |
闭环保障机制(AI 驱动,贯穿全流程)
Phase 0: AI 自动推断核心闭环(根据项目类型+功能描述套模板,用户只确认)
↓
Phase 1-4.5: 设计评审中持续校验闭环完整性
↓
Phase 5.1: 核心路径优先编码(闭环链路先完成,外围功能后补充)
↓
Phase 5.5.0: AI 静态代码分析(自动扫描前后端代码,交叉对比找出所有断裂点)
↓
Phase 5.5.1: AI 自动修复断裂点(补全缺失 API、补充死交互、修正导航)
↓
Phase 5.5.3: 动态运行验证(启动全栈 → 逐步骤测试核心闭环 → 不通过不交付)
Phase 0: 交互式 PRD 生成(🔄 与用户对话)
目标: 从用户的一句想法开始,通过结构化问答逐步生成一份完整的 PRD。
核心原则: 不问无关问题、不假设答案、每个问题都有默认推荐、用户可随时说"先用默认的继续"。
Step 0.1: 理解项目方向(1-2 轮对话)
用户说出想法后,Agent 先用自己的话复述理解,然后提出第一组关键问题:
我理解你想做一个 **[一句话概括]**。在开始细化之前,先确认几个方向性问题:
**1. 这是什么类型的产品?**
A. 内部管理后台(如运营Dashboard、CRM) ← 默认
B. 面向用户的产品(如电商App、社区)
C. API/后端服务(无前端界面)
D. AI/Agent 驱动的自动化系统
**2. 目标用户是谁?**
A. 个人用户(C端)
B. 企业/团队(B端/内部工具) ← 默认
C. 两者都有
**3. 项目当前阶段?**
A. 只有想法,需要从零开始 ← 默认
B. 已有粗略需求文档
C. 已有详细PRD(→ 直接跳到 Phase 1)
🛑 Phase 0.1 确认: 用户回答了方向性问题 → Agent 复述理解 → 等用户说"对"或纠正 → 进入 Step 0.2。
Step 0.2: 功能模块梳理(2-3 轮对话)
根据项目类型,引导用户列出功能模块:
好的。现在我们来梳理核心功能。请按以下格式告诉我系统需要哪些功能模块:
**主线功能(用户必须完成的闭环)**:
例: 用户登录 → 浏览商品 → 下单 → 支付 → 发货
**辅助功能(锦上添花)**:
例: 数据统计、消息通知、权限管理
---
💡 如果暂时不确定,可以先告诉我最核心的 3-5 个功能,
我会帮你补充常见的辅助模块,你再来确认。
Agent 根据用户回答,自动将功能归类为 M1~MN 模块,并判断哪些是 P0(MVP必须)、哪些是 P1/P2。
🔴 MVP 核心闭环自动推断(AI 驱动,用户只确认):
用户已经描述了功能模块,Agent 此时自动推断 MVP 的核心闭环——不需要用户自己梳理。
推断方法(Agent 内部执行,对用户透明):
根据项目类型,套用对应的闭环模板:
电商/交易类:
注册/登录 → 浏览[核心资源]列表 → 查看[核心资源]详情 → 加入购物车/下单 → 支付 → 查看订单/状态
内容/社区类:
注册/登录 → 浏览[内容]列表 → 查看[内容]详情 → 发布[内容] → 互动(评论/点赞) → 查看个人主页
管理后台类:
登录 → 查看[资源]列表 → 搜索/筛选[资源] → 新增[资源] → 编辑[资源] → 查看统计Dashboard
工具/SaaS类:
注册/登录 → 创建[项目/任务] → 配置/编辑[核心功能] → 查看结果/输出 → 导出/分享
AI/自动化类:
注册/登录 → 配置[数据源/参数] → 触发[自动化任务] → 查看执行状态 → 查看结果/输出
通用兜底模板(项目类型不明确时使用):
注册/登录 → 创建[用户的核心资源] → 查看[核心资源]列表 → 查看[核心资源]详情 → 编辑[核心资源]
Agent 将推断结果转化为自然语言展示给用户确认(不展示技术细节,只展示用户能看懂的操作流程):
根据你刚才描述的功能,我帮你梳理了一下。你的 MVP 做出来后,用户应该能走通下面这个流程:
**你的 MVP 核心流程**:
第1步: 打开首页,看到[核心内容]
第2步: 注册一个账号
第3步: 登录
第4步: [核心操作——根据项目类型自动填充]
第5步: [核心操作——根据项目类型自动填充]
第6步: 查看操作结果
我标记了 🔴 的步骤是 MVP 必须完整实现的——只要这几步能跑通,你的 MVP 就成功了。
其余功能(如通知、统计、设置等)可以先做简化版。
**你看这个流程对吗?**
A. "对,就按这个来" → 继续
B. "第 X 步应该改成 XXX" → 修改后重新确认
C. "我觉得还缺了 XXX 这一步" → 补充后重新确认
⚠️ 关键原则:Agent 主动推断、用户被动确认。不要让用户自己想闭环——用户正是因为梳理不出来才用这个工具。Agent 根据项目类型+功能描述自动套模板,用户只需要说"对"或指出一处调整。
Agent 在用户确认后,将闭环转化为可追踪的技术链路表(这是后续所有 Phase 的检验标准):
## MVP 核心闭环技术链路
> 以下 ✅ 标记的项构成 MVP 不可裁剪的核心路径。Phase 5 编码时必须优先完成这些,
> Phase 5.5 验证时逐项检查是否通过。
| 步骤 | 用户操作 | 前端页面/组件 | API 调用 | 数据变更 | 闭环必须 |
|------|---------|-------------|---------|---------|---------|
| 1 | 打开首页 | HomePage | GET /api/v1/products | - | ✅ |
| 2 | 注册账号 | RegisterPage | POST /api/v1/auth/register | INSERT users | ✅ |
| 3 | 登录 | LoginPage | POST /api/v1/auth/login | - | ✅ |
| 4 | 浏览商品 | ProductList | GET /api/v1/products | - | ✅ |
| 5 | 查看详情 | ProductDetail | GET /api/v1/products/{id} | - | ✅ |
| 6 | 加入购物车 | CartDrawer | POST /api/v1/cart | INSERT cart_items | ✅ |
| 7 | 提交订单 | CheckoutPage | POST /api/v1/orders | INSERT orders + order_items | ✅ |
| 8 | 支付 | PaymentPage | POST /api/v1/payments | UPDATE orders.status | ✅ |
| 9 | 查看订单 | OrderList | GET /api/v1/orders | - | ✅ |
> 🔴 上表中的 ✅ 项是 **MVP 不可裁剪的核心路径**。Phase 5 采用核心路径优先策略,
> 确保这些 API 和页面首先完成并可互通,其余功能后续补充。
>
> **闭环节点总数: N | 涉及 API: M 个 | 涉及前端页面: K 个**
此链路图贯穿后续所有 Phase——设计时围绕它展开,评审时检查它的完整性,编码时优先实现它,验证时用它作为检查清单。
Agent 在此时自动做以下推断(展示给用户确认,不自行决定):
- 根据项目类型匹配 AI Native 技术栈(见 Step 0.3 技术选型表)
- 根据功能模块推断数据实体(如"订单"→需要 orders 表、order_items 表)
- 根据项目规模推断 Agent 数(小型/中型/大型)
- 根据项目类型和功能规模推断部署方案(如内部后台→单机 Docker Compose,面向用户产品→预留 K8s 迁移路径,AI/Agent 系统→需 GPU/大内存规划)
🛑 用户确认模块清单和优先级后进入 Step 0.3。
Step 0.3: 技术选型——AI Native 还是传统技术栈?(1 轮对话)
这是影响 MVP 代码质量和闭环成功率的关键决策。不同的技术栈,AI 生成的代码质量天差地别。
现在来确认技术选型方式。这个选择直接影响生成的代码质量和前后端联调的成功率——
**1. 技术选型方式:**
A. 🚀 AI Native 全栈(强烈推荐) ← 默认
AI 帮你选最合适的技术栈——选的是 AI 训练数据最多、最擅长、
前后端集成模式最成熟的技术组合。生成的代码 bug 最少,闭环成功率最高。
B. 🎯 你指定技术栈
你告诉我要用什么(如"Java Spring Boot + Vue"),我来适配。
注意:非主流组合可能导致更多集成问题,需要更多修复轮次。
C. 🤷 无所谓,你帮我选
同 A,走 AI Native。
💡 如果你不确定选什么,直接选 A 就行。AI Native 不是为了追新技术,
而是选 AI 最熟悉、写出 bug 最少的组合。
选 A/C(AI Native)时,Agent 根据项目类型自动确定技术栈:
| 项目类型 | 前端 | 后端 | 数据库 | ORM | 认证 | UI 组件库 |
|---|---|---|---|---|---|---|
| Web 全栈(默认) | Next.js 14+ / TypeScript | Next.js API Routes / Server Actions | PostgreSQL 15 | Prisma | NextAuth / Auth.js | Tailwind CSS + shadcn/ui |
| 移动端 App | React Native / Expo / TypeScript | Supabase / Firebase | PostgreSQL (Supabase) | Supabase SDK | Supabase Auth | NativeWind / Tamagui |
| 管理后台 | React 18+ / TypeScript / Vite | Node.js + Express / FastAPI | PostgreSQL 15 | Prisma / SQLAlchemy | JWT + bcrypt | Ant Design 5 / shadcn/ui |
| API 服务(无前端) | - | FastAPI / Python 3.12+ | PostgreSQL 15 | SQLAlchemy 2.0 | JWT + OAuth2 | - |
| AI/自动化系统 | 可选:Streamlit / Next.js | FastAPI / Python 3.12+ | PostgreSQL 15 + Redis | SQLAlchemy 2.0 | JWT | Tailwind CSS |
为什么 AI Native 能显著提高闭环成功率?
| 维度 | AI Native 栈 | 传统栈 |
|---|---|---|
| AI 训练数据量 | 🔥 极大(GitHub 上最多的示例代码) | ⚠️ 相对少 |
| 前后端集成模式 | 标准化(Server Actions/tRPC/REST) | 需要手动约定 |
| 类型安全 | 端到端(TypeScript → Prisma → DB) | 断裂(后端 Java 类型 vs 前端 JS) |
| 项目结构 | 约定大于配置(AI 不需要猜目录结构) | 千人千面,AI 生成结构不一致 |
| 常见 bug 修复 | AI 见过大量同类 bug,修复快 | AI 训练数据少,修复可能引入新问题 |
| Phase 5.5 静态分析 | 统一技术栈 → 检测规则精准 | 混合栈 → 需要 N 套检测规则 |
选 B(用户指定)时,Agent 的处理方式:
收到,你指定的技术栈是: [用户指定的前后端/数据库]
⚠️ 温馨提示:
- 这个组合如果不是 AI 训练数据中最主流的技术栈,生成的代码可能需要更多 Phase 5.5 修复轮次
- 如果前后端用了两个 AI 不太熟悉的框架组合,集成断裂的风险会更高
- 我会尽力适配,但最终闭环成功率取决于这个技术栈在 AI 训练数据中的覆盖度
确认使用这个技术栈吗?
🛑 用户确认技术选型后进入 Step 0.35(部署架构规划)。
⚠️ 关键原则:AI Native 不是为了"用新技术",而是选择 AI 最擅长的工具链——这意味着更少的 bug、更顺畅的前后端集成、更高的闭环一次性通过率。对于不确定技术选型的用户,默认为 AI Native 是最安全的选择。
Step 0.35: 部署架构与网络拓扑规划(运维工程师介入,1-2 轮对话)
在 API 和数据模型方向确认后,运维工程师开始规划系统的基础设施层面:
现在来规划部署架构。根据你的项目类型和规模,我来给出建议:
**部署环境**:
- 开发环境 (Dev): 本地 Docker Compose ← 默认
- 测试环境 (Staging): 单机/云服务器部署
- 生产环境 (Prod): 根据规模选择
**容器化方案**:
- Docker + Docker Compose (单机部署) ← MVP 默认
- Docker + K8s (中大型项目,需要自动扩缩)
- 直接部署 (极简原型,可跳过容器化)
**CI/CD 工具链**:
- GitHub Actions ← 默认(免费额度够用)
- GitLab CI(自建 GitLab 时推荐)
- Jenkins(需要更复杂的流水线控制)
- 手动部署(极简原型可跳过)
**反向代理与网络**:
- Nginx 反向代理 ← 默认
- Caddy(自动 HTTPS,更轻量)
- 是否需要 CDN?(面向用户的产品推荐开启)
- 是否需要 WAF?(处理敏感数据时推荐开启)
**监控与告警**:
- 日志: Docker logs + 文件日志 / ELK / Loki
- 监控: Prometheus + Grafana(中大型)/ 云监控(小型)
- 告警: 飞书/钉钉/企业微信 Webhook 通知
运维工程师基于用户选择,自动生成两个关键架构图:
① 网络拓扑图(Mermaid flowchart)— 展示公网入口 → 反向代理 → 应用服务 → 数据服务的完整链路、端口映射和协议:
## 网络拓扑图
```mermaid
graph TD
subgraph 外部访问层
Client([用户: Browser/App])
end
subgraph 安全与加速层
CDN[CDN 加速]
WAF[WAF 防火墙<br/>可选]
end
subgraph 反向代理层["Nginx :80/:443"]
Nginx[Nginx 反向代理<br/>SSL Termination]
end
subgraph 应用层["Docker Network: app-net"]
BE[后端 API :8080<br/>FastAPI / Express]
FE[前端静态资源<br/>Nginx 容器 :80]
Worker[Celery Worker<br/>异步任务]
end
subgraph 数据层["Docker Network: data-net"]
PG[(PostgreSQL :5432<br/>Volume: pgdata)]
Redis[(Redis :6379<br/>Volume: redisdata)]
end
subgraph 运维层
Prometheus[Prometheus :9090]
Grafana[Grafana :3001]
end
Client -->|HTTPS| CDN
CDN --> WAF
WAF -->|HTTPS :443| Nginx
Nginx -->|/api/*| BE
Nginx -->|/| FE
BE -->|TCP :5432| PG
BE -->|TCP :6379| Redis
BE -.->|任务分发| Worker
Worker -->|TCP| PG
Worker -->|TCP| Redis
Prometheus -.->|Pull Metrics| BE
Prometheus -.->|Pull Metrics| Nginx
Grafana -->|Query| Prometheus
```
② 部署架构图(Mermaid graph)— 展示容器编排、数据卷挂载、CI/CD 集成和健康检查关系:
## 部署架构图
```mermaid
graph TB
subgraph CI/CD["CI/CD Pipeline (GitHub Actions)"]
GitPush[Git Push] --> LintTest[Lint + TypeCheck + Test]
LintTest --> Build[Build Docker Images]
Build --> Push[Push to Registry]
Push --> Deploy[SSH Deploy / Webhook]
end
subgraph DockerHost["Docker Host"]
subgraph PublicContainers["公共服务"]
NginxCont["nginx:alpine<br/>Ports: 80, 443<br/>Volume: ./nginx/nginx.conf"]
end
subgraph AppContainers["应用服务"]
BECont["backend:latest<br/>Port: 8080<br/>Health: /api/health"]
FECont["frontend:latest<br/>Port: 80<br/>Served via Nginx"]
WorkerCont["worker:latest<br/>Health: heartbeat"]
end
subgraph DataContainers["数据服务"]
PGCont["postgres:15<br/>Port: 5432<br/>Volume: pgdata"]
RedisCont["redis:7-alpine<br/>Port: 6379<br/>Volume: redisdata"]
end
subgraph MonitorContainers["监控"]
PromCont["prom/prometheus<br/>Port: 9090"]
GrafCont["grafana/grafana<br/>Port: 3001"]
end
end
Deploy -->|"docker compose up -d"| DockerHost
NginxCont -->|proxy_pass| BECont
NginxCont -->|serve static| FECont
BECont -->|SQL| PGCont
BECont -->|Cache| RedisCont
WorkerCont -->|SQL| PGCont
WorkerCont -->|Cache| RedisCont
PromCont -.->|scrape| BECont
GrafCont -->|query| PromCont
```
运维工程师最后汇总部署决策,供 PRD 引用:
**部署架构确认摘要**:
- 部署方案: [Docker Compose / K8s / VPS 直接部署]
- 容器数量: ~N 个 (Nginx + 后端 + 前端 + Worker + PostgreSQL + Redis + 监控)
- CI/CD 工具: [GitHub Actions / GitLab CI / 手动]
- 监控方案: [Prometheus+Grafana / 云监控 / 轻量日志]
- MVP 预估资源: 2Core CPU / 4GB RAM / 50GB Disk
🛑 用户确认部署架构后进入 Step 0.36(GitHub 开源项目调研)。
Step 0.36: GitHub 开源项目调研——寻找可复用基座(1-2 轮对话)
在技术方案确认后、PRD 最终定稿前,调研 GitHub 上是否有可复用的开源框架、脚手架或库,作为 MVP 的开发基座。
核心理念: 避免重复造轮子。如果已有成熟的开源项目覆盖 MVP 大部分需求,基于它做二次开发远比从零开始高效——既能节省大量基础代码编写时间,又能降低前后端集成出错的概率。
调研时机: 此时已完成功能模块梳理(Step 0.2)、技术栈选型(Step 0.3)和部署架构规划(Step 0.35),有足够信息进行精准搜索。
调研范围(Agent 根据项目类型和技术栈自动生成搜索关键词):
| 项目类型 | 搜索关键词示例 | 优先寻找 |
|---|---|---|
| 电商/交易类 | nextjs ecommerce starter、react storefront template |
含商品管理 + 购物车 + 支付的完整脚手架 |
| 内容/社区类 | nextjs blog cms、forum community starter |
含用户系统 + 内容发布 + 互动的模板 |
| 管理后台类 | react admin dashboard、nextjs admin panel template |
含 CRUD 生成 + 权限管理 + 数据面板的框架 |
| 工具/SaaS类 | nextjs saas starter、saas boilerplate open source |
含多租户 + 订阅计费 + 用户管理的模板 |
| AI/自动化类 | ai agent framework open source、llm workflow engine |
含 LLM 调用链 + 任务编排 + 结果输出的框架 |
| API 服务 | fastapi boilerplate production、express api starter |
含认证 + 权限 + 日志 + 测试的骨架 |
评估维度(Agent 自动评估,MECE 原则全覆盖):
| 维度 | 权重 | 评估内容 | 数据来源 |
|---|---|---|---|
| 需求覆盖度 | 🔴 40% | 该项目的功能与 MVP 核心闭环的重合度(逐项对比技术链路表) | 项目 README + 文档 + Demo |
| 技术栈兼容度 | 🔴 25% | 是否与 Step 0.3 选定的技术栈一致或可低摩擦适配 | 项目 package.json / go.mod / requirements.txt |
| 社区活跃度 | 🟡 15% | Stars 数、最近 commit 时间(≤1月为佳)、Issue 响应速度 | GitHub API + Insights |
| 代码质量 | 🟡 10% | TypeScript 严格模式、测试覆盖率、文档完整度、CI 配置 | 源代码抽查 + README 质量 |
| 许可证合规 | 🔴 10% | MIT / Apache 2.0 / BSD 等宽松许可证优先;GPL/AGPL 需评估法律风险 | LICENSE 文件 |
调研流程(Agent 自动执行,用户只需看结论):
1. Agent 根据项目类型 + 技术栈自动生成 3-5 组搜索关键词
2. Agent 在 GitHub 上按 Stars 排序搜索,筛选 Top 3-5 候选项目
3. 对每个候选项目执行五维度评估,生成候选对比表
4. 展示 Top 2 推荐给用户,附详细覆盖分析和推荐理由
5. 用户做出选择(或全部不采用)
Agent 展示格式(用户确认用):
## 🔍 GitHub 开源项目调研报告
根据你的项目类型([电商/管理后台/SaaS/...])和技术栈([Next.js + PostgreSQL]),
我调研了 GitHub 上的高匹配度开源项目:
### 候选项目对比
| 项目 | Stars | 许可证 | 需求覆盖 | 技术栈兼容 | 社区活跃 | 综合分 |
|------|------:|--------|:------:|:--------:|:------:|:----:|
| **[项目A]** | 8.2k | MIT | ⭐⭐⭐⭐⭐ 85% | ⭐⭐⭐⭐⭐ 100% | ⭐⭐⭐⭐ | **92** |
| **[项目B]** | 15k | Apache 2.0 | ⭐⭐⭐⭐ 70% | ⭐⭐⭐⭐ 90% | ⭐⭐⭐⭐⭐ | **85** |
| **[项目C]** | 3.1k | MIT | ⭐⭐⭐ 50% | ⭐⭐⭐⭐⭐ 100% | ⭐⭐⭐ | **65** |
### 🥇 推荐: [项目A]([GitHub URL])
**项目简介**: [一句话描述项目是什么]
**核心功能覆盖分析**(对照 MVP 核心闭环技术链路表):
- ✅ 用户注册/登录 — 项目A 自带 Auth 模块,与选定技术栈完全一致
- ✅ 商品管理 CRUD — 项目A 自带 Admin Dashboard,含完整 CRUD 示例
- ✅ 购物车 — 项目A 含购物车模块
- ⚠️ 支付集成 — 项目A 仅含 Stripe 示例,需扩展支付宝/微信支付
- ❌ 订单状态推送 — 项目A 不含 WebSocket,需自行添加
**采用预估**: 基于项目A 开发,预计可节省 **~60% 基础代码**,只需重点实现支付扩展和消息推送。
**不采用的风险**: 从零开始预计增加 3-5 天基础框架搭建,且前后端集成出错概率更高。
### 你的选择:
A. "用项目A 作为基础" → PRD 和后续设计围绕项目A 的架构进行
B. "用项目B 作为基础" → 同上
C. "我看中了其他项目: [URL]" → Agent 评估新项目后重新展示
D. "全部不采用,从零开始" → 按原计划执行
如果用户选择基于某开源项目开发:
Agent 需立即做以下调整,贯穿后续所有 Phase:
在 PRD 中补充「基础项目(Base Project)」章节(见 Step 0.4 PRD 骨架第 0 章):
- 项目名称、GitHub URL、许可证、Stars 数
- 已覆盖的功能清单(✅ 直接复用 / ⚠️ 需修改 / ❌ 需新增)
- 技术架构说明(与基础项目的集成方式:Fork / Submodule / Template)
调整 Phase 1 设计范围:
- 数据库设计:在基础项目的数据模型上扩展,新增字段和表,而非全新设计
- UI 设计:在基础项目的组件库上定制主题和新增页面,而非全新设计系统
- 运维架构:沿用基础项目的容器化方案,按需调整 Dockerfile 和服务配置
调整 Phase 5 编码策略:
- 后端:Fork 基础项目 → 添加新模块 → 修改现有模块适配 PRD 需求
- 前端:Fork 基础项目 → 定制页面主题 → 新增闭环页面
- 每个编码 Agent 的 Prompt 中附加基础项目的架构文档和关键代码路径,确保 Agent 理解现有代码结构
- 编码产出必须是「在基座上的增量」,而非「覆盖基座的替换」
Phase 5.5 闭环验证调整:
- 静态分析范围包含基础项目的原有代码(避免引入新断裂)
- E2E 测试覆盖「基础项目原有功能 + 新增功能」的串联路径
如果用户选择从零开始:
Agent 按原流程继续,不做调整。但调研报告保留在项目目录中,作为「为什么不基于开源项目」的决策记录。
🛑 用户确认选择后进入 Step 0.4(PRD 自动生成)。
Step 0.4: PRD 自动生成
Agent 基于以上所有对话,自动生成一份结构化 PRD,写入项目目录。
PRD 骨架(Agent 自动填充内容):
# [项目名称] — 产品需求文档 (PRD)
## 0. 基础项目(Base Project)—— 如果 Step 0.36 选定了开源基座
- 项目名称、GitHub URL、许可证、Stars
- Fork 策略与集成方式
- 已有功能覆盖清单: ✅ 直接复用 / ⚠️ 需修改 / ❌ 需新增
- 技术架构说明(基座项目的目录结构、数据模型、组件体系概述)
## 1. 产品概述
- 产品定位、目标用户、产品边界
## 2. 系统架构
- 技术栈选型、模块关系图、网络拓扑图、部署架构图
- 如果基于开源基座: 标注基座已有的架构与本次新增部分的边界
## 3. 功能模块
- M1~MN 每个模块的功能概述、API 接口定义、核心数据模型
- 如果基于开源基座: 标注每个模块是「复用基座」还是「新增/修改」
## 4. MVP 优先级
- P0/P1/P2/P3 分级表
- **MVP 核心闭环链路**(Phase 0.2 技术链路表,标注每个步骤的前端页面、API、数据变更)
- **闭环不可裁剪项**:标记 ✅ 的 API 和页面必须在 Phase 5 第一阶段完成
## 5. 非功能需求
- 性能/安全/可用性要求
## 附录
- 全局错误码、技术约束
PRD 质量标准:
- API 接口定义包含: 路径、方法、Request/Response JSON 示例
- 数据模型包含: 核心字段、关系、约束
- MVP 范围明确: P0 必须跑通的核心闭环
从功能到 API/数据的推断方法(Agent 内部执行)
这是 Phase 0 最关键的步骤。Agent 按以下规则将用户的功能描述转化为具体的 API 和数据结构:
功能动词 → CRUD 映射:
"创建/发布/添加" → POST /api/v1/{resource}
"查看/列表/搜索" → GET /api/v1/{resource}[?page=&size=&keyword=]
"查看详情" → GET /api/v1/{resource}/{id}
"修改/编辑/更新" → PUT /api/v1/{resource}/{id}
"删除/下架/取消" → DELETE /api/v1/{resource}/{id}
"批量操作" → POST /api/v1/{resource}/batch/{action}
功能名词 → 数据实体推断:
"用户/账号/成员" → users 表 (id, username, password_hash, role, ...)
"商品/产品/物品" → products 表 (id, title, price, status, ...)
"订单/交易" → orders 表 (id, buyer_id, item_id, amount, status, ...)
"评论/评价" → reviews 表 (id, user_id, target_id, rating, content, ...)
"消息/通知" → notifications 表 (id, user_id, type, content, read, ...)
"文件/图片/附件" → files 表 / OSS 存储
"设置/配置" → settings 表 (key-value) 或 JSONB 配置字段
关系推断:
"用户有多个订单" → orders.user_id FK → users.id (1:N)
"订单包含多个商品" → order_items 中间表 (N:M)
"商品属于一个分类" → products.category_id FK → categories.id (N:1)
PRD 推断示例(展示给用户确认的格式):
根据你的功能描述,我推断以下 API 和数据模型:
功能: "用户注册和登录"
→ POST /api/v1/auth/register (注册)
→ POST /api/v1/auth/login (登录)
→ users 表: id, username, password_hash, role, created_at
功能: "发布和管理商品"
→ POST /api/v1/products (发布)
→ GET /api/v1/products (列表)
→ PUT /api/v1/products/{id} (编辑)
→ DELETE /api/v1/products/{id} (下架)
→ products 表: id, user_id, title, description, price, status, images, created_at
以上推断是否正确?你可以说"没问题"确认,或指出需要调整的部分。
Step 0.5: 用户 Review → 迭代
Agent 展示 PRD 文件路径和关键内容摘要,让用户确认:
PRD 初版已生成: `[项目名]-PRD.md` (约 XXX 行)
**核心内容**:
- 功能模块: N 个 (M1~MN)
- P0 MVP 接口: ~XX 个
- 数据表: ~XX 张
- 技术栈: [后端] + [前端] + [数据库]
- 部署架构: [容器方案] + [CI/CD工具] + ~N个容器
- 🔍 开源基座: [项目名 (GitHub URL)] / 无(从零开始) ← Step 0.36 调研结果
**请确认**:
A. "没问题,继续进入设计阶段" → Phase 1
B. "需要修改 [具体哪些部分]" → 修改后重新确认
C. "有些功能我不确定,帮我细化" → 继续对话细化
🛑 Phase 0 最终确认: PRD 定稿,进入设计阶段。
Phase 1-5: 设计与开发
每个子 Agent 启动时必须注入
agents.md中对应角色的代码规范和工作流约束(详见下方「agents.md 注入机制」)。 以下为各 Phase 的职责矩阵和执行概要。
Phase 1: 设计产出(3-4 Agent 并行)
前置: Phase 0 PRD 已定稿
| Agent | 产出 | 要求 |
|---|---|---|
| 后端架构师 | 数据库设计-ER图与数据流.md |
完整 ER 图(Mermaid) + 关键表 DDL + 数据流图 + 索引策略 + Redis 设计,3000+ 行 |
| UI/UX 设计师 | UI-UX视觉设计定稿.md |
设计系统 + 页面线框图 + 交互组件 + 动效规范,3000+ 行 |
| 运维工程师 | 运维架构设计-网络拓扑与部署架构.md |
网络拓扑图(细化版) + 部署架构图(细化版) + CI/CD 流水线设计 + 容器化方案(Dockerfile模板) + 监控告警方案 + 环境配置矩阵(dev/staging/prod),2000+ 行 |
| 主 Agent | 多Agent架构总览.md |
Agent 拆分全景 + 职责矩阵 + 通信协议 |
🛑 验证文件达标后确认。
Phase 2: 跨角色评审(6 Agent 并行)
前置: Phase 1 产出 + Phase 0 PRD
6 个评审 Agent(PM/后端/前端/UI/QA/运维),每个 Agent 必须阅读全部文档,每个角色至少发现 3 个 Blocker。运维工程师重点评审:部署架构可行性、CI/CD 流水线合理性、容器化安全(端口暴露、密钥管理)、监控覆盖度、资源规格匹配度。
🛑 统计 Blocker/Major 数量,确认评审深度。
Phase 3: 优化方案 + 协调(6+1 Agent 并行)
前置: 6 份评审报告
6 个优化 Agent + 1 个协调 Agent。协调 Agent 负责检测 4 类冲突(API/数据模型/范围/时间线)。运维优化 Agent 负责:优化容器镜像体积(多阶段构建、Alpine 基础镜像)、调整资源配置上限、提升 CI/CD 流水线并行度、补充健康检查与重启策略。
🛑 审查冲突清单和依赖图。
Phase 4: 冲突修复(4 Agent 并行)
前置: 协调报告的 P0 冲突清单
4 个修复 Agent(API统一/运维填补/安全/时间线),解决所有 P0 冲突。运维填补 Agent 负责:
- 填补基础设施缺口:如异步任务缺少消息队列、文件上传缺少对象存储
- 修正 CI/CD 流水线:确保所有服务有 Dockerfile、docker-compose.yml 完整、触发条件正确
- 安全加固:确保密钥不进镜像、端口不必要暴露、数据卷正确挂载
- 健康检查补全:确保每个服务配置了健康检查端点
- 环境一致性:确保 dev/staging/prod 环境定义对齐
🛑 锁定全部裁定,之后不允许改设计。
Phase 4.5: 设计文档终稿整合(1 Agent 串行整合)
前置: Phase 4 全部裁定 + Phase 1 原始设计文档 + Phase 2 评审报告 + Phase 3 优化方案
目标: 将 Phase 2-4 所有评审意见、优化方案和裁定 合并回设计文档,产出终稿版,消除「原始文档 + 散落修订」的碎片化问题。
为什么需要这一步: 不整合的后果是 Phase 5 编码 Agent 需要同时查阅 16+ 份文档——Phase 1 的 4 份设计稿 + Phase 2 的 6 份评审 + Phase 3 的 6 份优化 + Phase 4 的 4 份修复。任何一个遗漏都可能导致编码偏离已批准的方案。
整合 Agent(主 Agent 担任):
| 输入 | 来源 | 用途 |
|---|---|---|
[项目名]-PRD.md |
Phase 0 | 终稿修订 |
数据库设计-ER图与数据流.md |
Phase 1 | 终稿修订 |
UI-UX视觉设计定稿.md |
Phase 1 | 终稿修订 |
运维架构设计-网络拓扑与部署架构.md |
Phase 1 | 终稿修订 |
多Agent架构总览.md |
Phase 1 | 终稿修订 |
| 6 份评审报告 | Phase 2 | 提取 Blocker 和 Major 建议 |
| 6 份优化方案 | Phase 3 | 提取具体修改措施 |
| 协调报告(冲突检测) | Phase 3 | 确保跨文档无矛盾 |
| 4 份修复裁定 | Phase 4 | 法定修改,必须全部纳入 |
整合规则:
- 逐文档修订:对每份设计文档,从上到下逐节检查,将 Phase 2-4 中涉及该节的修改合并进去
- 溯源标注:每个修改处追加
<!-- 修订来源: Phase X, [角色], [原因] -->注释,确保可追溯 - 冲突优先:同一处有多个修改建议时,以 Phase 4 裁定为准
- 一致性校验:修订完成后,交叉检查终稿文档之间是否存在矛盾:
- PRD 中的 API 定义 ↔ DB 设计中的表结构
- DB 设计中的实体关系 ↔ 架构总览中的数据流
- UI 设计中的交互组件 ↔ PRD 中的功能描述
- 运维架构中的容器配置 ↔ DB/后端技术选型
- 未被采纳的修订:如果有 Phase 2-3 提出的建议但在 Phase 3-4 被拒绝/替代,在整合报告中列出「未采纳清单」并说明原因
产出:
| 文件 | 说明 |
|---|---|
[项目名]-PRD-FINAL.md |
PRD 终稿,API 定义 + 数据模型 + 部署摘要全部是最新裁定版本 |
数据库设计-ER图与数据流-FINAL.md |
DB 设计终稿,ER 图 + DDL + 索引 + Redis 全部按裁定更新 |
UI-UX视觉设计定稿-FINAL.md |
UI 设计终稿,组件 + 交互 + Design Token 全部按裁定更新 |
运维架构设计-FINAL.md |
运维终稿,网络拓扑 + 部署架构 + CI/CD + 容器方案全部按裁定更新 |
多Agent架构总览-FINAL.md |
架构总览终稿,Agent 拆分 + 通信协议全部按裁定更新 |
修订整合报告.md |
整合日志:每个修订的来源追溯 + 未采纳清单 + 跨文档一致性检查结果 |
🛑 Phase 4.5 确认: 展示整合报告——多少条修订已合并、多少条未采纳及原因、一致性检查结果 → 用户确认后,终稿文档成为 Phase 5 的唯一输入。
Phase 5: 核心路径优先编码(两阶段)
前置: Phase 4.5 终稿设计文档(唯一真相来源,编码 Agent 禁止查阅 Phase 1-4 原始文档)
🔴 核心原则:先确保业务闭环能跑通,再补充外围功能。不追求文件数量,追求闭环质量。
Phase 5.1: 核心闭环编码(5 Agent 并行,聚焦核心路径)
从 Phase 0.2 的「MVP 核心闭环技术链路表」中提取标记 ✅ 的 API 和页面,只编码这些:
每个编码 Agent 的 Prompt 必须包含以下闭环约束:
## 🔴 业务闭环约束(不可违反)
你正在编码的是 MVP 核心闭环路径上的代码。以下是必须确保的集成契约:
### 你的前端页面必须调用的 API(前端 Agent):
| 你的页面 | 必须调用的 API | 请求方式 | 请求体/参数 |
|---------|--------------|---------|------------|
| [页面名] | [API 路径] | [方法] | [参数说明] |
### 你的 API 必须访问的数据库表(后端 Agent):
| 你的 API | 必须读写的表 | 操作类型 | 关键字段 |
|---------|------------|---------|---------|
| [API 路径] | [表名] | [CRUD] | [字段列表] |
### 集成检查清单(编码完成后自查):
- [ ] 前端发送的请求体字段名与后端 API 定义的字段名一致(含大小写)
- [ ] 前端对 API 响应的字段访问路径与后端实际返回结构一致
- [ ] API 返回的 HTTP 状态码与前端错误处理逻辑匹配
- [ ] 认证 Token 在前端存储方式与后端验证方式一致(Header/Body/Cookie)
- [ ] 前端路由参数(如 /products/:id)与后端路径参数(/api/v1/products/{id})对应
5 个编码 Agent 分工:
| Agent | 职责(仅核心闭环) | 产出要求 |
|---|---|---|
| 后端基础 | 项目骨架 + 数据库 Migration + 核心闭环数据表 + 认证/中间件 | 可运行的 API 服务骨架 |
| 后端 API | 仅闭环链路表中的 ✅ API + 全局异常处理 + 请求验证 | 每个 API 有完整的 Controller→Service→Repository |
| 前端基础 | 项目骨架 + 路由 + 状态管理 + API 客户端(含 Token 管理) + 通用组件 | 可运行的前端骨架 |
| 前端页面 | 仅闭环链路表中的 ✅ 页面 + 页面间导航 | 每个页面完整可交互 |
| 运维 | Dockerfile + docker-compose.yml + nginx 配置 + 部署脚本 | 一键启动全栈 |
Phase 5.1 完成后立即验证(主 Agent 执行):
# 1. 启动全栈
docker compose up -d
# 2. 等待健康检查通过
docker compose ps # 确认所有容器 healthy
# 3. 验证前后端联通
curl http://localhost/api/v1/health # 后端可访问
curl http://localhost/ # 前端可访问
→ 只有容器全部 healthy 且前后端可访问,才进入 Phase 5.2。
Phase 5.2: 外围功能编码(5 Agent 并行)
Phase 5.1 验证通过后,编码闭环之外的功能(P1/P2 优先级模块):
| Agent | 职责(外围功能) |
|---|---|
| 后端基础 | 非核心数据表 Migration + 定时任务 + 消息队列 |
| 后端 API | 非闭环 API(管理后台/统计/通知等) |
| 前端基础 | 管理后台路由 + 高级组件 |
| 前端页面 | 非闭环页面(仪表盘/设置/通知等) |
| 运维 | CI/CD 流水线 + 监控 + 日志收集 + DEPLOY.md |
🛑 Phase 5 最终验证:
| 检查项 | 标准 | 验证方式 |
|---|---|---|
| 闭环 API 全部实现 | 技术链路表中每个 ✅ API 存在且可调用 | curl 逐个测试 |
| 闭环页面全部实现 | 技术链路表中每个 ✅ 页面存在且可渲染 | 浏览器访问 |
| 前后端联通 | 前端页面能成功调用后端 API(含认证流程) | 手动走通 1 个完整闭环 |
| 数据持久化 | API 写入的数据重启容器后仍存在 | docker compose down && up -d 后验证 |
| 代码质量 | 各角色代码符合 agents.md 对应规范 |
抽查命名/分层/类型/测试 |
| 可部署 | docker compose up -d 一键启动 |
全新环境执行 |
| 项目约束 | AGENTS.md 已输出到项目根目录 |
文件存在性检查 |
| 外围功能 | P1/P2 功能按裁量级别达标 | 按模块清单核对 |
→ 全部通过后进入 Phase 5.5(业务闭环验证)。
Phase 5.5: 业务闭环自动检测与验证(AI 驱动——解决"无法闭环"问题的关键)
前置: Phase 5 全部通过(核心闭环 + 外围功能均已编码完成,容器可启动)
核心思路: 闭环断裂点不需要用户来发现——AI 通过静态代码分析 + 动态运行验证自动检测,自动修复。
Step 5.5.0: 静态代码分析——自动检测集成断裂点(主 Agent 执行,无需用户参与)
这是整个闭环保障机制的核心。主 Agent 在不启动容器的情况下,直接分析所有已生成的代码文件,自动检测以下四类断裂点:
检测 1: 前端调用了不存在的 API
扫描范围: 所有前端代码文件(.tsx/.vue/.js/.jsx)
提取方法: 搜索 fetch(、axios.、api.、request( 等 HTTP 调用模式
提取目标: URL 路径 + HTTP 方法 + 请求体字段
对比: 后端代码中实际定义的路由(搜索 @Post、@Get、app.post、router.get 等)
→ 前端调用了 /api/v1/orders/export 但后端没有任何文件定义此路由
→ 断裂点: orders/export API 缺失,前端"导出订单"按钮点击后必报 404
检测 2: 后端 API 没有前端调用方(孤儿 API)
扫描范围: 所有后端路由定义
对比: 前端代码中的 API 调用列表
→ 后端定义了 DELETE /api/v1/admin/users/{id} 但前端没有任何代码调用此接口
→ 孤儿 API: 代码存在但无法通过正常用户操作触发,可能是遗漏的前端功能
检测 3: 前端表单/按钮没有连接任何 API(死交互)
扫描范围: 前端代码中的 <form>、onSubmit、handleSubmit、onClick 事件处理函数
检查: 事件处理函数内部是否有 API 调用
→ RegisterPage 的 handleSubmit 函数只有 console.log('submit'),没有实际 API 调用
→ 死交互: 用户填完注册表单点击提交,什么都不会发生
检测 4: API 没有连接数据库(无持久化)
扫描范围: 后端 API 的 Service/Controller 代码
检查: 是否包含数据库操作(Repository/DAO/SQL 查询/mongoose/prisma 调用)
→ POST /api/v1/products 的 Service 层只做了参数验证,return { success: true }
→ 无持久化: API 返回成功但数据从未写入数据库,刷新后数据消失
检测 5: 核心闭环页面间的导航断裂
扫描范围: 前端路由配置 + 页面内的导航代码(<Link>、router.push、navigate)
检查: 闭环链路表中相邻步骤的页面之间是否有导航路径
→ 用户从 ProductList 点击商品后,应该导航到 ProductDetail 页面
→ 但路由配置中 /products/:id 指向的是 ProductEdit 组件,而非 ProductDetail
→ 导航断裂: 用户点进商品详情却看到编辑表单
检测执行方式(主 Agent 自动完成):
主 Agent 在 Phase 5 代码全部生成后,启动一个代码分析 Agent:
你是一个代码集成分析专家。请分析以下已生成的前后端代码,找出所有集成断裂点。
## 分析方法
1. 读取所有前端代码文件,提取所有 API 调用(URL + Method + 请求体字段)
2. 读取所有后端代码文件,提取所有路由定义(URL + Method)
3. 读取所有前端代码文件,提取所有表单提交/按钮点击处理函数
4. 读取所有后端 Service 层代码,检查是否有数据库操作
5. 读取前端路由配置文件,提取所有路由定义
6. 交叉对比,输出断裂点清单
## 核心闭环技术链路表(验证基准)
[粘贴 Phase 0.2 技术链路表]
## 输出格式
| 断裂类型 | 位置 | 问题描述 | 严重程度 |
|---------|------|---------|---------|
| API缺失 | frontend/src/pages/Orders.tsx:45 → POST /api/v1/orders/export | 前端调用导出API但后端未实现 | 🔴 Blocker |
| 死交互 | frontend/src/pages/Register.tsx:32 handleSubmit | 注册表单提交函数无API调用 | 🔴 Blocker |
| 孤儿API | backend/src/routes/admin.ts:12 DELETE /admin/users/:id | 后端定义了删除用户API但前端无调用 | 🟡 Warning |
| 无持久化 | backend/src/services/productService.ts:20 createProduct | POST产品接口未写入数据库 | 🔴 Blocker |
| 导航断裂 | ProductList → ProductDetail | 路由/product/:id指向错误组件 | 🔴 Blocker |
输出: reports/static-gap-analysis.md(静态集成断裂点分析报告)
Step 5.5.1: 断裂点自动修复(主 Agent 驱动,无需用户参与)
根据 Step 5.5.0 的输出,主 Agent 对每个 🔴 Blocker 级别的断裂点启动修复:
| 断裂类型 | 修复策略 |
|---|---|
| API 缺失 | 启动后端 Agent 补全缺失的 API 端点(Controller→Service→Repository 完整链路) |
| 死交互 | 启动前端 Agent 补充 API 调用逻辑(含请求体构建、响应处理、错误处理) |
| 无持久化 | 启动后端 Agent 补充数据库操作(Repository 层 + Migration 如需要) |
| 导航断裂 | 启动前端 Agent 修正路由配置或页面导航代码 |
| 字段不匹配 | 同时启动前后端 Agent 对齐字段名(以 PRD 终稿的 API 定义为标准) |
⚠️ 修复只补全缺失的代码,不修改 Phase 4 锁定的设计。如果断裂是因为设计遗漏,标记为"设计缺口"并报告用户。
修复后重新执行 Step 5.5.0 静态分析,确认所有 🔴 Blocker 已清除。
Step 5.5.2: 闭环 E2E 测试脚本生成(1 Agent)
主 Agent 根据 Phase 0.2 的「MVP 核心闭环技术链路表」,生成一份 E2E 测试脚本:
你是一个 E2E 测试工程师。根据以下核心闭环技术链路表,生成一份端到端测试脚本。
要求:
1. 每个闭环节点对应一个测试用例
2. 测试用例必须包含:前置条件 → 操作步骤 → API 调用(或 UI 操作)→ 预期结果
3. 测试用例按闭环顺序编排,上一步的输出作为下一步的输入(如登录后的 Token 用于后续请求)
4. 使用 curl + shell 脚本(后端 API 测试)+ 或 Playwright/Cypress 脚本(前端 UI 测试)
5. 包含错误场景:如 Token 过期、参数校验失败、资源不存在等
技术链路表:
[粘贴 Phase 0.2 的技术链路表]
Agent 产出 tests/e2e/core-loop.spec.sh(后端 API 链路测试)和 tests/e2e/core-loop.spec.ts(前端 UI 链路测试)。
Step 5.5.3: 动态运行验证(主 Agent 自动执行)
# 1. 确保全栈已启动
docker compose up -d --wait
# 2. 执行后端 API 链路测试
bash tests/e2e/core-loop.spec.sh
# → 输出: ✅ Step 1 PASS | ✅ Step 2 PASS | ... | ❌ Step 5 FAIL: 订单创建返回 500
# 3. 执行前端 UI 链路测试(可选,视项目类型)
npx playwright test tests/e2e/core-loop.spec.ts
Step 5.5.4: 失败处理——闭环修复循环
如果任一步骤失败,主 Agent 执行以下修复循环(最多 3 轮):
测试失败 → 分析失败原因 → 定位责任模块
→ 启动修复 Agent(仅修复该模块,不改设计)
→ 重新执行测试
→ 通过 → 继续下一步
→ 失败 → 再修复(最多 3 轮,超过则标记为已知限制)
Step 5.5.5: 闭环验证报告
| 闭环节点 | 静态分析 | 动态测试 | 最终状态 | 备注 |
|---|---|---|---|---|
| 1. 用户注册 | ✅ 无断裂 | ✅ PASS | ✅ PASS | - |
| 2. 用户登录 | ✅ 无断裂 | ✅ PASS | ✅ PASS | Token 有效期 24h |
| 3. 创建资源 | ✅ 无断裂 | ✅ PASS | ✅ PASS | - |
| ... | ... | ... | ... | ... |
| N. 查看结果 | ✅ 无断裂 | ✅ PASS | ✅ PASS | - |
闭环通过标准:
- ✅ 静态分析: 无 🔴 Blocker 级别断裂点
- ✅ 动态测试: 全部核心闭环节点 PASS
- ✅ 数据在各步骤间正确传递(上一步的输出是下一步的输入)
🛑 Phase 5.5 最终确认: 展示闭环验证报告(含静态分析发现的断裂点及修复记录)→ 用户确认闭环可用 → 正式交付。
⚠️ 如果闭环验证未通过(有 🔴 Blocker 或动态测试 FAIL),MVP 不得交付。 闭环检测全程由 AI 自动完成——分析代码、发现断裂、自动修复、运行测试。用户不需要懂技术,只需要看最后的 ✅/❌ 报告。
跨角色协作机制
信息注入(每个 Agent Prompt 必须包含)
## ⚠️ 跨角色协作须知
你必须了解以下其他角色的核心发现,确保方案不冲突:
### PM 关注: [...] ### 后端变更: [...] ### 前端需求: [...]
### UI 修改: [...] ### QA 要求: [...] ### 运维约束: [...]
决策传播链
Phase 2 评审 → Phase 3 优化方案 → Phase 4 裁定 → Phase 4.5 终稿整合(合并回设计文档)
↓
Phase 5 编码 Agent 只读终稿文档
→ 编码阶段不改设计,也不查阅原始评审/优化报告
agents.md 注入机制(强制性)
每个子 Agent 启动时,必须在其 Prompt 中注入 agents.md 对应章节。注入采用「通用 + 角色」两层模式:
① 注入映射表:
| Agent 角色 | 注入 agents.md 章节 |
注入内容要点 |
|---|---|---|
| 项目经理 (PM) | § 🧑💼 项目经理 | DoD 定义、需求拆解、阻塞问题升级机制 |
| UI/UX 设计师 | § 🎨 UI 设计师 | 质检门禁(像素还原/A11y/响应式/极端态)、Design Token 约束 |
| 后端架构师/编码 | § ⚙️ 后端工程师 | 分层架构、命名规范、异常与日志、测试铁律(覆盖率阈值) |
| 前端编码 | § ⚛️ 前端工程师 | 抽象原则、复用生态库、命名规范、类型安全、注释规范 |
| 运维工程师 | § ☸️ 运维工程师 | CI/CD 门禁、Docker 铁律、部署策略、监控告警 |
| QA 工程师 | § 🧪 测试工程师 | 自动化测试策略、E2E 框架选型、质量门禁、缺陷提报规范 |
| 协调/全局 Agent | § 1 全局上下文 + § 3 跨角色协作协议 | 技术选型总纲、Git 规范、协作矩阵 |
② 注入时机与深度:
| Phase | 注入深度 | 说明 |
|---|---|---|
| Phase 1 (设计) | 轻量 | 注入 §1 技术选型总纲 + §3 协作协议 + 对应角色 职责 和 工作流(不含代码细节) |
| Phase 2 (评审) | 中等 | 注入 §1 全局 + §3 协作协议 + 对应角色的 成功指标 和 交互触发 规则 |
| Phase 3 (优化) | 中等 | 同 Phase 2,额外注入「交互触发」规则以检测跨角色冲突 |
| Phase 4 (修复) | 完整 | 注入完整角色规范,确保修复方案符合所有代码/运维/安全铁律 |
| Phase 4.5 (整合) | 完整 | 注入 §1 全局 + §3 协作协议(整合 Agent 需要跨角色视角检测文档矛盾) |
| Phase 5 (编码) | 完整 | 注入完整角色规范(含代码规范、命名、测试铁律、Docker/CI 门禁)+ 闭环约束块(前后端集成契约),编码 Agent 不得违反 |
| Phase 5.5 (闭环验证) | 中等 | 注入 §1 全局 + §3 协作协议 + QA 测试策略(验证 Agent 需要端到端测试能力) |
③ 注入模板(每个子 Agent Prompt 的开头):
## ⚠️ 项目约束(来源: agents.md)
以下规范为项目级硬性约束,你产出的所有代码/文档/设计必须严格遵守。违反将导致产出被拒绝。
### 你的角色: [角色名]
[从 agents.md 复制对应角色完整章节]
### 全局约束(所有角色通用)
[从 agents.md 复制 §1 全局上下文 + §3 跨角色协作协议]
④ 交付输出: Phase 5 完成后,agents.md 原文输出到项目根目录 AGENTS.md,作为项目后续迭代的约束文件。该文件与编码产物一起提交到项目仓库。
agents.md 注入效果验证
以"后端登录接口"为例,对比同一编码 Agent 在有无 agents.md 约束下的产出差异:
| 维度 | 无 agents.md 约束 | 有 agents.md 约束 |
|---|---|---|
| 分层架构 | 业务逻辑写在 Controller,没有 Service 层 | Controller → Service → Repository 严格三层分离 |
| 命名规范 | function GetUserById() (PascalCase) |
function getUserById() (camelCase),符合后端规范 |
| 异常处理 | try-catch 后 res.status(500).send('error') |
全局异常拦截器,RFC 7807 Problem Details 标准格式 |
| 日志 | console.log('login error', err) 无级别 |
结构化 JSON 日志 + TraceID + 按级别分类(INFO/WARN/ERROR) |
| 安全 | 密码明文存储,无 Token 过期 | bcrypt/Argon2 哈希 + JWT 含过期策略 + Helmet 安全头 |
| 测试 | 无测试 / 空跑用例凑覆盖率 | 核心模块 ≥90% 行覆盖率,含 Happy Path + 边界值 + 异常场景 |
| 部署 | node app.js 手动运行 |
Dockerfile 多阶段构建 + docker-compose.yml + CI/CD 流水线 |
| 命名一致性 | 数据库字段 userId、代码变量 user_id 混用 |
数据库 snake_case,代码 camelCase,严格遵守分层规范 |
此对比验证了 agents.md 注入对编码产出的系统性提升——从「能跑就行」到「工业化可交付」的质变,是「实测表现」维度的核心判据。
边界条件处理
| 场景 | 处理 |
|---|---|
| 用户说"我先随便看看,不确定做什么" | Phase 0 Step 0.1 多给具体选项和示例,帮助用户收敛方向 |
| 用户跳过问题("先默认") | 使用默认推荐值并记录,后续可回退修改 |
| 用户中途改变核心需求 | 评估影响:仅影响 PRD → 回到 Step 0.2;已进入 Phase 1+ → 从 Phase 2 重审 |
| PRD 生成后用户觉得太长/太短 | 调整粒度:太长→合并相似模块;太短→展开关键模块细节 |
| 只有一句话需求("做个博客") | Agent 自动展开成完整 PRD 骨架,用户只需确认和微调 |
| Agent 中途失败 | 展示失败原因 → 询问用户:重试/跳过/手动接管 |
| 评审不达标(某角色 < 3 Blocker) | 要求该角色重审 |
| 七轮太长,只需快速原型 | 裁量:只做 Phase 0(PRD+闭环定义+GitHub调研) + Phase 5.1(核心闭环编码) + Phase 5.5(闭环验证),跳过设计→评审→优化→修复→整合。⚠️ 即使快速原型也必须通过 Phase 5.5 闭环验证;GitHub 调研不可跳过——快速原型更需要基座项目加速 |
| Phase 4.5 整合后发现跨文档矛盾 | 主 Agent 标记矛盾点 → 回退到对应角色确认 → 修正后重新整合 |
| 用户在不同 Step 提供矛盾信息 | 不静默覆盖——主动指出矛盾:「Step 0.2 你说只需要 Web 端,但 Step 0.3 选了 React Native(移动端),是两者都要还是以哪个为准?」 |
| 用户对推断结果全盘否定 | 回到 Step 0.2 重新梳理功能,这次让用户主导描述,Agent 只做结构化整理不做推断 |
| Phase 5.5 闭环验证失败(某步骤不通过) | 启动修复循环:分析根因 → 定位责任模块 → 修复 Agent 修复 → 重新测试(最多 3 轮)。3 轮后仍失败 → 标记为已知限制,在验证报告中明确注明该限制对用户的影响 |
| 用户对 AI 推断的闭环不确认("我也不确定是不是这样") | 用户不需要确定——Agent 根据项目类型和功能描述自动选择最合理的闭环模板。告诉用户:「没关系,我先按这个流程来做。做完后你可以实际体验,哪个步骤不对我们再调整。MVP 的核心流程通常都是相似的——注册→登录→核心操作→查看结果,你的项目大概率也是这个模式。」 |
| GitHub 搜索无合适结果(候选项目综合分均 < 40) | 如实告知用户:「该领域暂无成熟的开源基座项目」,自动进入从零开始路径。保留调研过程记录到项目中,避免后续重复搜索 |
| 候选项目的许可证不兼容(如全部为 GPL/AGPL) | 明确警告许可证风险:「这些项目虽然功能匹配但许可证要求你开源全部代码,不适合商业闭源项目」,提供风险说明后让用户决策 |
| 用户指定的技术栈导致搜索不到匹配项目 | 提示:「你指定的 [技术栈] 在 GitHub 上项目较少」,建议切换到 AI Native 栈重新搜索对比,或接受从零开始 |
| 用户选中项目后中途想换基座 | 评估当前 Phase:若仍在 Phase 0(PRD 未定稿)→ 重新调研并替换;已进入 Phase 1+ → 评估切换代价并告知用户(相当于 Phase 0 返工),由用户决定 |
| 候选项目已停止维护(最近 commit > 1年) | 标记为 ⚠️ 并警告:「该项目已超过 1 年未更新,可能存在未修复的安全漏洞和依赖过期问题」,原则上不推荐但尊重用户选择 |
| 用户问"能不能把几个开源项目拼起来用" | 明确劝阻:「多个基座项目拼合会导致代码风格冲突、依赖版本冲突、数据模型不一致,增加而非减少工作量」,建议选最匹配的一个或从零开始 |
关联文档使用指南:
- SKILL.md(本文件): 执行时读这个——包含完整 Phase 0 对话流程 + Phase 1-5.5 概要 + 业务闭环保障机制 + agents.md 注入机制
- agents.md: 子 Agent 的行为约束——含 PM/UI/FE/BE/DevOps/QA 六角色代码规范、质量门禁、CI/CD 铁律、跨角色协作协议
- 何时查: Phase 0 不需要 agents.md;Phase 1-5.5 启动每个子 Agent 前,从 agents.md 复制对应角色规范注入 Prompt;Phase 5 交付时将 agents.md 输出到项目根目录
主 Agent 执行 Checklist
主 Agent(编排者)在每个 Phase 按以下 Checklist 逐项执行,全部 ✅ 后才能进入下一 Phase:
Phase 0: 交互式 PRD 生成
Step 0.1 — 理解项目方向:
- 用户说出想法 → Agent 用自己的话复述理解
- 提出方向性 3 问(产品类型 / 目标用户 / 当前阶段),每问给默认选项
- 🛑 用户确认方向性回答后进入 Step 0.2
Step 0.2 — 功能模块梳理 + 核心闭环定义:
- 引导用户列出主线功能和辅助功能
- Agent 自动归类为 M1~MN 模块,标注 P0/P1/P2 优先级
- Agent 根据项目类型自动推断 MVP 核心闭环(套模板,用户只确认)
- 用户确认闭环后,Agent 生成「MVP 核心闭环技术链路表」(含 ✅ 标记)
- Agent 自动推断数据实体、Agent 数量、部署方案
- 🛑 用户确认模块清单和优先级后进入 Step 0.3
Step 0.3 — 技术选型:
- 询问技术选型方式:AI Native(默认推荐)/ 用户指定 / 无所谓
- 若选 A/C:根据项目类型自动匹配 AI Native 技术栈表
- 若选 B:确认用户指定的技术栈,告知非主流栈的风险
- 🛑 用户确认技术选型后进入 Step 0.35
Step 0.35 — 部署架构规划(运维工程师介入):
- 询问部署环境(Docker Compose 默认)、容器化方案、CI/CD 工具、反向代理、监控
- 生成网络拓扑图(Mermaid flowchart)
- 生成部署架构图(Mermaid graph)
- 汇总部署架构确认摘要
- 🛑 用户确认部署架构后进入 Step 0.36
Step 0.36 — GitHub 开源项目调研:
- 根据项目类型 + 技术栈生成 3-5 组 GitHub 搜索关键词
- 搜索并筛选 Top 3-5 候选开源项目
- 按五维度评估(需求覆盖 40% / 技术栈兼容 25% / 社区活跃 15% / 代码质量 10% / 许可证 10%)打分
- 生成候选对比表 + Top 2 详细推荐(含核心功能覆盖分析)
- 展示调研报告,让用户选择:A/B/C/D
- 若用户选定基座项目 → 立即调整 PRD 结构(新增第 0 章)、Phase 1 设计范围、Phase 5 编码策略
- 若用户从零开始 → 保留调研报告作为决策记录
- 🛑 用户确认选择后进入 Step 0.4
Step 0.4 — PRD 自动生成:
- 汇总 Step 0.1-0.36 全部对话信息
- 自动填充 PRD 骨架(含第 0 章基础项目信息,如适用)
- 生成完整 API 定义(路径 + 方法 + Request/Response JSON 示例)
- 生成完整数据模型(字段 + 关系 + 约束)
- 🛑 展示 PRD 文件路径和关键内容摘要,进入 Step 0.5
Step 0.5 — 用户 Review → 迭代:
- 展示 PRD 核心内容摘要(模块数 / P0 API 数 / 数据表数 / 技术栈 / 部署架构)
- 用户选择:确认 / 修改 / 继续细化
- 若修改或细化 → 回到对应 Step 修改后重新确认
- 🛑 PRD 最终定稿,进入 Phase 1
Phase 1: 设计产出
- 读取 Phase 0 定稿的 PRD 全文
- 确认裁量级别(极简/小型/中型/大型),按级别确定 Agent 数量
- 准备各子 Agent Prompt:PRD 摘要 + agents.md 对应角色 §(详见注入机制 ② 轻量级注入)
- 并行启动子 Agent(后端架构师 + UI/UX + 运维 + 架构总览)
- 等待全部完成,验证每个产出文件 ≥ 行数要求
- 🛑 展示产出文件摘要,等用户确认
Phase 2: 跨角色评审
- 收集 Phase 1 全部产出 + Phase 0 PRD
- 准备评审 Agent Prompt:全部文档 + agents.md 对应角色 §(中等注入)+ "至少发现 3 个 Blocker"
- 并行启动 6 个评审 Agent(PM/后端/前端/UI/QA/运维)
- 收集评审报告,统计每个角色的 Blocker 数
- 若某角色 < 3 Blocker → 要求重审
- 🛑 展示 Blocker 统计和关键问题摘要,等用户确认
Phase 3: 优化方案 + 协调
- 收集 6 份评审报告
- 准备优化 Agent Prompt:对应评审报告 + agents.md 角色规范 + 跨角色协作协议(中等注入)
- 并行启动 6 优化 Agent + 1 协调 Agent
- 协调 Agent 输出 4 类冲突检测(API/数据模型/范围/时间线)
- 🛑 展示 P0 冲突清单和优化方向,等用户确认
Phase 4: 冲突修复
- 收集协调报告的 P0 冲突清单
- 准备修复 Agent Prompt:冲突上下文 + agents.md 完整角色规范(完整注入)
- 并行启动 4 修复 Agent(API统一/运维填补/安全/时间线)
- 验证所有 P0 冲突已解决
- 🛑 展示裁定结果 → 用户确认后锁定,之后任何 Agent 不得修改设计
Phase 4.5: 设计文档终稿整合
- 收集全部输入:Phase 0 PRD + Phase 1 四份设计稿 + Phase 2 六份评审 + Phase 3 六份优化 + 协调报告 + Phase 4 四份裁定
- 主 Agent 逐文档修订:对每份设计文档逐节合并 Phase 2-4 的修改,每个改动标注溯源注释
- 交叉一致性校验:
| 校验对 | 检查项 |
|---|---|
| [ ] PRD API ↔ DB 表结构 | 接口字段与数据库列一致 |
| [ ] DB 实体关系 ↔ 架构数据流 | 数据流向与表关系匹配 |
| [ ] UI 组件 ↔ PRD 功能 | 每个功能点有对应 UI |
| [ ] 运维容器 ↔ 技术选型 | Dockerfile 基础镜像与后端语言版本一致 |
- 生成「未采纳清单」:列出 Phase 2-3 提出但被 Phase 3-4 拒绝的建议及拒绝原因
- 产出 5 份 FINAL 设计文档 + 1 份整合报告
- 🛑 展示整合报告(合并数 + 未采纳清单 + 一致性结果)→ 用户确认后终稿锁定,成为 Phase 5 唯一输入
Phase 5: 核心路径优先编码
- 收集 Phase 4.5 全部终稿设计文档(不使用 Phase 1 原始版本)
- 从 Phase 0.2 的「MVP 核心闭环技术链路表」中提取标记 ✅ 的全部 API 和页面清单
- 准备编码 Agent Prompt:设计文档 + 闭环约束块(前后端集成契约)+ agents.md 完整角色规范
- Phase 5.1(核心闭环编码):
- 并行启动 5 编码 Agent(后端基础/后端API/前端基础/前端页面/运维),Prompt 中只包含闭环链路表的 ✅ 项
- 等待全部完成
- 启动全栈:
docker compose up -d - 验证前后端联通:
curl localhost/api/v1/health+curl localhost/
- Phase 5.2(外围功能编码):
- Phase 5.1 验证通过后,并行启动 5 Agent 编码 P1/P2 功能
- 等待全部完成
- 逐项验收:
| 验收项 | 检查方式 |
|---|---|
| [ ] 闭环 API 全部实现 | 对技术链路表中每个 ✅ API 执行 curl 测试 |
| [ ] 闭环页面全部实现 | 浏览器访问每个 ✅ 页面,确认可渲染 |
| [ ] 前后端联通 | 手动走通 1 个完整闭环步骤(前端→API→数据库→响应→前端渲染) |
| [ ] 数据持久化 | docker compose down && up -d 后验证闭环数据仍存在 |
| [ ] 文件数达标 | 按裁量级别核对 |
| [ ] 代码符合 agents.md 规范 | 抽查命名/分层/类型/注释 |
| [ ] 核心模块测试覆盖率 | 检查测试文件和覆盖率报告 |
[ ] docker compose up -d 一键启动 |
在全新环境执行并验证 |
[ ] AGENTS.md 已输出到项目根目录 |
文件存在性检查 |
- 🛑 全部验收通过后进入 Phase 5.5
Phase 5.5: 业务闭环自动检测与验证
Step 5.5.0 — 静态代码分析(AI 自动执行,无需用户参与):
- 启动代码分析 Agent,扫描全部已生成的前后端代码
- 自动检测 5 类断裂点:
- API 缺失: 前端 HTTP 调用 ↔ 后端路由定义 交叉对比
- 死交互: 前端 form/button handler 内部是否有 API 调用
- 无持久化: 后端 Service 层是否有数据库操作
- 导航断裂: 前端路由 ↔ 页面组件映射是否正确
- 字段不匹配: 前端请求体字段 ↔ 后端 DTO/Schema 字段
- 输出
reports/static-gap-analysis.md(静态集成断裂点分析报告) - 若发现 🔴 Blocker 级别断裂点 → 进入 Step 5.5.1 自动修复
Step 5.5.1 — 断裂点自动修复(AI 自动执行,无需用户参与):
- 对每个 🔴 Blocker 启动对应修复 Agent:
- API 缺失 → 后端 Agent 补全缺失的 API 端点
- 死交互 → 前端 Agent 补充 API 调用逻辑
- 无持久化 → 后端 Agent 补充数据库操作
- 导航断裂 → 前端 Agent 修正路由/导航
- 字段不匹配 → 前后端 Agent 对齐字段名
- 修复后重新执行 Step 5.5.0 静态分析,确认 🔴 Blocker 清零
- 若仍有 Blocker → 再修复(最多 3 轮)
Step 5.5.2 — E2E 测试脚本生成:
- 根据 Phase 0.2 技术链路表生成
tests/e2e/core-loop.spec.sh - 可选:生成
tests/e2e/core-loop.spec.ts(前端 UI 测试)
Step 5.5.3 — 动态运行验证:
- 启动全栈并等待 healthy:
docker compose up -d --wait - 执行后端 API 链路测试:
bash tests/e2e/core-loop.spec.sh - 逐步骤检查测试结果——每个闭环节点必须 PASS
Step 5.5.4 — 失败修复循环(如动态测试失败):
- 分析失败原因 → 定位责任模块 → 启动修复 Agent → 重新测试
- 最多 3 轮,超过则标记为已知限制并记录
Step 5.5.5 — 闭环验证报告:
- 生成最终报告(含静态分析断裂点 + 修复记录 + 动态测试结果)
- 🛑 闭环全部节点 PASS(静态无 Blocker + 动态全 PASS)→ 展示报告 → 用户确认 → 正式交付
- ⚠️ 若有 🔴 Blocker 或动态测试 FAIL,MVP 不得交付
- 💡 整个过程用户只需要看最后的 ✅/❌ 报告,中间的分析和修复全部自动完成
裁量指南
| 项目规模 | 模块 | Agent 配置 | 预计产出 |
|---|---|---|---|
| 小型 | 1-3 | Phase 0(交互PRD+闭环定义+部署架构) + 1(3设计含运维) + 2(4评审含运维) + 3(4优化+1协调) + 4(3修复) + 4.5(1整合) + 5.1(5核心闭环编码) + 5.2(5外围编码) + 5.5(1闭环验证) ≈ 22 Agent | ~50 文件 + 闭环验证报告 |
| 中型 | 4-8 | 全流程 ≈ 38 Agent | ~140 文件 + 闭环验证报告 |
| 大型 | 9-15 | 全流程 ≈ 40 Agent | ~220 文件 + 闭环验证报告 |
| 极简原型 | 1 | Phase 0(5分钟PRD+闭环定义) + 5.1(2核心闭环编码: 1后端+1运维) + 5.5(闭环验证) ≈ 6 Agent | ~20 文件 + 闭环验证报告 |
已有 PRD: 跳过 Phase 0,从 Phase 1 开始(但需补充核心闭环技术链路表)。 已有设计: 跳过 Phase 1,从 Phase 2 评审开始。
常见陷阱
| 陷阱 | 对策 |
|---|---|
| Phase 0 问太多问题把用户吓跑 | 每轮≤4个问题,默认推荐明确,可随时"默认继续" |
| 🔴 MVP 代码产出多但业务跑不通(最大陷阱) | 三层保障:(1) Phase 0 AI 自动推断核心闭环;(2) Phase 5.1 核心路径优先编码;(3) Phase 5.5.0 静态代码分析自动检测 5 类断裂点并自动修复——检测和修复全程不需要用户参与 |
| 用户选了 AI 不熟悉的技术栈,导致代码质量差 | Step 0.3 默认 AI Native 技术栈(Next.js/Prisma/PostgreSQL/Tailwind),这是 AI 训练数据最丰富、bug 最少的组合。若用户坚持传统栈,明确告知风险 |
| PRD 生成后直接跳到编码(跳过评审) | 🛑 检查点强制暂停,提醒用户"评审能在编码前发现 19+ Blocker" |
| PRD 与架构割裂 | Phase 0 生成 PRD 时同步标注技术栈约束 |
| 评审流于形式 | 强制 3+ Blocker/角色 |
| 前端页面和后端 API 各自完成但互不联通 | Phase 5.1 每个编码 Agent 的 Prompt 注入「闭环约束块」+ Phase 5.5.0 静态分析交叉对比前后端代码自动发现断裂 |
| 编码完成后才发现无法部署 | Phase 0 即规划部署架构,Phase 1 产出运维设计文档,Phase 5 产出可运行 docker compose up -d,确保端到端可部署 |
| 评审意见散落各处未整合 | Phase 4.5 强制整合——将 16+ 份评审/优化/修复报告合并回 5 份终稿设计文档,编码 Agent 只读终稿,杜绝碎片化查阅 |
| 🔴 从零开始写所有代码,忽略 GitHub 上已有的成熟开源方案 | Step 0.36 强制调研——技术方案确认后、PRD 定稿前必须搜索 GitHub。 |
…(truncated)