子代理 (Sub-Agents) 参考
1. 概念概述
子代理 (Sub-Agents) 是 SOLO 工作模式中一个面向未来的、基于 AI 的增强功能。它们是专门为辅助开发者完成特定阶段任务而设计的自主或半自主的智能体。
每个子代理都精通其所在领域,能够理解上下文、执行任务、生成代码或文档,并与开发者进行交互。引入子代理的目标是将 SOLO 模式的自动化和效率提升到一个新的水平。
注意: 子代理目前处于概念和早期实验阶段,本文档描述的是其设计目标和未来愿景。
2. 各阶段的子代理设想
a. PRODUCT Agent
- 职责: 辅助产品经理(PM)或开发者澄清和结构化需求。
- 能力:
- 需求分析: 分析非结构化的需求描述,提取关键实体、用户故事和业务规则。
- 边缘案例生成: 根据核心需求,提出可能的边缘案例和异常流程。
- 用户故事格式化: 将对话式的需求转化为标准的用户故事格式。
- 交互示例:
PM: "我们要做一个用户登录功能。" PRODUCT Agent: "好的。登录需要用户名和密码吗?是否需要支持‘忘记密码’?登录失败三次后是否应锁定账户?"
b. ARCHITECT Agent
- 职责: 辅助架构师设计 API 和系统蓝图。
- 能力:
- OpenAPI 草稿生成: 根据 PRODUCT 阶段的产出,自动生成
openapi.yaml的草稿。 - 设计模式推荐: 基于需求推荐合适的 API 设计模式(如 RESTful, GraphQL)。
- 一致性检查: 检查新的 API 设计是否与现有系统的设计规范保持一致。
- OpenAPI 草稿生成: 根据 PRODUCT 阶段的产出,自动生成
- 交互示例:
Architect: "@ArchitectAgent,为‘创建用户’功能设计 API。" ARCHITECT Agent: "已生成
POST /users端点草稿,包含请求体UserRequest和响应UserResponse。请 review 并完善。"[./openapi.yaml]
c. ENGINEER Agent
- 职责: 辅助工程师编写、测试和重构代码。
- 能力:
- 测试用例生成: 基于 OpenAPI 规范,为指定的 API 端点生成单元测试和集成测试的骨架代码。
- 代码实现建议: 根据失败的测试,提供可能的代码实现方案。
- 重构助手: 识别代码中的“坏味道”(Code Smells),并提供重构建议。
- 交互示例:
Engineer: "@EngineerAgent,为
TasksApiController的createTask方法生成测试。" ENGINEER Agent: "已在TasksApiControllerTest.java中生成测试方法testCreateTask_Success和testCreateTask_InvalidInput。请补充断言逻辑。"
d. QA Agent
- 职责: 辅助 QA 工程师进行质量保证。
- 能力:
- 测试数据生成: 根据 API 模型的约束,生成多样化的测试数据(正常数据、边界值、无效数据)。
- 自动化测试脚本生成: 基于用户场景描述,生成端到端测试(如 Playwright, Cypress)的脚本草稿。
- 测试报告分析: 分析测试运行结果,对失败的测试进行初步的根因分析。
- 交互示例:
QA: "@QAAgent,为登录接口生成测试数据,覆盖所有校验规则。" QA Agent: "已生成测试数据集
login_test_data.json,包含有效凭证、无效邮箱格式、过短的密码等 10 个场景。"
3. 当前状态与未来展望
目前,SOLO 模式中的“代理”主要指开发者自身在不同阶段所扮演的角色。上述的 AI 子代理是我们将努力实现的目标,旨在将开发者的经验和最佳实践固化到工具链中,最终实现更高层次的人机协作开发。