Skip to content

AGENTS.md · Tour Mate 项目 AI 协作工作流 SOP

这是 你(独立开发者)+ N 个 AI 实例(产品 / 前端 / 后端 / UI)协作 的标准操作手册。 适用于三个姊妹项目:tour-mate-platform-web(本仓库)/ tour-mate-platform-uni-app / tour-mate-platform(后端)。 三个项目根目录均放一份内容一致的 AGENTS.md;修改时三处同步。

Cursor 会自动加载本文件作为 agent 上下文。每次新会话开场无需再粘贴这段。


〇、核心心法(3 条铁律 · 任何会话不可违背)

  1. API 契约是真源头api-docs/ 是合同;mock / 前端 TS / 后端 DTO 都是它的衍生物。字段不一致永远改衍生物,不改文档
  2. 单接口验证 > 批量切模块 — 后端 Service 完成一个再切一个,不要"一次切 14 个"导致 80% 是空数组。
  3. AI 健忘 → 上下文必须文档化 — 累计约束(backend-devlog/11 §四)、踩坑(§三)、契约(api-docs/)是 AI 的"外存",每次新会话开场必装备。

一、五阶段开发流程

阶段一 · 需求讨论

内容
输入业务想法(一句话 / 用户故事 / 竞品截图)
AI 角色产品 AI(在 Plan 模式下)
你的动作当 PM,提需求,让 AI 复述 + 列假设清单
输出需求摘要(不超过 1 页)+ 假设清单(≥ 3 条)
验证你 review 假设清单,纠偏后让 AI 重新复述确认

反模式:你心里有图,直接让 AI 写代码 — AI 会按它脑补的假设跑偏。

阶段二 · 契约设计(最关键阶段)

内容
输入阶段一的需求摘要
AI 角色契约设计 AI(仍在 Plan 模式)
工具模板参考 api-docs/00-通用规范.md + api-docs/web-admin/01-认证与管理员.md
输出api-docs/<端>/<模块>.md(接口路径 / 方法 / 参数 / 响应字段 / 错误码 / 敏感操作标记)
验证对照 api-docs/00-通用规范.md §1–§10 + 累计约束 §四 逐条 checklist

契约必含字段

  • 接口归属(app / web-admin / common)
  • 复用关系(独立 / 复用 Service / 复用 Repository)
  • 是否敏感操作(决定是否需要 X-Confirm-Password
  • 时间字段格式(统一 ISO 8601)
  • 分页 page 起点(App=0 / Web Admin=1)
  • 业务子码(如 U001 / G002)

阶段三 · 并行开发

关键转变:前端 AI 和后端 AI 可以同时跑,不再串行等待。

前端 AI后端 AI
输入阶段二 API 文档阶段二 API 文档
输出mock + TS 类型 + API 模块 + 页面骨架Controller + DTO + Service 接口骨架(Service 实现先返 mock 数据 + TODO)
验证pnpm tsc --noEmit + pnpm testmvn compile + Postman 调用骨架
共同约束字段名、枚举值、错误码 逐字符对齐契约

反模式:让前端 AI 看后端代码出 mock,或反过来 — 两端必须只看契约,不互相参考实现。

阶段四 · 联调(单接口验证,不是批量切模块)

内容
触发条件后端 Service 实现完成(不是 Controller,是 Service 真业务可用)
工具「模块成熟度看板」(见 §三)
你的动作按看板「真接口可用 ✅」的接口逐个切,每切一个点击页面验证一次
输出mock toggle 移除 + devlog 记录
验证页面跑通且字段无报错;toast 错误 ≤ 0

反模式

  • ❌ 切完整模块(14 个接口)才验证 → 出问题排查成本指数上升
  • ❌ 切了就标 ✅ → 必须点击验证

阶段五 · 沉淀

内容
输入联调中发现的所有问题
工具backend-devlog/11 §三 联调问题清单 + §四 累计约束
输出问题表追加、跨模块规律提炼到 §四
验证下一模块开始前先读 §四(AI prompt 装备)

沉淀原则:只记"跨模块"的规律,不记"本模块特有"的细节。


二、Prompt 装备模板(每次新会话开场粘贴)

AI 跨会话不记忆。每次开新对话先丢这段,省下 80% 的"AI 跑偏"。

text
我在做 [tour-mate-platform-web / uni-app / backend],分支 [branch]。

本次任务:[一句话描述]

必读上下文(按顺序):
- 工作流总纲:AGENTS.md(已自动加载)
- 累计约束:backend-devlog/11-Web管理后台数据联调.md §四
- 已踩坑:同文件 §三
- 接口契约:api-docs/<端>/<模块>.md
- 通用规范:api-docs/00-通用规范.md(时间 / 分页 / 鉴权 / 枚举)

严格约束:
- 文档为真源,字段不一致改前端不改文档
- 时间字段统一 dayjs() 解析,禁 new Date()
- 敏感操作走 axios interceptor 自动注入 X-Confirm-Password(不在业务层手动写)
- 不确定的字段先列疑问清单,禁止假设
- Web Admin page 从 1 起,App page 从 0 起
- 一次只改一个文件,禁止一次性大改不让人审

执行方式:先列 Step 1 输出
  (a) 计划修改的文件清单
  (b) 字段差异清单(前端 vs 文档)
  (c) 疑问清单
  (d) 与累计约束的冲突检查
等我确认后再开始改代码。

三、模块成熟度看板(决策一个模块该做什么)

每个待开发的模块在 backend-devlog/11 §二 联调进度 维护 4 列状态:

后端 Service × 前端 mock 对齐 × 前端 TS 对齐 × 真接口可用

决策矩阵

后端 ServicemockTS该做什么
❌ 未实现仅做 mock 对齐 + TS 对齐;不切真接口;提单给后端
⚠️ 内存占位mock 对齐 + TS 对齐;临时可切真接口验证;上线前回退到 mock 等 DB 落地
✅ 完整全套对齐 + 单接口切换 + 点击验证
✅ 完整逐个接口切换,每切一个 toast 验证

反模式:看到后端 Controller 暴露就以为可用 — Controller 暴露 ≠ Service 实现。


四、Cursor 三种模式怎么选

任务模式原因
大改、有歧义、要列假设Plan强制先问 + 列计划,避免 AI 凭印象写代码
已有清晰目标、改 ≤ 5 文件Agent直接动手最快
只想问问题、了解代码、讨论思路Ask不会动文件,思考期保护

强信号触发 Plan

  • 涉及 ≥ 3 个文件
  • 出现"重构"、"迁移"、"对接"、"切换" 等动词
  • 你不确定 AI 会按什么思路做

五、反模式禁区(这 6 件事永远不要做)

  1. "mock 倒推 API 文档" — 顺序反了,必然丢业务规则
  2. "批量切模块" — 后端业务实现度不一,全切容易看空白
  3. "跨会话凭印象" — AI 不记得,每次必装备累计约束
  4. "AI 说完成 = 真完成" — 必须自己抽检 + tsc --noEmit + 单测
  5. "在业务代码里写 X-Confirm-Password / token refresh / Toast" — 走全局 axios interceptor 统一处理
  6. "AI 提了疑问你拍脑袋回答" — 重要决策必须先读对应文档(api-docs/ / 需求文档)再回答

六、文档体系导航(不知道改哪里时查这里)

想做的事改这里
改/查 API 契约api-docs/
改/查 通用规范(时间 / 分页 / 鉴权 / 枚举)api-docs/00-通用规范.md
改/查 接口归属规则(app / web-admin / common 怎么分)api-docs/建议.md
记录本次联调问题backend-devlog/11 §三
沉淀跨模块约束backend-devlog/11 §四
记录踩坑事故backend-devlog/11 §八
记录架构决策(ADR)docs/decisions/(后端项目)
改/查 需求文档docs/Web管理后台开发需求文档.md

七、跨项目同步规则

三个项目 AGENTS.md 必须逐字一致。修改流程:

1. 在任一项目修改 AGENTS.md
2. 同步到另外两个项目(复制粘贴 / diff 比对)
3. 在 backend-devlog/<n>-xxx.md 记录修改原因

项目专属规则不放本文件,放各自的 README.md / CONTRIBUTING.md / api-docs/README.md


八、健康度自检(每周做一次)

每周问自己 5 个问题,任何一个答"否"就修:

  • [ ] 上周写的代码,每个文件改动都对应了 devlog 里的一条记录?
  • [ ] 上周遇到的字段不一致 / 路径错,都进了 §三 联调问题清单
  • [ ] 上周发现的跨模块规律,都沉淀到 §四 累计约束?
  • [ ] api-docs/ 和实际代码字段是否同步(抽检 2 个模块)?
  • [ ] AI 抛出的疑问清单,自己有没有"懒得查文档随便答"?

九、一句话总结

慢即是快。 阶段二(契约)多花 30 分钟,阶段四(联调)省 3 小时。 AI 是放大器,不是兜底。 你的 review 质量 = 项目质量上限。


最后更新:2026-06-01 维护者:你(独立开发者) 关联文档

Powered by VitePress