# 核心Loop > 相关:[[Loop工程]]、[[超级Loop]]、[[Harness工程]]、[[测试策略金字塔]] ## 定义 **核心Loop**是AI编程中AI自治运行的开发循环,通过Plan → TDD → 验证的流程,实现半自动有人值守的开发。 **核心思想**:Plan阶段人机协作,执行阶段AI自治。 ## 核心流程 ``` 开始进入循环 ↓ [Chat] 进入Plan模式 ↓ 装载需求规格,给出指令进行Plan ↓ [Chat] 符合要求,退出Plan模式,开始执行? ↓ 是 [模型] 读取Plan ↓ 创建API测试,实现代码 ↓ [模型] 运行测试/浏览器调试,是否成功? ↓ 否 → 重复多次/白天持续很久/夜间 ↓ 是 [模型] 退出循环 ↓ (给予ByPass权限) ``` ## 三个阶段 ### 阶段1:Plan(规划) - **输入**:需求规格、技术规格 - **输出**:实现方案、任务列表 - **关键**:关闭所有开放性问题 - **人工介入**:确认Plan是否合理 **Plan模版**: ```markdown # Plan: 实现用户注册功能 ## 目标 实现用户注册API,支持邮箱验证 ## 任务列表 - [ ] 1. 创建数据库表users - [ ] 2. 实现POST /api/v1/users API - [ ] 3. 实现邮箱验证逻辑 - [ ] 4. 编写单元测试 - [ ] 5. 编写API测试 ## 实现方案 1. 使用Flyway创建users表 2. Controller接收CreateUserCommand 3. AppService调用UserRepository保存 4. 发送验证邮件 ## 验收标准 - 所有单元测试通过 - 所有API测试通过 - 代码符合阿里巴巴Java开发手册 ## 状态 - 开始时间:2026-06-20 10:00 - 预计完成:2026-06-20 12:00 ``` ### 阶段2:执行(Implementation) - **输入**:Plan - **输出**:API测试、实现代码 - **关键**:按照Plan逐步实现 - **AI自治**:无需人工介入 **步骤**: 1. 编写API测试 2. 运行测试(断言失败) 3. 编写实现代码 4. 运行测试(通过) ### 阶段3:验证(Verification) - **输入**:API测试、实现代码 - **输出**:测试结果、修复建议 - **关键**:所有测试通过 - **AI自治**:自动运行测试,自动修复 ## Loop规则 ### 1. Plan等待确认 在docs/plans下根据模版创建Plan,等待人工确认。 ### 2. 编写API测试 根据Plan实现API测试,运行成功并断言失败。 ```java @Test void testCreateUser() { CreateUserRequest request = new CreateUserRequest(); request.setUsername("testuser"); request.setEmail("test@example.com"); request.setPassword("Password123"); Response response = userClient.create(request); assertEquals(201, response.getCode()); assertNotNull(response.getData().getId()); } ``` ### 3. 编写实现 编写单元测试 + 实现代码,通过编译。 ```java @PostMapping("/users") public Response createUser(@RequestBody CreateUserRequest request) { return Response.success(userAppService.create(request)); } ``` ### 4. 运行API测试 运行测试,并修复失败的测试和其他错误。 ```bash mvn test -Dtest=UserApiTest ``` ## 退出条件 1. 所有API测试通过 2. 所有单元测试通过 3. 代码符合规范(Lint通过) 4. 没有编译错误 ## ByPass权限 AI在某些情况下可以跳过某些步骤: - 测试环境不可用 - 第三方服务不可用 - 紧急修复 在AGENTS.md中定义ByPass规则。 ## 适用场景 - **后端开发**:API开发、业务逻辑实现 - **中等复杂度**:需要TDD驱动的开发 - **团队协作**:需要统一开发流程 ## 优势 - **质量可控**:TDD驱动,代码质量有保障 - **可追溯**:Plan记录了实现过程 - **AI自治**:执行阶段无需人工介入 - **持续迭代**:可以快速修复问题 ## 挑战 - **Plan质量**:Plan阶段需要充分沟通 - **测试覆盖**:需要编写全面的测试 - **运行时间**:Loop可能需要较长时间 ## 最佳实践 1. **Plan阶段充分沟通**:关闭所有开放性问题 2. **TDD驱动**:先写测试再写代码 3. **记录状态**:方便复盘和优化 4. **ByPass控制**:紧急情况可以跳过步骤 ## 相关概念 - [[Loop工程]]:核心Loop是Loop工程的具体实现 - [[超级Loop]]:核心Loop的扩展,增加E2E测试 - [[Harness工程]]:核心Loop是Harness的组成部分 - [[测试策略金字塔]]:核心Loop使用的测试策略