AI编程热到今天,已经不是一个“要不要用”的问题。过去我们讨论的是谁能把代码补全做得更好,现在讨论的是谁有能力把“从需求到上线的整条链路”重新做一遍。腾讯、阿里、字节这三家,几乎在同一时间把战场切成了两块:一块叫 Coding,一块叫 Work。我的判断很明确:Coding 是在补旧账,Work 是在赌未来。
Coding 的旧账,是软件工程几十年积累下来的历史问题——上下文割裂、文档滞后、规范难落地、测试不充分、知识沉淀在个人脑子里。AI 编程的本质,不是让开发者少敲几行键盘,而是用大模型把这套破碎的工序重新梳理一遍。Work 的赌局,则是代码生成之外的更大市场:需求、设计、排期、协办、发布、运营,所有知识工作者的流程一旦被 Agent 重新编排,生产力平台的定义就会被改写。
这篇文章会先讲清楚这场竞争的底层逻辑,再拆解 vibe coding、spec coding、coding plan、多 Agent 协同这些绕不开的新词,然后落到一个可以复制的实操闭环上。无论你是个人开发者、团队 Leader,还是正在选型 AI 工具的技术负责人,读完都能知道:大厂在争什么、自己该学什么、哪些坑不能踩。
1. 两场仗的本质:Coding 补旧账,Work 赌未来
把大厂的 AI 布局放在一起看,会发现一个规律:所有产品都在抢两个入口。
第一个入口是开发者手里的 IDE。代码补全、对话生成、自动修 bug、自动写测试,这些都是“开发工具”层面的竞争。这个战场的核心逻辑是补旧账。传统软件工程里,一个需求从口头描述到上线,要经过需求文档、设计文档、排期、编码、自测、Code Review、CI/CD 发布,每个环节之间的信息都是衰减的。需求文档写一半、接口设计靠口口相传、代码注释早就过期、测试用例跟不上业务变化,这些都是几十年积累下来的“技术债”。AI Coding 工具之所以被追捧,是因为它第一次让机器能同时理解需求上下文、代码仓库和工程规范,把以前靠人力传递的信息自动化了。
第二个入口是企业的工作流。代码生成只是前菜,真正的终局是让 AI 进入需求分析、任务拆解、进度跟进、发布运维、甚至客服运营的完整链条。这才是 Work 的战场。在这个战场上,Coding 工具只是产品矩阵里的一个模块,最终要卖给企业的是一套“AI 全员协作平台”。企业为这类产品付费的意愿更高,因为它的价值不是“帮程序员省半小时”,而是“让整个项目的交付周期缩短”或“让一个 5 人团队做出 10 人团队的产出”。
两个战场的差异可以用一张表概括:
| 维度 | Coding 旧账 | Work 未来 |
|---|---|---|
| 解决对象 | 开发者个体的效率 | 团队与组织的效率 |
| 核心产物 | 代码、测试、文档 | 工作流、Agent 编排、协作机制 |
| 付费方 | 开发者工具预算 | 企业数字化预算 |
| 护城河 | 模型能力 + 上下文工程 | 生态 + 数据沉淀 + 流程壁垒 |
| 竞争节奏 | 拼功能迭代速度 | 拼行业理解与落地深度 |
这也是为什么我会说“Coding 是必答题,Work 是选答题”。不做 Coding,等于放弃开发者生态入口;但只做 Coding,永远只是开发者的效率工具,天花板有限。能同时打两场仗的玩家,才有资格进入决赛圈。
2. AI Coding 的四个阶段:从补全到 Spec Coding
要理解大厂为什么都在提 spec coding、coding plan、多 Agent 协同,需要先看清 AI Coding 这条技术路线的演进。从工具成熟度来看,大致可以分成四个阶段。
2.1 阶段一:代码补全,Copilot 范式
这个阶段的产品核心是“根据当前文件上下文,预测下一段代码”。它的工作方式是:把光标前的内容、文件名、相邻文件的信息拼接成 Prompt,交给大模型,模型返回若干候选补全。对开发者的价值是减少样板代码的输入量,对具备明确结构的代码(如 getter/setter、模板代码、常规 CRUD)效果明显,但遇到复杂业务逻辑时,补全的准确率会大幅下降。
这一阶段的局限在于:模型只见树木,不见森林。它不知道这个项目整体的架构约束,不知道这个接口对接的是哪个服务,也很难理解跨文件的调用链。
2.2 阶段二:对话式生成
到了对话式阶段,产品形态变成了“你可以选中一段代码,然后问模型:这段代码在做什么 / 帮我重构 / 帮我补测试”。模型不再只依赖当前文件,可以把选中内容、相关文件、项目说明拼接起来理解。对开发者来说,这相当于在 IDE 里内置了一个“随叫随到的结对程序员”。
但对话式生成仍有明显缺陷。模型能理解上下文,却无法主动执行。它给出修改建议,需要开发者手动应用;它能生成测试,但不会自己跑一遍;它能改代码,但改完无法验证是否破坏了其他功能。
2.3 阶段三:Agent 自动执行
Agent 是 AI Coding 真正的分水岭。它不再只是一个生成器,而是一个能自主完成多步骤任务的执行器。一个典型的 Coding Agent 会这样做:
- 读取任务描述。
- 扫描仓库结构,找到相关文件。
- 分析现有代码,确定修改点。
- 生成代码修改。
- 运行测试或静态检查。
- 根据结果反复修复,直到通过。
这个阶段最关键的改变是“闭环”。模型从“给出答案”变成了“执行任务”,开发者从写代码变成了审代码。效率提升是真实的,但风险也随之出现:Agent 可能修改了你没有预期的文件,可能引入了不安全的依赖,可能在测试不充分的情况下给你一个“看起来能跑”的结果。
2.4 阶段四:Spec Coding 与多 Agent 协同
前三个阶段本质上都是在优化“写代码”这件事。而 2025 年以后被频繁提及的 spec coding、coding plan、多 Agent 协同,是把注意力从“写”拉回到“定义”。
Spec Coding 的核心主张是:先写清楚规格,再让 AI 写代码。这里的规格(Spec)不是传统的几百页需求文档,而是把用户故事的验收标准、接口定义、边界条件、性能要求,用结构化的方式描述出来。AI 拿到 Spec 以后,生成代码的输入从“一句模糊的话”变成“一份可验证的约束”。
Coding Plan 则是 Agent 执行前的任务分解计划。一个 Agent 不会只做一件事,它需要把大目标拆成可执行的小任务,明确每个任务的依赖关系、输入输出和验收标准。多 Agent 协同则更进一步:规划 Agent 负责拆任务,编码 Agent 负责实现,评审 Agent 负责审查,测试 Agent 负责验证,发布 Agent 负责上线。
这个阶段的意义在于:AI 编程从“碰运气”变成了“走流程”。它不只是工程效率的提升,更是对软件工程方法论的重新落地。
2.5 四个阶段的关键差异
| 阶段 | 核心能力 | 开发者角色 | 主要风险 |
|---|---|---|---|
| 代码补全 | 预测下一段代码 | 输入者 | 误接受错误补全 |
| 对话式生成 | 理解上下文并生成修改建议 | 评审者 | 建议不完整,盲改产生新问题 |
| Agent 自动执行 | 自主完成多步骤任务 | 验收者 | 改动范围失控,测试覆盖不足 |
| Spec Coding + 多 Agent | 从规格到部署的流程自动化 | 流程定义者 | 规格描述不准确,流程设计有缺陷 |
从这四个阶段可以得出一个判断:行业的重点正在从“模型能力”转向“工程流程”。这也是后面理解大厂布局的关键。
3. 三个绕不开的新词:Vibe Coding、Spec Coding、Coding Plan
如果你最近关注 AI 编程相关的讨论,大概率会看到这三个词。它们经常被混着用,但实际指向的是完全不同的东西。
3.1 Vibe Coding:低门槛写代码,但工程风险不会消失
Vibe Coding 描述的是一种交互状态:开发者用自然语言描述想法,AI 负责写代码,开发者只做运行和微调。它的核心是“跟着感觉走”,不太关注代码的内部实现细节,更关注“结果是否符合预期”。
这种模式确实把编程门槛降到了极低。不会写 SQL 的人可以说一句“帮我按时间汇总订单金额”,不懂正则表达式的人可以说“把这段文本里的手机号提取出来”。但这种低门槛是有代价的。Vibe Coding 生成的代码,往往缺少边界处理、缺少异常处理、缺少安全校验、缺少性能考虑。做原型、做一次性脚本、做小工具,完全没有问题;直接上生产,风险极大。
3.2 Spec Coding:先把“要什么”写清楚
Spec Coding 是对 Vibe Coding 的纠偏。它强调在写代码之前,先定义清楚“要什么”。Spec 是需求规格说明(Specification)的缩写,核心内容包括:功能目标、用户场景、输入输出、验收标准、约束条件、异常场景。
下面是一个最小可用的 spec.md 模板:
# 功能规格:批量订单状态更新 ## 背景 运营后台需要支持对一批订单批量更新状态。 ## 功能目标 - 支持按订单号列表批量更新状态。 - 支持对更新结果做汇总反馈。 ## 输入 - 订单号列表:List<String>,最多 500 个。 - 目标状态:String,枚举:PENDING / PAID / SHIPPED / COMPLETED / CANCELLED。 ## 输出 - 成功数量 - 失败数量 - 失败明细(订单号 + 失败原因) ## 验收标准 - 输入空列表时,返回提示,不执行更新。 - 订单状态不合法时,该订单标记为失败,不影响其他订单更新。 - 批量更新在事务中执行,任一失败则全部回滚。这样的 Spec 写完后,无论是人来做还是 Agent 来做,产出的质量都会明显更稳定。因为大模型生成的随机性,需要用明确约束来收敛。Spec 写得越模糊,生成的代码就越容易偏离预期。
3.3 Coding Plan:从计划到可执行任务
Coding Plan 是 Agent 在动手写代码之前生成的任务分解计划。一个完整的 Coding Plan 通常包含:目标描述、任务列表、每个任务的依赖关系、涉及的文件、验收标准、可能的失败场景。
下面是一个常见的 Coding Plan 输出形状(实际以模型返回和工具差异为准):
{ "goal": "为订单模块补充批量状态更新接口", "tasks": [ { "id": 1, "description": "定义订单状态枚举", "file": "src/main/java/com/example/order/OrderStatus.java", "depends_on": [], "acceptance": "包含 PENDING/PAID/SHIPPED/COMPLETED/CANCELLED 五个枚举值" }, { "id": 2, "description": "新增批量更新DTO", "file": "src/main/java/com/example/order/dto/BatchUpdateRequest.java", "depends_on": [1], "acceptance": "包含订单号列表和目标状态字段,附带合法校验注解" }, { "id": 3, "description": "实现批量更新服务方法", "file": "src/main/java/com/example/order/service/OrderService.java", "depends_on": [1, 2], "acceptance": "事务内更新,部分失败记录明细并抛出异常" }, { "id": 4, "description": "补充单元测试", "file": "src/test/java/com/example/order/service/OrderServiceTest.java", "depends_on": [3], "acceptance": "覆盖空列表、非法状态、部分失败三个场景" } ] }Coding Plan 的价值在于:它把“写代码”从一次大模型的随机采样,变成了一个有步骤、可检查、可回滚的流程。有了 Plan,开发者可以在 Agent 动手之前先看一遍方案合不合理;Agent 在执行时,也能按任务逐个推进,任务失败时不用从头再来。
3.4 三个概念的关系
简单总结:
- Vibe Coding 是一种交互方式,强调自然语言驱动。
- Spec Coding 是输入约束,强调先把需求定义清楚。
- Coding Plan 是执行骨架,强调把任务分解成可执行、可验证的单元。
三者的关系可以理解为:Vibe Coding 告诉你 AI 可以帮你写代码,Spec Coding 告诉你要先写清楚需求,Coding Plan 告诉你 Agent 会按照什么步骤执行。真正要落地到生产,三者的顺序应该是:先写 Spec,再生成 Plan,最后让 Agent 执行并验收。
4. 腾讯、阿里、字节的同一盘棋:Coding 切入,Work 终局
三家公司对 AI 编程的布局,从公开信息来看,各有侧重点,但底层逻辑是一致的:先用 Coding 工具抓住开发者,再向 Work 场景延伸。
4.1 阿里:通义灵码、百炼与工程规范
阿里的产品线相对完整。面向开发者的通义灵码,覆盖 IDE 插件、命令行、代码仓库等多个入口;面向企业的阿里云百炼,提供模型服务、Agent 编排、知识库等能力;底层有 Qwen 系列模型支撑。
阿里这套布局的关键点在于“工程规范”。阿里在 Java 开发领域积累了大量实践经验,Alibaba Java Coding Guidelines(阿里巴巴 Java 开发手册)早已成为行业参考。现在这类规范正在与 AI 结合,变成 AI 审查代码时的规则基线。这种做法本质上是“补旧账”:把团队几十年来总结出的规范性经验,注入到 AI 审查和生成过程中,让 AI 不只写代码,还按规范写代码。
阿里云百炼上的 coding plan 相关能力,也是把“任务规划”和“模型调用”结合,开发者在云平台上可以直接把需求转换成 Agent 可执行的计划。这条路径更偏向企业级落地,适合已经有规范化开发流程的团队。
4.2 腾讯:云、协同与 AI 代码助手
腾讯在 AI Coding 上的布局以腾讯云 AI 代码助手为代表,底层有混元大模型支撑。腾讯的核心优势不在 IDE 生态,而在于“云 + 协同”的综合能力。企业微信、腾讯文档、腾讯会议这些办公协作产品,构成了天然的 Work 场景入口。
腾讯的打法更像是:Coding 工具是云平台的入口,开发者用 AI 代码助手提升效率,后续的代码托管、CI/CD、云上部署,都自然落到腾讯云生态里。与此同时,协同办公工具不断引入 AI 能力,目标是把 Work 场景做深。对已经在用腾讯云和企微的企业来说,这种方案的迁移成本更低。
4.3 字节:MarsCode、豆包与产品体验
字节的豆包大模型和 MarsCode 编程助手,走的是另一条路线。字节更擅长产品体验和用户增长,MarsCode 的定位也偏向“让更多开发者轻松用上 AI 编程”。对个人开发者来说,MarsCode 的上手门槛低,交互流畅,贴近 vibe coding 的文化氛围。
字节的打法可以概括为“体验派”:先把产品做到足够顺滑,让零基础用户也能写出自己的小程序,再逐步向企业场景渗透。这种路径更依赖 C 端口碑传播,在个人开发者中的扩张速度往往更快。
4.4 三家打法对比
| 维度 | 阿里 | 腾讯 | 字节 |
|---|---|---|---|
| 代表 Coding 产品 | 通义灵码 | 腾讯云 AI 代码助手 | MarsCode |
| 底层模型 | Qwen 系列 | 混元大模型 | 豆包大模型 |
| 平台能力 | 阿里云百炼 | 腾讯云 + 企业微信 | 豆包 + 云服务平台 |
| 核心优势 | 工程规范 + 云生态 | 协同办公 + 企业关系链 | 产品体验 + 用户增长 |
| 更接近的叙事 | 补旧账:规范与流程 | 通向 Work:协同入口 | vibe coding:低门槛体验 |
从这些对比可以看出,阿里最接近“补旧账”的定义,字节最接近“vibe coding”的体验派,腾讯更像是把 Coding 当作通向 Work 的入口。三家在 Coding 战场的竞争,最终都会导向 Work 战场。
5. 补 Coding 旧账:把开发规范变成 AI 审查能力
理解了战略布局,再看一个具体的技术落地场景:规范 AI 化。
5.1 规范落地的老大难问题
几乎每个有一定规模的团队都有一份《开发规范》,但真正严格执行的很少。原因不是大家不愿意遵守,而是规范检查依赖人工 Code Review,而 Code Review 的成本很高,评审者很难记得住上百条规则。魔法值、过深的 if-else 嵌套、日志不规范、异常被吞掉,这些在老代码里随处可见。
AI Coding 解决这个问题的思路是:把静态扫描规则和 LLM 能力结合起来。静态扫描负责找出确定的违规点,LLM 负责理解上下文并给出修复建议。这样规范就不再只是一份束之高阁的文档,而是变成代码提交时的自动审查能力。
5.2 一个可落地的规范 AI 化示例
先说一个最常见的违规场景:魔法值。下面这段 Java 代码把业务状态直接写死在逻辑里:
// 文件路径:src/main/java/com/example/order/service/OrderServiceImpl.java public void updateOrderStatus(String orderId, int status) { if (status == 1) { // 已支付 } else if (status == 2) { // 已发货 } // 业务处理 }按照阿里巴巴 Java 开发手册的要求,魔法值(即未经定义的常量)不允许直接散落在代码中,应该定义为枚举或常量。AI 给出的修复建议会是这样的:
// 文件路径:src/main/java/com/example/order/OrderStatus.java public enum OrderStatus { PENDING(0, "待支付"), PAID(1, "已支付"), SHIPPED(2, "已发货"), COMPLETED(3, "已完成"), CANCELLED(4, "已取消"); private final int code; private final String desc; OrderStatus(int code, String desc) { this.code = code; this.desc = desc; } public int getCode() { return code; } public String getDesc() { return desc; } public static OrderStatus fromCode(int code) { for (OrderStatus status : OrderStatus.values()) { if (status.code == code) { return status; } } throw new IllegalArgumentException("非法的订单状态: " + code); } }AI 不只告诉你“这里违反规范”,还会结合上下文给出完整的修复方案。这种能力的价值在于:它把团队里资深工程师头脑中的“隐性知识”变成了可自动化执行的检查项。
5.3 从静态扫描到 AI 修复建议
在实际项目中,规范 AI 化的落地路径可以拆成四步:
- 建设规范基线:把团队认可的代码规范整理成规则集,优先选择 Alibaba Java Coding Guidelines 这类成熟的公开规范。
- 自动扫描:在 CI 流程中接入静态扫描工具,对每次提交自动执行规则检查,输出违规清仓。
- AI 修复建议:将违规代码和上下文一起提交给大模型,生成修复建议或直接生成补丁。
- 人工确认与沉淀:开发者确认修复方案后合入代码,遇到新的规范诉求,再补充到规则集里。
这条路径解决的是“补旧账”中最核心的问题——知识知道但没执行。规范不会自动执行,但规范加上 AI 审查,就能变成一道自动化的质量门禁。
6. 实操:接入 Qwen Coding Plan API,跑通一个最小闭环
前面讲了很多概念,这一节直接上实操。以一个常见场景为例:通过阿里云百炼的兼容 OpenAI 接口调用 Qwen 模型,让它根据一个任务描述输出 Coding Plan,并用它生成代码。整个过程以公开接口为准,具体模型名称和接口细节如果与官方文档有差异,请以最新文档为准。
6.1 前置条件与 API Key 准备
在开始之前,需要准备:
- 一个阿里云账号。
- 开通阿里云百炼模型服务。
- 在百炼控制台创建 API Key(即 DashScope API Key)。
获取到 API Key 以后,不建议直接写在代码里,而是通过环境变量注入:
export DASHSCOPE_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxx"这里要特别提醒一句:API Key 是敏感凭证,不要提交到 Git 仓库,不要写在前端代码里,不要在公共聊天中分享。建议在云平台侧配置最小权限策略,仅授予当前项目需要的权限,并定期轮换。
6.2 最小调用示例
百炼提供了兼容 OpenAI 的接口,base_url 为https://dashscope.aliyuncs.com/compatible-mode/v1,可以直接用 OpenAI SDK 调用。先安装依赖:
pip install openai然后写一个最小示例:
# 文件路径:call_qwen_coding_plan.py import os from openai import OpenAI client = OpenAI( api_key=os.getenv("DASHSCOPE_API_KEY"), base_url="https://dashscope.aliyuncs.com/compatible-mode/v1" ) resp = client.chat.completions.create( model="qwen-plus", messages=[ { "role": "system", "content": "你是一名资深的 Java 后端工程师。请根据用户需求,输出一份可执行的 Coding Plan,包含任务列表、关联文件、依赖关系和验收标准。" }, { "role": "user", "content": "为订单模块补充一个批量状态更新接口,支持按订单号列表更新状态,要求事务内执行,部分失败时返回失败明细。" } ], temperature=0.3 ) print(resp.choices[0].message.content)运行方式:
python call_qwen_coding_plan.py这段代码的关键逻辑是:通过 system 消息约束模型的输出风格,通过 user 消息传入任务描述,温度设置为 0.3 以减少随机性。Coding Plan 这种偏规划类的任务,不适合使用过高的 temperature。
6.3 让模型输出 Coding Plan
上面代码的运行结果,会是一段结构化程度较高的计划文本,大致包含以下内容要素:
- 目标描述。
- 任务列表,每个任务包含描述、涉及文件、依赖关系和验收标准。
- 可能的风险点。
如果希望输出更稳定,可以直接在 Prompt 中要求模型返回 JSON 格式,并把 JSON Schema 一并给出。这里给一个简化的提示词示例:
请把 Coding Plan 输出为 JSON,字段要求: - goal: string - tasks: array - tasks[].id: number - tasks[].description: string - tasks[].file: string - tasks[].depends_on: array - tasks[].acceptance: string这样后续可以直接用json.loads()解析结果,接入自动化流水线。不过要注意,大模型输出的 JSON 偶尔会有格式瑕疵,解析前最好做一次容错处理,例如提取第一个{到最后一个}之间的内容再解析。
6.4 结果验证与排查
运行成功后,你会看到类似任务列表的输出。判断是否成功的标准是:
- 任务分解是否覆盖了需求的所有要点。
- 每个任务的依赖关系是否合理。
- 验收标准是否可验证,而不是空泛的“实现功能”。
如果调用失败,先按这个顺序排查:
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| 401 认证失败 | API Key 错误或未设置环境变量 | 检查echo $DASHSCOPE_API_KEY是否为空 | 重新导出环境变量,或确认 Key 是否有权限 |
| 404 模型不存在 | 模型名称写错或未开通对应模型 | 登录百炼控制台查看已开通模型列表 | 修改 model 参数为实际可用模型 |
| 请求超时 | 网络环境问题或模型负载较高 | 查看完整报错日志 | 重试,或改用 Step by Step 参数控制输出长度 |
| 返回内容格式不符合预期 | Prompt 约束不够明确 | 检查模型输出内容 | 在 Prompt 中给出明确格式要求和示例 |
跑通这个闭环以后,可以继续接入 Coding Agent,把一个任务描述转换成代码修改、测试命令和提交信息。
7. 赌 Work 未来:从生成代码到编排工作流
如果说 Coding 战场还能用“提效”来解释,那 Work 战场的想象力就远不止提效。
7.1 Work 是什么,为什么比 Coding 更重要
Work 的范畴覆盖知识工作者的完整工作流:需求澄清、方案设计、任务拆解、开发实现、测试验证、发布上线、监控运维、用户反馈、迭代优化。在传统模式下,这些环节由不同角色在多个系统中完成,信息割裂,效率损耗巨大。
AI 进入 Work 场景后,变化会发生在流程层。一个需求从产品经理嘴里说出来,AI 可以自动拆成用户故事、接口设计、测试用例、发布计划;开发完成后,AI 自动生成发布说明、更新知识库、同步给客服团队。这不是把某一个环节做得更快,而是把整个链条重新编排了一遍。
大厂押注 Work 的原因很直接:企业为流程效率付费的意愿,远高于个人为工具付费的意愿。一套让 5 人团队产出 10 人效果的协作平台,价值是 Coding 工具的数十倍。
7.2 多 Agent 协同的工程画面
多 Agent 协同是 Work 场景的关键技术形态。在一个完整流程中,不同 Agent 扮演不同角色,各司其职。用文本表示它们的协作关系大致如下:
Spec 输入 ↓ 规划 Agent → 输出 Coding Plan ↓ 编码 Agent → 生成代码 / 修改代码 ↓ 评审 Agent → 代码规范 / 逻辑审查 ↓ 测试 Agent → 执行测试 / 补充测试用例 ↓ 发布 Agent → 构建 / 灰度 / 发布 ↓ 运维 Agent → 监控 / 日志分析 / 告警处理每个 Agent 的职责可以简单归纳如下:
| Agent 角色 | 核心职责 | 输入 | 输出 |
|---|---|---|---|
| 规划 Agent | 需求拆解、任务编排 | 需求描述 / Spec | Coding Plan |
| 编码 Agent | 代码实现、重构 | Coding Plan / 相关文件 | 代码变更 |
| 评审 Agent | 规范检查、逻辑评审 | 代码变更 / 规范规则 | 审查意见 |
| 测试 Agent | 单元测试、集成测试 | 代码变更 / 测试用例 | 测试报告 |
| 发布 Agent | 构建、部署、回滚 | 通过验证的代码 | 发布结果 |
| 运维 Agent | 监控告警、日志分析 | 系统运行数据 | 告警与处理建议 |
多 Agent 协同的核心难点不在单个 Agent 的模型能力,而在于它们之间的“工作交接协议”。规划 Agent 输出的计划到不到位,决定编码 Agent 的执行质量;评审 Agent 的审查意见能不能被编码 Agent 正确理解,决定返工率。这也是为什么 coding plan 会成为热词——它是 Agent 之间协作的第一份标准化交付物。
7.3 大厂为什么押注 Work
从商业角度看,Work 战场的壁垒更高。工具可以被模仿,功能可以被复制,但沉淀下来的工作流数据、组织协作关系、行业最佳实践,很难在短时间内被对手超越。一旦企业把核心研发流程跑在某个平台上,替换成本会非常高。
对普通开发者来说,Work 战场的兴起不是坏事。被替代的不是“写代码”这个动作,而是那些无需思考的重复流程。真正有价值的,是定义流程、设计 Agent 协作、把控质量边界的能力。
8. 开发者怎么接住这两场仗
战略是大厂的,但落地终究要回到每一个开发者身上。面对 Coding 和 Work 两个战场,我的建议分成三个层次。
8.1 个人开发者:先跑通最小闭环
不要一开始就追求搭建一套完整的多 Agent 平台。先用一个具体任务跑通闭环。我的建议是找一个真实的小需求,比如“给现有服务增加一个导出 Excel 的接口”,然后按下面的路径走一遍:
- 写出一个简单的 Spec 文档。
- 让 AI 根据 Spec 输出 Coding Plan。
- 让 AI 根据 Plan 生成代码。
- 人工审查代码,重点看异常处理和安全性。
- 写测试,运行测试,验证通过后合并。
这个流程跑通后,你才能理解 Coding Plan 为什么重要:没有 Plan 时,AI 生成代码是一次性的碰运气;有 Plan 时,AI 的每一步都可以检查和干预。下次遇到更大的需求,就能用同样的方法逐步扩展。
8.2 团队:规范先行,审查不省
团队使用 AI Coding 工具时,最常见的错误是把 AI 生成代码直接合入主干。建议先做三件事:
- 把团队代码规范整理成规则集,接入 CI,强制 AI 生成的代码也过规范检查。
- 保留 Code Review 环节,AI 生成的代码进入主干前,必须经过人工评审。
- 建立灰度发布和回滚机制,AI 改动影响面较大的模块时,先小流量验证。
规范先行不是保守,而是为了让 AI 的产出可预期。没有规范约束的 AI 生成,等于一个不了解团队历史的开发者在自由发挥,效率可能很高,但风险不可控。
8.3 技术负责人:用流程指标代替代码量
对技术负责人来说,考察 AI Coding 落地效果,不要只看“AI 生成了多少行代码”,而要关注三个指标:
- 一次通过率:AI 生成的代码,经过评审后一次合入的比例。
- 缺陷逃逸率:AI 生成代码上线后出现线上缺陷的比例。
- 需求交付周期:从需求提出到上线的平均时长。
这三个指标比代码量更能说明问题。AI 提效的真实价值,不是让团队产出更多代码,而是让既定需求更快交付、更少返工。如果 AI 引入后缺陷率上升,就要重新审视 Agent 的执行边界和测试覆盖,而不是盲目扩大 AI 的使用范围。
另外,尽量避免同时引入多套割裂的 AI 工具。有的团队 IDE 里装一个助手,云平台上又用一套 Agent,代码仓库里还有一套机器人,工具之间互相不共享上下文,结果反而增加了切换成本。选型时优先考虑能够打通代码、CI、测试、部署全链路的能力。
9. 常见误区与风险边界
AI 编程发展太快,很多认知还没来得及更新。这里整理几个最常见的问题。
9.1 三个常见误区
| 误区 | 实际情况 |
|---|---|
| AI Coding 等于全自动编程 | 实际更适合描述为一个“结对程序员”,需要人工定义需求、审查结果、控制流程 |
| 多 Agent 等于无人值守 | 实际更接近“多个自动化流程的编排”,仍需要人类定义目标、验证产物、处理异常 |
| Prompt 越长越好 | 实际更关键的是信息结构,把需求、约束、验收标准格式化,效果会显著好于堆砌描述 |
大模型的表现存在随机性,AI Coding 工具不是确定性系统。这一点需要从认知上建立起来,后续的所有工程手段,其实都是在降低这种随机性带来的风险。
9.2 必须守住的四条安全边界
无论用哪个厂牌的 AI Coding 工具,开发过程中都要守住几条底线:
- 凭证安全:API Key、云密钥、数据库密码不得写入代码和 Prompt。
- 数据安全:涉及用户隐私、商业机密的代码片段,不要直接粘贴给公共模型服务,优先使用私有化部署或脱敏后提交。
- 代码审查:AI 生成的代码必须经过人工审查和测试验证,特别是涉及权限、支付、数据库变更、用户数据的模块。
- 变更安全:数据库结构的变更、生产环境的变更,必须先备份、先评估影响面、具备回滚方案,并在测试环境验证通过后再执行。
还要特别提醒供应链风险。AI 生成代码时可能推荐一个不存在的包名,或者推荐一个看似正常但来源可疑的依赖。在引入任何第三方依赖前,都要确认其来源、许可证和流行度,避免依赖投毒类攻击。
10. 结语:Coding 是门票,Work 是终点
回到这场竞争本身。Coding 战场是大厂进入 AI 生产力时代的门票,谁拿下开发者入口,谁就有资格讲下一阶段的故事。但门票只是门票,真正的终局在 Work 战场。谁能把 AI 从代码工具变成流程编排器,谁就能重新定义下一个十年的生产力平台。
对普通开发者来说,这两场仗并不遥远。你不用等到大厂把 Work 平台做完才开始学习。现在就可以从一个小需求开始:写一份 Spec,让模型输出 Coding Plan,再让 Agent 按计划实现,自己负责审查和验收。把这条最小闭环跑顺,你就已经踩在了下一个开发范式的门槛上。
工具会不断迭代,Qwen、豆包、混元会不断更新,IDE 插件会越来越多,但有一条底层能力不会变:把需求定义清楚,把流程设计合理,把质量边界守住。这才是 AI 时代开发者真正要补的旧账,也是赌 Work 未来最扎实的底气。