手动启动、自动触发、最后放权:Agent 进入开发流程的正确路径

1 评论 635 浏览 0 收藏 22 分钟

Anthropic发布《AI-Native SDLC playbook》,指出代码不再是瓶颈,但流程仍待改造。本文深入解析其如何通过可追踪的阶段成果、分层控制机制,让编码Agent真正融入开发流程,防止错误加速扩散。

2026年8月21日,Anthropic发布了《The AI-Native SDLC playbook》。文章开头用了一个很直接的判断:代码已经不再是唯一的瓶颈。

Anthropic看到的变化是,越来越多团队开始用Agent写代码,原本需要数天甚至更久的构建工作可以被明显压缩,但代码周围的流程没有以同样的速度改变。需求仍要等待整理,评审仍要排队,发布仍要经过原来的审批。局部速度提高了,软件却不一定能更快地到达用户手里。

这也是这份手册真正值得讨论的地方。它从Claude Code的使用继续向外推进,开始处理整套软件开发流程:当Agent承担越来越多工作,前后环节要怎样改造,才能接住它的产出,又不让它在错误的方向上一路加速?

换句话说,一个会写代码的AI,距离真正进入开发流程,还差什么?

一、代码能生成出来,为什么还不算进入流程?

传统的软件开发生命周期通常包括计划、设计、开发、测试、部署和维护。不同组织的叫法可能不同,但基本逻辑相似:一个想法先被整理成需求,再被转成设计和实现方案,随后进入开发、测试、上线和运行维护。

这套流程的一个重要特征,是每个阶段通常由不同的人负责。提出想法的人解释问题,产品或业务人员整理需求,技术人员设计方案,工程师实现,测试人员验证,发布和运维团队负责把它送进生产环境。工作主要靠文档、工单、会议和审批在人之间传递。

这样的设计并非没有道理。过去,写代码往往是整个流程中耗时最长、成本最高的一段。一个需求可能要开发数周甚至数月,因此团队愿意在前面花时间对齐,也愿意在后面逐行评审。只要代码产出的速度有限,围绕它建立的流程就还能维持平衡。

编码Agent改变的,首先是这个平衡。

在Anthropic给出的示意图中,使用Agent之前,各阶段都以人的速度运行,其中Build,也就是代码构建,占据了最长的一段时间。使用Agent之后,Build被大幅压缩,但计划、需求、评审和发布仍保持原来的长度。原本被代码开发掩盖的等待时间,因此变得更加显眼。

图1:Agent缩短了代码构建时间,但规划、评审和发布仍可能限制整体交付速度。

不过,“代码不再是瓶颈”并不是对所有团队都成立的普遍结论。Anthropic讨论的前提,是一个组织已经较多地使用编码Agent,代码产出确实开始加速。对于需求始终说不清、代码库缺少维护、测试体系薄弱,或者业务本身高度复杂的团队,写对代码依然可能很难。这份官方指南提出的是一套适用于特定变化的流程方案,而不是一份证明所有企业都已经获得效率提升的独立研究。

真正值得继续追问的是:即使一个Agent可以快速写出代码,它是否已经进入了开发流程?

答案并不取决于它能写多少,而取决于这段代码与前后环节是什么关系。如果Agent只是在一次对话里生成结果,任务结束后仍然需要人重新解释背景、复制内容、判断风险,再手动交给下一个人,那么它加速的只是一个局部动作。它更像一位随叫随到的助手,还不是流程中的稳定参与者。

真正进入流程,意味着它能接住上一环节已经确认的信息,也能为下一环节留下可以直接使用的结果。Anthropic的核心改造,正是从这里开始。

二、Anthropic真正改造的,是每一步之间的交接

传统流程的问题,不只是阶段多,而是信息每经过一次交接,都可能被重新解释一次。

一个人提出问题,另一个人把它整理成需求,第三个人再把需求理解成技术设计。等工程师真正开始实现时,自己看到的内容可能已经距离最初的问题很远。即使所有人都认真负责,信息也会在不断转述中损失。Agent如果只是被塞进其中某一步,只会更快地处理已经传到它手里的内容,并不能自动解决这种损失。

Anthropic给出的办法,是让每个阶段结束时,都留下一个经过确认、可以被下一阶段读取的结果。官方把它称为artifact。为了避免把这个词讲得过于复杂,可以把它理解为“可追踪的阶段成果”。

整条链路大致如下:

这些文件的价值不在Markdown或固定的文件名,而在于它们同时解决了三个问题。

第一,信息被保留下来。下一阶段不用依赖上一场会议,也不用猜测某段聊天里哪句话才是最终决定。每次修改都有版本记录,团队能够回头看到谁提出了什么、Agent生成了什么、谁又确认了什么。

第二,人和Agent读取的是同一份内容。intent.md既能让人检查问题是否表达准确,也能直接成为Agent生成规格的输入。plan.md既能让工程师提前发现风险,也能让Agent按照确认后的方案实施。信息不必为了人和机器各写一套。

第三,结果开始具备触发下一步的能力。官方设想中,接受后的intent.md可以触发需求与设计,批准后的spec.md可以触发计划阶段,合并后的PR可以触发部署管线,生产环境中的异常也可以重新写成新的意图,回到流程起点。

图2:Anthropic将传统的线性开发流程重新设计为由Claude贯穿、由人负责发起、指导和治理的循环。

到这里,“Agent进入流程”才有了更具体的含义:它的工作不再停留在一次会话里,而是会留下可以被继承的状态;它也不需要每完成一步都等待人重新布置任务,因为系统已经知道,什么结果被接受以后,下一步应该从哪里开始。

这和简单的“让AI多做几个阶段”并不一样。前者是在增加功能,后者是在设计交接。没有稳定交接,Agent做得越多,人越要在它身后搬运、解释和收拾结果;有了稳定交接,局部能力才有可能转化为整条流程的能力。

但自动交接也带来一个更危险的问题。如果前面的意图理解错了,错误同样可以从规格、计划一路传到代码和部署。流程跑得越顺,错误也可能跑得越快。因此,能自动继续还不够,它还必须知道什么时候不能继续。

三、能自动继续之后,怎样防止Agent一路跑偏?

Anthropic这份手册里更值得关注的,是它把不同类型的风险交给了不同机制处理。

很多Agent产品习惯把规则写进提示词:不要泄露隐私、不要修改某些文件、完成后记得测试、上线前等待确认。问题在于,提示词是一种提醒,不是一道真正的门。模型可能遵循,也可能因为上下文变化、规则冲突或任务复杂而遗漏。对于“最好做到”的要求,提醒或许够用;对于“绝不能违反”的要求,只靠提醒显然不够。

Anthropic因此把控制拆成了几个层次。

1.先让Agent知道团队是怎样工作的

CLAUDE.md用来保存一个项目中长期有效的上下文,例如构建和测试命令、代码约定、架构信息,以及Claude反复容易犯的错误。它更像一个新成员进入项目时需要先读的工作说明。

Skills则承载需要在不同任务中重复应用的组织知识,例如安全规范、接口标准、品牌要求或合规政策。它们可以被统一维护和版本管理,当政策变化时,团队更新Skill,Agent在后续任务中使用新版本。

但Anthropic对Skills的定位很克制:它是一种建议性控制。它能提高Agent遵循规范的概率,却不能保证每次都执行。必须始终成立的规则,还需要更确定的机制。

2.必须执行的规则,不能只靠Agent自觉

Hooks可以理解为Agent行动前后自动执行的规则。它在系统层面决定某个动作是允许、需要询问,还是直接阻止。

例如,Hook可以禁止修改受保护的路径,阻止凭证进入代码改动,在编辑文件后自动运行格式检查;也可以在Agent尝试部署到生产环境时暂停操作,直到指定负责人完成授权。

这一区分对Agent产品很重要:Skills告诉Agent“应该怎样做”,Hooks决定“哪些事情做不了”。一个依赖模型理解,一个依赖确定性规则。把两者混在一起,很容易把本该由系统兜住的风险交给模型自律。

3. Agent做完以后,要拿出验证结果

Anthropic把反馈回路放在测试阶段的核心位置。Agent不能只报告“已经完成”,还要能够运行测试、执行构建,或者对界面截图进行比较,再根据结果修正自己的工作。

Agent还需要调用外部工具给出验证证据。测试是否通过、构建是否成功、接口是否返回预期状态,都比一句“看起来没问题”更可靠。对于修复任务,官方甚至建议先固定能够复现问题的失败测试,再限制Agent修改这项测试,避免它通过降低标准来证明自己完成了任务。

持续评测处理的是另一类变化。代码需要回归测试,驱动Agent的配置同样需要。模型被替换、提示词被改写、CLAUDE.md、Skills或Hooks发生变化后,团队需要知道Agent是否还能以原来的标准完成真实任务。官方建议把近期工作中的真实任务及其可接受结果整理成评测集,让配置变化也经过类似代码合并前的检查。

4.需要判断和承担责任的地方,仍然交给人

Anthropic没有把AI-Native描述成一条完全无人运行的流水线。官方反复强调,凡是需要判断的决策,人仍然负责。

在代码评审中,Agent可以按照统一规则检查逻辑、安全和合规问题,也可以修复评审意见,但它不能批准自己写的代码。分支保护仍要求代码负责人确认。在部署环节,Agent可以完成生产门之前的准备工作,真正进入生产环境仍需要指定人员授权。开发、测试和生产环境也可以设置不同的权限,风险越高,自主程度越低。

这比笼统地说一句“保留Human in the Loop”更具体。系统先完成可以标准化的检查,把证据和异常整理出来;人不必跟在每一个机械动作后面,而是把有限注意力放在意图是否正确、风险是否可接受,以及责任是否能够承担。

当然,这仍然只是一套设计方向,不代表只要接入Claude,人工评审就一定会变快。如果规则写得过多、风险分级不清,或者每个普通动作都要等待批准,人依旧会重新成为队列的末端。Anthropic自己也提醒,要求人工确认的Hook不应随意放进高频构建过程,否则人会再次进入所有并行任务的关键路径。

因此,好的Agent流程不是审批越多越安全,而是把动作分清楚:哪些可以直接允许,哪些必须自动阻止,哪些需要带着证据询问人。自主与控制不是一道二选一的开关,而是一组需要被设计的边界。

四、从开发流程回看Agent产品,它真正缺的往往不是更聪明的模型

把软件开发的术语暂时拿掉,Anthropic这套方法暴露了许多Agent产品的共同问题:模型已经可以完成任务,产品却还没有为它准备一条可靠的工作路径。

它能够回答问题,却不知道这次回答怎样进入业务系统;它能够生成方案,却没有明确的验收标准;它可以调用工具,却不知道哪些操作必须停下来;它完成了当前步骤,但结果仍然躺在聊天记录里,下一步只能等人重新发起。

因此,判断一个Agent是否真正进入工作流,可以连续追问五个问题。

第一,Agent从哪里获得任务和约束?

输入不能只有一句模糊指令。系统至少要让Agent知道要解决什么问题、影响谁、成功是什么样、什么不能做,以及还有哪些问题没有答案。Anthropic用intent.md保存这些内容,其他产品未必需要同样的文件,但需要承担相同作用的任务入口。

第二,它每一步会留下什么?

Agent的输出要成为下一步可以使用的结果,而不只是给人阅读的一段回复。这个结果可能是一份规格、一个结构化记录、一项系统状态或一段经过验证的改动。形式可以不同,关键是下一环节能够读取,而不是再让人从长对话中提炼一次。

第三,系统凭什么判断它做对了?

“Agent已完成”不是验收标准。产品需要尽可能把正确性落到可观察结果:测试是否通过、字段是否完整、规则是否满足、数据是否回到正常范围。无法完全自动判断的部分,也要提前说明由谁检查、依据什么判断。

第四,什么条件会触发下一步?

如果每一次继续都要人重新输入一句“请执行下一步”,Agent仍然只是被动工具。真正的流程需要明确触发条件:结果通过检查后自动继续,达到风险阈值后申请授权,出现异常后进入另一条路径。

第五,什么时候必须交还给人?

权限边界不能只写“重要操作需确认”,而要具体到哪些数据、环境、金额、风险等级或不可逆动作必须由谁批准。交接给人时,还应该同时提供发生了什么、已经检查了什么、有哪些选择,而不是只弹出一个让人无从判断的确认框。

这五个问题并不是Anthropic官方提出的框架,而是从其阶段成果、触发机制、评测和人工审批中提炼出的产品检查方法。它适用于软件开发,也可以用于检查客服、运营、研究等其他Agent工作流,但不同业务的风险和验收方式并不相同,不能直接复制软件开发的控制规则。

这里还要防止另一种极端:把旧流程中的每一份文档都改成Markdown,再给每个节点加一个Agent,就宣布自己完成了AI-Native改造。

一份阶段成果有没有价值,不取决于它是否由AI生成,而取决于下一阶段是否真的使用它。如果spec.md写完以后,工程师仍要重新开会理解需求;如果评测生成了一堆分数,却没有决定是否可以继续;如果所有文件只是为了留档,那么团队只是制造了更多文书,并没有改善交接。

Anthropic也没有要求所有组织抛弃原来的Jira、Figma或需求管理系统。官方建议为每类信息确定唯一可信来源,让新产生的文件与原有系统建立连接。这一点很重要:AI-Native不是为了追求一套统一的文件形式,而是为了让信息能够被人和Agent共同读取、持续追踪,并真正推动下一步行动。

对于准备尝试这类流程的团队,更稳妥的顺序不是一次性搭建完整闭环,而是先选择一个重复度较高、风险较低、验收标准清楚的环节。最初仍由人手动启动Agent,观察它需要哪些信息、会在哪些地方出错;等输入、输出和检查方式稳定后,再让通过验收的结果自动触发下一步;最后才逐渐扩大权限和自主范围。

这也符合Anthropic给出的实施思路:先手动运行每一步,最终再让被接受的阶段成果触发后续流程。Agent的自主程度应该是验证出来的,而不是在产品设计时一次性许诺出来的。

结语

回到最开始的问题:AI会写代码以后,距离真正进入开发流程还差什么?

差的不是再增加几个功能,也不是让它出现在更多阶段,而是给它建立一条能够被持续接住的工作路径。上一步的结果要成为下一步的输入,系统要知道什么时候继续、什么时候阻止,结果要有可以检查的证据,风险和责任也要能够准确地交还给人。

Anthropic的AI-Native SDLC仍然是一套面向特定组织条件的实践指南,不是所有团队都已经验证过的标准答案。但它提供了一个很有价值的判断角度:评价Agent产品,不能只看模型单次能完成多复杂的任务,还要看它的工作怎样进入系统、怎样留下记录、怎样被验证,以及出错时由谁接手。

一段代码被生成,只代表模型完成了一次输出。只有当整个流程能够接住它、检查它、推进它,也能在必要时停下它,Agent才真正成为工作的一部分。

循环可以持续运行,但判断和责任仍然留在人手中。这或许才是AI-Native中比“自动化更多”更重要的变化。

本文由 @小霖AI 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自作者提供

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
海报
评论
评论请登录
  1. “上一步的结果要成为下一步的输入”这个判断很关键。很多团队用Agent为什么觉得只是辅助?就是因为产出还躺在聊天记录里,没人设计交接。Anthropic把artifact当作人和机器共用的中间语言,至少让信息损失有了可追踪的载体。只要下一阶段真的去读它,而不是继续开会重新对齐,这套做法就比单纯堆模型能力靠谱。

    来自广东 回复