YAOTU INSIGHTS

AI Native 团队实战手册:从 CLAUDE.md 到 Agent 编排的 SDLC 改造

AI Native 团队实战手册:从 CLAUDE.md 到 Agent 编排的 SDLC 改造
1. 从“人写代码”到“人管 Agent”AI Native 团队到底在做什么这两年“AI Native”这个词被喊得震天响但真正落到研发团队日常里它其实不是一句口号而是一整套工作方式的重新洗牌。我所在的团队从去年开始尝试把 SDLC软件开发生命周期往 AI Native 方向改造踩了无数坑也攒了一些能直接抄作业的经验。这篇手册就是把这套东西完整摊开讲清楚AI Native 团队怎么组织、CLAUDE.md 这类上下文文件怎么写、Plan Mode 和 Agent 怎么配合、并发和安全怎么兜底。适合正在做 AI 应用开发、或者想把现有研发流程往 Agent 方向迁移的团队参考不管你是刚接触 Agent 的新手还是已经在搭多 Agent 架构的老手都能从里面找到能直接用的东西。先说清楚一个核心认知AI Native 不是“用 AI 辅助写代码”那是 AI-Assisted本质还是人在主导。AI Native 是反过来——人负责定义目标和验收标准Agent 负责执行和迭代。这个转变听起来简单实际落地时对团队结构、工具链、协作方式的要求完全是另一套逻辑。我见过太多团队买了 Copilot 就觉得完成了 AI Native 转型结果半年过去效率没涨多少问题就出在没搞明白这个根本区别。传统 SDLC 里需求、设计、编码、测试、部署是一条线性流水线每个环节由人交接。AI Native 的 SDLC 更像一个“人设定约束、Agent 自主循环”的闭环系统。Agent 在里面不是工具而是有记忆、有技能、能调用外部资源的执行单元。你要做的不是教它每一步怎么做而是把上下文、边界、验收标准喂给它让它自己跑。这中间的差别决定了你整个团队的工作重心要从“写”转移到“定义和审查”。2. AI Native SDLC 的整体设计与思路拆解2.1 为什么传统 SDLC 在 Agent 时代会失灵传统 SDLC 的假设是执行者是人人的上下文加载慢、沟通成本高所以需要把流程切得很细每个环节产出明确文档靠文档传递信息。但 Agent 的上下文加载几乎是瞬时的你给它一个 CLAUDE.md 加几个 skill 文件它就能理解整个项目的约定。这时候如果还按老流程走反而是在给 Agent 制造信息断层——它拿到的永远是上一个环节的“摘要”而不是完整上下文。我踩过最典型的坑一开始我们让 Agent 只负责写单元测试需求文档、接口定义都靠人转述。结果 Agent 写出来的测试跟实际业务逻辑对不上因为它根本不知道业务背景。后来我们把整个仓库的上下文、历史决策记录、甚至 issue 讨论都整理成结构化文件喂给它测试质量立刻上了一个台阶。这说明 AI Native SDLC 的核心不是“把任务拆给 Agent”而是“把上下文完整地交给 Agent”。2.2 人机分工的重新划分谁定目标谁做执行AI Native 团队里人的角色收敛到三件事定义目标、设定约束、验收结果。Agent 承担的是方案探索、代码实现、测试验证、迭代修复。这个划分的关键在于人不再介入“怎么做”的细节只关心“做成什么样”。具体到岗位我们团队现在的配置是一个产品负责人定义需求和验收标准、一个架构师维护 CLAUDE.md 和 skill 库、若干 Agent 操作员负责跑 Plan Mode、审查 Agent 产出、处理异常。注意这里没有传统意义上的“初级开发”了因为写代码这件事基本被 Agent 接管人的价值体现在判断力和上下文维护上。2.3 方案选型为什么是 CLAUDE.md Plan Mode Agent 这套组合市面上 Agent 框架很多我们最终选了以 CLAUDE.md 为核心上下文文件、Plan Mode 做任务规划、Agent 做执行的组合原因有三。第一CLAUDE.md 是纯文本、可版本控制的团队每个人都能改、能 review不像某些框架把上下文藏在数据库里出了问题根本查不到。第二Plan Mode 强制 Agent 先出方案再执行这个“先想后做”的机制极大降低了跑偏概率。第三Agent 作为执行单元可以灵活替换今天用这个框架明天换那个只要 CLAUDE.md 和 skill 定义不变迁移成本很低。提示不要一上来就追求多 Agent 协作。我们最开始搞了五个 Agent 互相调用结果调试成本高到离谱。后来退回单 Agent 清晰 skill 划分效率反而更高。多 Agent 是规模化之后才需要考虑的事。3. 核心细节解析与实操要点3.1 CLAUDE.md 到底该写什么上下文文件的结构化写法CLAUDE.md 不是 README它的读者是 Agent所以写法要围绕“让 Agent 快速理解项目约定”来组织。我们团队的标准结构是这样的项目概述一段话说清楚这个项目干什么、技术栈与版本约束、目录结构说明、编码规范命名、注释、错误处理、关键业务规则、禁止事项、常用命令。每一块都要具体到 Agent 能直接执行的程度。举个例子编码规范里不要写“代码要清晰”要写“函数名用动词开头超过 30 行的函数必须拆分所有外部调用必须包 try-catch 并记录日志”。禁止事项里要明确写“不要修改 migrations 目录下的历史文件”“不要引入新的第三方依赖除非在 CLAUDE.md 里登记”。这些约束越具体Agent 跑偏的概率越低。我实测下来一份好的 CLAUDE.md 大概在 800 到 1500 字之间。太短了约束不够太长了 Agent 加载慢而且容易忽略重点。维护频率大概是每周 review 一次把本周 Agent 犯的错补进禁止事项里。3.2 Plan Mode 的正确打开方式先规划再执行Plan Mode 是这套流程里最容易被低估的环节。很多人觉得让 Agent 先出方案是浪费时间直接让它写代码更快。但我们的数据是用 Plan Mode 的任务返工率比不用低 60% 以上。原因很简单Agent 在规划阶段会把任务拆解、识别依赖、暴露不确定点这些如果等到写代码时才发现改起来成本高得多。实操上Plan Mode 的产出应该包含任务拆解清单、每步的输入输出、依赖关系、风险点、验收标准。人 review 这个 plan 的时候重点看两件事拆解是否合理、验收标准是否可量化。如果 plan 里出现“优化性能”这种模糊表述直接打回重写要求改成“接口 P99 延迟从 200ms 降到 100ms 以下”。3.3 Agent Skill 的设计原则可复用、可测试、可组合Agent Skill 是把常见任务封装成可复用单元的方式。我们团队的 skill 库现在有 40 多个覆盖了从“生成数据库 migration”到“把网页保存成 markdown”的各种场景。设计 skill 的核心原则是单一职责、输入输出明确、有测试用例。一个合格的 skill 定义包含名称、描述、输入参数、输出格式、依赖、示例。比如“把网页保存成 markdown”这个 skill输入是 URL输出是 markdown 文件路径依赖是某个解析库示例里要给出一个真实 URL 和预期输出。skill 写完必须跑测试我们要求每个 skill 至少有三个测试用例正常输入、边界输入、异常输入。注意skill 不要设计得太“聪明”。我见过有人把整个业务流程塞进一个 skill结果调试时根本不知道哪一步出错。skill 要像乐高积木小块、标准接口、能自由组合。3.4 Agent 记忆机制短期上下文与长期知识库的配合Agent 记忆分两层短期记忆是当前会话的上下文长期记忆是跨会话的知识库。短期记忆靠 CLAUDE.md 和会话历史维持长期记忆需要单独设计。我们用的是“结构化文件 向量检索”的方案把项目决策、历史 bug 修复、业务规则写成 markdown 文件用向量库索引Agent 需要时检索相关片段注入上下文。这里的关键是写入策略。不是所有东西都值得记我们只记三类影响后续决策的比如“为什么选了这个方案”、容易重复犯错的比如“这个 API 有坑”、业务规则类的比如“退款必须走审批流”。每次 Agent 完成任务后由人判断是否要沉淀记忆避免知识库被垃圾信息污染。4. 实操过程与核心环节实现4.1 从零搭建一个 AI Native 项目的完整流程假设你要新起一个项目完整流程是这样的。第一步初始化仓库创建 CLAUDE.md把项目概述、技术栈、目录结构、编码规范写进去。第二步搭建 skill 库目录先放三五个基础 skill比如代码生成、测试生成、文档生成。第三步配置 Plan Mode定义 plan 的输出模板和 review 标准。第四步跑第一个任务从最简单的开始比如“实现一个用户查询接口”全程用 Plan Mode Agent 执行。第五步review 产出把问题补进 CLAUDE.md 和 skill 库。这个流程我们跑了十几个项目平均一个新项目从初始化到能稳定产出可用代码大概需要两到三天的磨合期。磨合期的核心工作就是不断往 CLAUDE.md 里补约束往 skill 库里补能力。4.2 一个真实任务的完整执行记录拿我们最近做的一个“订单导出功能”举例。需求是支持按时间范围导出订单为 CSV超过 10 万条要分片。第一步人写需求描述和验收标准扔给 Plan Mode。Plan Mode 产出的方案是定义导出接口、实现查询逻辑、实现 CSV 生成、实现分片、写测试。人 review 后补充了一条约束“分片大小可配置默认 5 万条”。第二步Agent 按 plan 执行每完成一步自动跑测试。中间遇到一个问题CSV 生成时中文乱码。Agent 自己检索了长期记忆库发现之前有个类似问题的记录自动应用了解决方案。第三步人验收发现分片逻辑在边界情况下正好 10 万条有 off-by-one 错误打回让 Agent 修复。第四步修复后重新验收通过把“分片边界要写测试”这条补进 CLAUDE.md。整个任务从开始到完成大概 40 分钟其中人介入两次每次不超过 5 分钟。对比传统方式同样任务大概需要半天。4.3 并发场景下的 Agent 调度怎么扛住高并发Agent 扛并发是个真问题。我们早期试过让多个 Agent 同时跑任务结果上下文互相污染产出质量暴跌。后来总结出一套调度策略按资源隔离按依赖排序。具体做法是每个 Agent 实例有独立的上下文空间共享的只有只读的 CLAUDE.md 和 skill 库。任务之间如果有依赖必须串行无依赖的可以并行但并行数不超过 CPU 核数的一半。参数上我们实测下来单机跑 4 个 Agent 实例是比较稳的配置。再多的话上下文切换开销和内存占用会拖慢整体速度。如果任务量确实大建议横向扩展机器而不是在一台机器上堆 Agent 数量。并发数平均任务耗时错误率建议1基准基准调试阶段用2-4降低 30%基本持平推荐生产配置5-8降低 40%上升 15%需谨慎监控8 以上反而变慢上升 30%不建议4.4 Agent 安全边界权限、审计与回滚Agent 能执行代码、能调外部接口安全边界必须提前划好。我们的做法是三层防护第一层Agent 运行在沙箱环境里文件系统、网络访问都有白名单。第二层所有 Agent 操作记审计日志包括读了哪些文件、调了哪些接口、改了什么代码。第三层关键操作比如数据库 migration、生产部署必须人工确认Agent 只能生成待执行的脚本。回滚机制也很重要。我们要求 Agent 每次修改代码前先打 git tag出问题一键回滚。数据库操作必须走 migration 工具禁止直接改表结构。这些约束都写在 CLAUDE.md 的禁止事项里Agent 执行时会自动遵守。5. 常见问题与排查技巧实录5.1 Agent 跑偏了怎么办上下文污染的排查思路Agent 跑偏最常见的原因是上下文污染。表现是Agent 突然开始用错误的命名规范、引用了不存在的依赖、或者逻辑跟需求对不上。排查思路是先看 CLAUDE.md 是不是被误改了再看会话历史里是不是混入了无关信息最后看 skill 库有没有冲突的定义。我们遇到过一次典型情况Agent 突然开始用 Python 2 的语法写代码。查了半天发现是某个 skill 的示例代码里用了旧语法Agent 把它当成了项目规范。解决办法是在 CLAUDE.md 里明确写“本项目使用 Python 3.11禁止使用任何 Python 2 语法”并在 skill 示例里全部更新。5.2 Agent 执行报错“execution terminated due to error”的常见原因这个报错信息很泛实际原因可能有很多。我们整理了一张速查表报错现象可能原因解决方法执行到一半终止上下文超长精简 CLAUDE.md拆分任务反复重试同一操作工具调用失败检查外部接口可用性输出格式错误skill 定义不清晰补充输入输出示例权限拒绝沙箱白名单缺失补充白名单配置内存溢出任务粒度过大拆分为更小的 skill排查时建议先看审计日志定位到具体哪一步出错再针对性解决。不要盲目重跑重跑大概率还是同样的错。5.3 多 Agent 协作的坑什么时候该拆什么时候该合多 Agent 协作听起来很美实际坑很多。我们试过的失败案例让一个 Agent 写代码、一个 Agent 写测试、一个 Agent 做 review结果三个 Agent 对需求的理解不一致产出互相矛盾。后来改成单 Agent 串行执行质量反而稳定。我的经验是只有当任务可以完全独立、且通信成本低于协作收益时才拆多 Agent。比如批量处理 100 个独立的数据清洗任务拆多 Agent 是合理的。但如果是同一个功能的不同环节老老实实单 Agent 串行别折腾。5.4 实操避坑清单我们踩过的 8 个坑坑一CLAUDE.md 写得太抽象Agent 理解不了。解决所有约束具体到可执行。坑二skill 粒度太粗调试困难。解决拆到单一职责。坑三不做 Plan Mode 直接执行返工率高。解决强制先规划。坑四长期记忆库不清理检索出无关信息。解决定期 review 记忆库。坑五并发数设太高上下文互相污染。解决按资源隔离控制并发数。坑六安全边界没划清Agent 误操作生产环境。解决沙箱 审计 人工确认。坑七skill 没有测试用例上线后才发现问题。解决每个 skill 至少三个测试。坑八人 review 太粗放过模糊验收标准。解决验收标准必须可量化。6. Agent 学习路线与团队能力建设6.1 个人从零到能上手 Agent 开发的学习路径如果你刚开始接触 Agent 开发我建议的路线是第一周搞懂 Agent 是什么、跟传统程序的区别动手跑通一个最简单的 Agent demo。第二周学习 skill 的定义和编写给自己常用的任务写三五个 skill。第三周学习 Plan Mode 和上下文管理理解 CLAUDE.md 的作用。第四周做一个完整的小项目从需求到验收全程用 Agent 跑一遍。这个路线我们团队新人实测下来四周能到独立操作的水平。关键是要动手光看文档没用。Agent 开发很多坑是文档里不会写的必须自己踩一遍。6.2 团队协作规范怎么让多个人维护同一套 Agent 配置多人维护同一套 Agent 配置最大的问题是冲突。我们的做法是CLAUDE.md 和 skill 库都走 git 管理修改必须提 PRreview 通过才能合并。每周固定时间做一次配置 review把本周遇到的问题补进去。另外每个人本地可以有自己的实验性配置但合并到主分支前必须经过测试。还有一个经验指定一个“配置负责人”专门维护 CLAUDE.md 和 skill 库的质量。这个人不一定是技术最强的但必须是最细心的因为配置里一个小错误可能导致所有 Agent 跑偏。6.3 面试 Agent 开发岗位时我会问什么如果你在准备 Agent 开发相关的面试我作为面试官会关注这几点第一你是否理解 Agent 和传统程序的区别能不能说清楚上下文管理的重要性。第二你有没有实际写过 skill能不能讲清楚设计原则。第三遇到 Agent 跑偏你怎么排查有没有系统性的思路。第四你对并发和安全边界有没有概念。这些问题的答案不在教科书里都在实操经验里。所以我的建议是面试前一定要自己动手做过完整项目哪怕很小也比只看理论强。7. 工具链选型与生态观察7.1 Agent 框架怎么选从需求反推工具选 Agent 框架不要看哪个火要看你的需求。如果你只是做单 Agent 任务自动化轻量级框架就够了别上重型编排系统。如果你要做多 Agent 协作那要考虑框架的通信机制、状态管理、错误恢复能力。如果你要跟现有系统集成那要看框架的扩展性和 API 设计。我们团队评估过市面上主流的几个框架最终选了一个扩展性好、社区活跃、文档清晰的。选型时重点看三点能不能自定义 skill、上下文管理是否灵活、出错时调试信息是否充分。这三点决定了你后续的开发效率。7.2 从单 Agent 到多 Agent 的演进时机判断什么时候该从单 Agent 升级到多 Agent我的判断标准是当单 Agent 的任务队列排期超过一天且任务之间确实独立时才考虑多 Agent。如果任务之间有依赖多 Agent 只会增加协调成本。另外多 Agent 对团队的技术能力要求更高如果团队还没把单 Agent 跑顺别急着上多 Agent。7.3 Agent 生态的下一步我观察到的三个趋势第一个趋势是 skill 的标准化。现在每个团队都在自己写 skill未来可能会出现跨团队复用的 skill 市场。第二个趋势是上下文管理的工具化现在靠手写 CLAUDE.md未来可能会有专门的上下文管理工具。第三个趋势是 Agent 的可观测性现在调试 Agent 主要靠日志未来会有更专业的监控和追踪工具。这些趋势对我们做技术选型的启示是尽量选那些接口开放、数据可导出的工具避免被锁定。上下文文件和 skill 定义尽量用纯文本方便迁移。8. 一些实操后的个人体会这套 AI Native 的玩法我们跑了大半年最大的体会是Agent 的上限取决于你给它的上下文质量而不是 Agent 本身有多强。同样的 Agent喂给它一份结构清晰的 CLAUDE.md 和一堆模糊的需求描述产出质量天差地别。所以团队在 AI Native 转型上投入的精力应该大部分花在上下文建设和 skill 沉淀上而不是追新框架。另一个体会是人的角色转变比想象中难。很多开发同学习惯了写代码突然让他只做 review 和定义会有失落感。这个转变需要时间也需要团队在考核方式上做调整不能再用代码行数衡量产出要看 Agent 任务的完成质量和效率。最后分享一个小技巧每次 Agent 任务完成后花两分钟想想“这次哪里可以更好”把答案补进 CLAUDE.md 或 skill 库。坚持一个月你会发现 Agent 的产出质量有肉眼可见的提升。这个习惯比任何工具升级都管用。