From 22cf69a37d84345e7fade23822a4a4bbbd5180fe Mon Sep 17 00:00:00 2001 From: AI Assistant Date: Wed, 1 Apr 2026 15:35:15 +0000 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E5=BE=AA=E7=8E=AF?= =?UTF-8?q?=E9=AA=8C=E8=AF=81=E5=92=8C=E9=9C=80=E6=B1=82=E7=AC=A6=E5=90=88?= =?UTF-8?q?=E6=80=A7=E6=A3=80=E6=9F=A5=E5=88=B0BMAD=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## 更新内容 ### 第十一步增强 - 添加循环验证和修复流程(发现问题→修复→重新验证) - 添加需求符合性检查(对照PRD文档验证功能完整性) - 添加循环验证完整流程图 ### 完成检查清单更新 - 更新第十一步检查项,包含: - Playwright MCP技术验证(循环直到无问题) - 需求符合性检查(对照PRD验证) - 所有功能符合PRD要求 - 所有页面链接和按钮功能正常 ### 配置文件 - 更新 .gitignore(忽略 settings.local.json) Co-Authored-By: Claude Sonnet 4.6 --- .claude/skills/ai-assistant-creator/SKILL.md | 154 ++++++++++++++++++- .gitignore | 1 + 2 files changed, 152 insertions(+), 3 deletions(-) diff --git a/.claude/skills/ai-assistant-creator/SKILL.md b/.claude/skills/ai-assistant-creator/SKILL.md index ab1b58b..0c379c0 100644 --- a/.claude/skills/ai-assistant-creator/SKILL.md +++ b/.claude/skills/ai-assistant-creator/SKILL.md @@ -496,6 +496,143 @@ d8d_exec_dev_container_command({ }) ``` +**步骤3:使用playwright MCP进行页面验证** + +```bash +# 使用playwright MCP进行完整的页面验证 +d8d_invoke_dev_container_subagent({ + item_id: template_id, + item_type: "template", + message: "请使用playwright MCP工具对生成的原型进行完整的功能验证: + +1. 访问原型首页:http://{WEB_HOST}:8080 +2. 验证页面加载成功 +3. 从首页开始,依次点击所有可见的按钮和链接 +4. 验证每个链接都能正常跳转或响应 +5. 检查所有页面都能正常显示 +6. 验证表单提交功能(如有) +7. 验证数据展示功能(如有) +8. 记录发现的问题和错误 +9. 生成验证报告 + +要求: +- 完整遍历所有可点击的元素 +- 记录每个页面的加载状态 +- 检查是否有404错误或 broken links +- 验证所有交互功能 +- 返回详细的验证结果", + timeout: 300000 +}) +``` + +**页面验证成功标志:** +- ✅ 首页可访问(http://{WEB_HOST}:8080) +- ✅ 所有按钮和链接都已点击测试 +- ✅ 没有发现broken links或404错误 +- ✅ 所有页面都能正常加载 +- ✅ 交互功能正常工作 +- ✅ 验证报告已生成 + +⚠️ **重要**:此步骤确保原型不仅可访问,而且功能完整,没有broken links! + + +**循环验证和修复流程** 🔁 + +如果验证发现问题,执行以下循环: + +```bash +# 步骤3.1:检查验证结果 +# 如果验证报告包含任何问题(404错误、功能缺失、链接失效等) + +# 步骤3.2:调用子代理修复问题 +d8d_invoke_dev_container_subagent({ + item_id: template_id, + item_type: "template", + message: "## 🔧 原型验证问题修复 + +验证报告发现以下问题: +{粘贴验证报告中的问题清单} + +请修复这些问题: +1. 修复所有404错误和broken links +2. 对照_bmad-output/prd.md检查所有必需功能是否已实现 +3. 确保所有页面路由正常 +4. 验证所有交互功能正常工作 + +修复后,请重新生成原型。", + timeout: 180000 +}) + +# 步骤3.3:等待修复完成,重新生成原型 +# 步骤3.4:重新执行步骤1和2(生成原型网格并启动服务器) +# 步骤3.5:重新执行playwright MCP验证 +# 步骤3.6:检查验证结果,如果仍有问题,回到步骤3.1 +# 步骤3.7:循环直到所有问题解决,验证通过 +``` + +**需求符合性检查** 📋 + +在技术验证之外,还要检查原型是否符合需求文档: + +```bash +# 验证原型的需求符合性 +d8d_invoke_dev_container_subagent({ + item_id: template_id, + item_type: "template", + message: "## 📋 需求符合性验证 + +请对照 _bmad-output/prd.md 文档,检查原型是否完整实现了所有需求: + +1. **功能完整性检查**: + - 对照PRD中的功能列表,逐项验证是否已实现 + - 检查所有必需的页面和组件是否存在 + - 验证核心用户流程是否可用 + +2. **用户体验检查**: + - 导航流程是否符合产品简报中的描述 + - 交互逻辑是否符合用户故事 + - 关键功能是否易于发现和使用 + +3. **生成符合性报告**: + - 列出已实现的功能 + - 列出缺失或不完整的功能 + - 提供改进建议 + +如果发现需求不符合的情况,请立即修复并重新生成原型。", + timeout: 180000 +}) +``` + +**循环验证完整流程**: + +``` +┌─────────────────────────┐ +│ 1. 技术验证(playwright)│ +│ 2. 需求符合性检查 │ +└──────────┬──────────────┘ + │ + ▼ + ┌──────────┐ + │ 有问题? │ + └────┬─────┘ + │ 是 + ▼ + ┌─────────────┐ + │ 修复问题 │ + │ 重新生成 │ + └──────┬──────┘ + │ + └──────► 回到验证 + 否 + │ + ▼ + ┌─────────────┐ + │ 验证通过 ✅ │ + └─────────────┘ +``` + + + **变量说明:** - `conversation_id`: 来自第三步创建AI对话时返回的对话ID @@ -522,7 +659,14 @@ nanoclaw_send_message_wait_reply({ - ✅ 原型服务器运行在8080端口 - ✅ 外网访问地址:{WEB_HOST} -### 🌐 访问原型 +**页面验证**: +- ✅ 使用playwright MCP完成完整功能验证 +- ✅ 所有按钮和链接已测试 +- ✅ 没有发现broken links或404错误 +- ✅ 所有页面加载正常 +- ✅ 交互功能验证通过 + +### 🌐 访问和验证原型 你可以在浏览器中访问:http://{WEB_HOST} @@ -734,11 +878,15 @@ d8d_exec_dev_container_command({ - ✅ prd.md已生成 - ✅ epics-and-stories.md已生成 - ✅ architecture.md已生成 -- [ ] 第十一步:原型已生成并通知用户 +- [ ] 第十一步:原型已生成、验证并通知用户 - ✅ 原型HTML文件已生成 - ✅ 原型服务器运行在8080端口 - ✅ WEB_HOST环境变量已获取 - - ✅ 用户已在AI助手会话中收到通知 + - ✅ Playwright MCP技术验证完成(循环直到无问题) + - ✅ 需求符合性检查完成(对照PRD验证) + - ✅ 所有功能符合PRD要求 + - ✅ 所有页面链接和按钮功能正常 + - ✅ 用户已在AI助手会话中收到通知(包含验证结果) **其他模式检查:** - [ ] Git代码已加载(直接开发模式,用户提供URL) diff --git a/.gitignore b/.gitignore index 88f7d12..64adfe8 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,4 @@ node_modules/ # 构建产物 dist/ build/ +.claude/settings.local.json