# AGENT_RULES 目的:为本仓库提供稳定的执行流程。 ## 优先级 1. 系统/开发者指令与安全约束 2. 仓库规则:`.agents/` 与 `AGENTS.md` 3. 本文件 4. `TODO.md` ## 上下文加载(每次会话开始) **必读文档**(按顺序): 1. `memory-bank/project-brief.md` - 项目定位、边界、约束 2. `memory-bank/tech-stack.md` - 技术栈、工具链 3. `memory-bank/architecture.md` - 架构设计、模块职责 4. `TODO.md` - 当前任务队列 5. `CONFIRM.md` - 待确认事项 **目的**:让 AI 快速理解项目全貌,避免重复解释。 ## 主循环 1. 读取 `TODO.md` 2. 选择最上方的 Plan 3. **读取 `memory-bank/implementation-plan.md`**(若该 Plan 有对应说明) 4. 执行该 Plan 内所有可执行子任务 5. 校验输出结果(运行测试/检查日志) 6. **更新 `memory-bank/progress.md`**(记录已完成事项) 7. 如存在歧义/风险/决策点,记录到 `CONFIRM.md` 8. 若 Plan 已全部完成,则从 `TODO.md` 移除 9. 若 Plan 因缺少信息而阻塞,标记为 `BLOCKED` 并移到 `TODO.md` 末尾 10. 重新读取 `TODO.md`,继续下一个 Plan ## Plan 规则 - 不因等待确认而中断;记录到 `CONFIRM.md` 后继续 - 执行并验证该 Plan 中所有可执行的子任务 - 若因缺少信息/决策而阻塞:记录 `CONFIRM.md`,标记为 `BLOCKED`,移到末尾(不移除) - 每轮只处理一个 Plan - **小步快跑**:每个 Plan 应该可快速完成 - **可验证**:每个 Plan 必须包含验证步骤 ## 执行约束 ### 代码修改约束 - **必须先读文件再修改**:不读文件就提议修改是禁止的 - **必须运行测试验证**:相关测试必须通过 - **遵循换行规则**:遵循 `.gitattributes` 规则 ### 决策记录约束 - **重要决策**:记录到 `memory-bank/decisions.md`(ADR 格式) - **临时确认**:记录到 `CONFIRM.md`(会话级) - **进度留痕**:记录到 `memory-bank/progress.md`(持久化) ## CONFIRM.md 触发条件 - 需求不明确或存在多种可行方案 - 需要行为/兼容性取舍 - 风险或约束冲突 - **架构变更**:影响多个模块的修改 - **性能权衡**:需要在性能和可维护性之间选择 - **兼容性问题**:可能破坏现有用户代码 ## 验证清单 每个 Plan 完成后,必须验证: - [ ] 代码修改符合 `.agents/` 下的规则 - [ ] 相关测试通过 - [ ] 换行符正确 - [ ] 无语法错误 - [ ] 更新了 `memory-bank/progress.md` --- **最后更新**:{{DATE}}