AI Coding 中的概念 Agentic Coding(智能体编程)简介
<h2>〇、前言</h2><p>在上一篇文章中介绍的 Trae,就属于 Agentic Coding 的典型代表,<span style="font-size: 12px"><em>详情可点击:AI Coding 工具 Trae 的简单实践</em></span>。</p>
<p>Agentic Coding 可以帮助人类工程师做许多复杂的、重复性的事务,恰当的使用可以大大提升工作效率,那么本文就来简单介绍下这个概念。</p>
<h2>一、关于 Agentic Coding</h2>
<h3>1.1 简介</h3>
<p>Agentic Coding(智能体编程/代理式编程)是一种以 AI 智能体(AI Agent)为核心执行者的软件开发范式。AI 不再是被动的代码补全助手,而是能够自主规划、执行、调试、甚至并行处理多项开发任务的“AI 程序员”。</p>
<p>关键转变:从“人写代码,AI 辅助” → “人定目标,AI 执行”。</p>
<p>与传统 AI 的区别如下表:</p>
<table style="width: 100.588%">
<thead>
<tr>
<th style="width: 12.0027%">维度</th>
<th style="width: 30.2025%">GitHub Copilot (1.0)</th>
<th style="width: 18.6564%">Cursor (2.0)</th>
<th style="width: 39.1393%">Agentic Coding (3.0)</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 12.0027%">角色定位</td>
<td style="width: 30.2025%">代码补全助手</td>
<td style="width: 18.6564%">AI Native IDE</td>
<td style="width: 39.1393%">自主AI工程师</td>
</tr>
<tr>
<td style="width: 12.0027%">工作模式</td>
<td style="width: 30.2025%">被动响应</td>
<td style="width: 18.6564%">交互式协作</td>
<td style="width: 39.1393%">主动规划执行</td>
</tr>
<tr>
<td style="width: 12.0027%">任务范围</td>
<td style="width: 30.2025%">单行/函数级</td>
<td style="width: 18.6564%">文件/模块级</td>
<td style="width: 39.1393%">项目/系统级</td>
</tr>
<tr>
<td style="width: 12.0027%">自主性</td>
<td style="width: 30.2025%">无</td>
<td style="width: 18.6564%">低</td>
<td style="width: 39.1393%">高</td>
</tr>
<tr>
<td style="width: 12.0027%">典型工具</td>
<td style="width: 30.2025%">Copilot</td>
<td style="width: 18.6564%">Cursor</td>
<td style="width: 39.1393%">Claude Code, Devin, Manus</td>
</tr>
</tbody>
</table>
<ul>
<li><strong>第一阶段:GitHub Copilot (1.0) —— 代码补全助手(更聪明的自动完成)</strong></li>
</ul>
<p>这是 AI 编程的启蒙阶段。AI 的角色类似于一个坐在你旁边的初级程序员(Pair Programmer),但它主要处于被动状态。</p>
<p>它<span style="background-color: rgba(251, 238, 184, 1)">不理解项目的整体架构,<strong>只关注当前光标附近的上下文</strong></span>。只有当开发者开始打字或按下快捷键时,它才会生成建议。开发者必须逐行审查、接受或拒绝。</p>
<p>它擅长写样板代码(Boilerplate)、简单的算法逻辑、单元测试片段或正则表达式。但是它很难处理跨文件的复杂依赖。</p>
<p>它没有记忆(除了当前的上下文窗口),不会规划任务,也不会主动修复错误。所有的决策权和控制权完全在人类手中。</p>
<p>另外,它容易产生幻觉,难以理解大型项目的全局逻辑,无法独立完成任务闭环。</p>
<ul>
<li><strong>第二阶段:Cursor (2.0) —— AI Native IDE(深度集成的交互式协作伙伴)</strong></li>
</ul>
<p>这一阶段标志着 IDE(集成开发环境)的重构。<strong>AI 不再是插件,而是 IDE 的核心引擎。</strong></p>
<p>代表工具如 Cursor,它将大模型深度嵌入到编辑、搜索、调试和重构的全流程中。它的角色定位为 AI Native IDE,不仅仅是补全代码,而是理解整个项目库(Codebase)。</p>
<p><strong>工作模式为交互式协作。</strong>开发者可以用自然语言描述需求(Chat),AI 能理解多文件上下文,直接修改多个文件,甚至通过 Cmd+K 直接在编辑器中重写代码块。</p>
<p>它支持<strong>“对话式开发”</strong>。任务范围不再局限于代码块,而是文件/模块级。能够理解文件间的引用关系,可以进行跨文件的重构、添加新功能模块、修复涉及多个文件的 Bug。</p>
<p>另一个大的问题就是<strong>自主性低</strong>。虽然它能执行多步操作(如“在这个项目中添加用户登录功能”),但它仍然需要人类频繁地确认每一步更改(Apply/Discard),并且通常局限于人类划定的范围内。它缺乏长期的任务规划能力。</p>
<p>第二阶段的突破点就是,<span style="background-color: rgba(251, 238, 184, 1)"><strong>引入了 RAG(检索增强生成)技术,让 AI 能“读懂”整个项目仓库,解决了上下文缺失的问题</strong></span>。</p>
<ul>
<li><strong>第三阶段:Agentic Coding (3.0) —— 自主 AI 工程师(具备规划与执行能力的自主代理)</strong></li>
</ul>
<p>这是当前的最前沿(2025-2026年爆发期)。AI 从“副驾驶”变成了“主驾驶”或“独立工程师”。它不仅会写代码,还会思考、规划、使用工具、自我纠错。</p>
<p><strong>角色定位是:自主 AI 工程师。</strong>它是一个独立的 Agent(智能体),拥有明确的目标导向。</p>
<p><strong>工作模式:主动规划执行。</strong>感知:接收模糊的高层目标(如“创建一个待办事项网站并部署”)。规划:自主拆解任务(设计数据库 -> 搭建后端 -> 编写前端 -> 测试 -> 部署)。执行:自主调用终端命令、运行测试、读取文档、编写代码。反思:如果测试失败,它会自己分析错误日志,修改代码,再次运行,直到成功。</p>
<p><strong>任务范围上升到项目/系统级。</strong>能够从零开始构建完整的应用程序,或者对遗留系统进行大规模迁移和重构。</p>
<p><strong>自主性更高。</strong>人类只需设定目标和约束条件(Guardrails),中间过程由 AI 自主闭环。它可以长时间运行(Long-running tasks)。</p>
<p>核心价值就是,<span style="background-color: rgba(251, 238, 184, 1)"><strong>将人类从“编写者”解放为“审核者”和“架构师”。人类负责定义“做什么(What)”和“为什么(Why)”,AI 负责解决“怎么做(How)”</strong></span>。</p>
<h3>1.2 Agentic Coding 系统架构</h3>
<p>在 Agentic Coding 架构中,<span style="background-color: rgba(251, 238, 184, 1)">Profile 确立了 Agent 的“人设”与底线,Planning 是大脑负责思考路径,Memory 提供了持续的记忆与背景知识,Tools 是手脚负责执行操作,MCP 是神经系统确保了与外界的高效标准化连接,而 Skills 则是经过训练的专业肌肉记忆</span>。</p>
<p>这六大组件共同作用,使得 AI 从被动的代码建议者转变为主动的软件工程合作伙伴。下面看下他们的详细介绍。</p>
<p><img src="https://img2024.cnblogs.com/blog/1868241/202603/1868241-20260311103342598-1251990239.png" alt="image"></p>
<p>其中五大核心组件:</p>
<table style="width: 96.419%">
<thead>
<tr>
<th style="width: 17.8495%">组件</th>
<th style="width: 25.7348%">功能</th>
<th style="width: 56.4158%">说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 17.8495%">Profile</td>
<td style="width: 25.7348%">角色定义</td>
<td style="width: 56.4158%">系统提示词、性格特征、权限边界</td>
</tr>
<tr>
<td style="width: 17.8495%">Planning</td>
<td style="width: 25.7348%">任务规划</td>
<td style="width: 56.4158%">问题拆解、步骤排序、资源分配</td>
</tr>
<tr>
<td style="width: 17.8495%">Memory</td>
<td style="width: 25.7348%">上下文记忆</td>
<td style="width: 56.4158%">短期/长期记忆、代码库理解</td>
</tr>
<tr>
<td style="width: 17.8495%">Tools</td>
<td style="width: 25.7348%">工具调用</td>
<td style="width: 56.4158%">终端、文件操作、API调用、测试执行</td>
</tr>
<tr>
<td style="width: 17.8495%">MCP</td>
<td style="width: 25.7348%">模型上下文协议</td>
<td style="width: 56.4158%">连接外部数据源和工具的标准协议</td>
</tr>
</tbody>
</table>
<p><strong>Profile(角色定义)定义 Agent 的身份、行为准则和能力边界。</strong></p>
<p>这主要包括三个部分:</p>
<p>1)<strong>系统提示词(System Prompt):</strong>这是 Agent 的“灵魂”,规定了它作为<strong>什么角色</strong>(如“高级后端工程师”、“安全审计专家”)来行动。它设定了整体的语调、专业领域和首要目标。<br>2)<strong>性格特征:</strong>决定 Agent 的交互风格,是<strong>激进尝试还是保守稳健</strong>,是<strong>详细解释还是简洁输出</strong>。<br>3)<strong>权限边界:明确划定 Agent 能做什么、不能做什么。</strong>例如,是否允许删除文件、是否允许访问网络、是否允许执行未经确认的命令。这是保障系统安全的第一道防线。</p>
<p><strong>Planning(任务规划)将模糊的用户需求转化为可执行的具体步骤序列。</strong></p>
<p>主要包括:</p>
<p>1)<strong>问题拆解:</strong>面对复杂任务(如“构建一个带有用户认证的REST API”),Agent 需要将其<strong>分解为多个子任务</strong>(如:设计数据库 Schema、实现注册接口、实现登录接口、编写测试用例)。<br>2)<strong>步骤排序:</strong>确定子<strong>任务的依赖关系和执行顺序</strong>,形成逻辑严密的工作流。<br>3)<strong>资源分配:</strong>预判每个步骤所需的工具、上下文信息或外部知识,并提前准备。<strong>优秀的 Planning 能力能让小模型发挥出超越其本身的效果</strong>,是区分普通助手和高级 Agent 的关键。</p>
<p><strong>Memory(上下文记忆)可以维持对话连贯性,存储项目知识,支持长期学习。</strong></p>
<p>主要包括:</p>
<p>1)<strong>短期记忆:</strong>通常指<strong>当前的上下文窗口(Context Window)</strong>,包含当前的对话历史、正在编辑的代码片段和即时反馈。随着模型上下文窗口的扩大(如达到百万级 Token),短期记忆能容纳整个项目的代码库。<br>2)<strong>长期记忆:</strong>通过向量数据库或外部存储实现,用于<strong>存储项目架构决策、常用代码模式、历史错误及解决方案等</strong>。这使得 Agent 在<strong>跨越多次会话后仍能“记住”项目的特定细节</strong>。<br>3)<strong>代码库理解:</strong>不仅仅是存储代码,还包括对代码结构、依赖关系、函数调用链的语义理解,以便<strong>在修改一处代码时能预判对其他部分的影响</strong>。</p>
<p><strong>Tools(工具调用)能赋予 Agent 与外部环境交互、执行实际操作的能力。</strong></p>
<p>主要包括以下四种:</p>
<p>1)<strong>终端操作:执行 Shell 命令</strong>,如安装依赖(npm install)、运行服务、查看日志等。<br>2)<strong>文件操作:</strong>读取、写入、创建、删除、重命名文件及目录,直接修改项目代码。<br>3)<strong>API 调用:</strong>与外部服务交互,如查询文档、调用第三方 API、获取实时数据。<br>4)<strong>测试执行与修复:</strong>自动运行单元测试、集成测试,并根据测试结果进行调试和修复,形成“编写-测试-修复”的闭环。</p>
<p><strong>MCP(Model Context Protocol, 模型上下文协议)提供连接大模型与外部数据源、工具的标准通用接口。</strong></p>
<p>主要包括以下三个作用:</p>
<p>1)<strong>标准化连接:</strong>由 Anthropic 提出并开源,旨在解决不同模型与不同工具之间“N×M”的集成碎片化问题。它就像 AI 世界的“USB-C接口”。<br>2)<strong>解耦架构:</strong>开发者只需<strong>按照 MCP 标准实现一次服务器端接口</strong>,任何支持 MCP 的客户端(如 Claude Code、Cursor 等)即可无缝连接该工具或数据源,<strong>无需为每个模型单独适配</strong>。<br>3)<strong>生态扩展:</strong>极大地丰富了 Agent 的能力边界,使其<strong>能轻松访问本地数据库、文件系统、Git 仓库以及各类云服务</strong>,是实现 Agentic Coding 大规模落地的基础设施。</p>
<p><strong>Skills(技能库)可以封装特定领域的专业知识、最佳实践或复杂工作流,供 Agent 按需调用。</strong></p>
<p>主要包括以下四种:</p>
<p>1)<strong>知识封装:</strong>将复杂的操作流程(如“创建一个符合 AWS 最佳实践的 S3 桶”)或特定领域的知识(如“React 性能优化指南”)<strong>预定义为标准化的 Skill</strong>。<br>2)<strong>提高准确性:</strong>相比于让模型凭空生成,<strong>调用经过验证的 Skill 能显著提高代码质量和合规性,减少幻觉</strong>。<br>3)<strong>与工作流的区别:</strong>如果说 Workflow 是“食谱”(规定先做什么后做什么的编排逻辑),那么 Skill 就是具体的“烹饪技巧”(如切菜、煎炒的具体方法)。Skill 是构成 Workflow 的基本原子单元。<br>4)<strong>动态加载:</strong>Agent 可以根据任务需求,<strong>动态加载和组合不同的 Skills</strong>,像搭积木一样构建复杂的解决方案。</p>
<h3>1.3 Agentic Coding 标准工作流</h3>
<p>这个工作流简单可概括为六步。</p>
<table style="width: 100.748%">
<thead>
<tr>
<th style="width: 16.3848%">阶段</th>
<th style="width: 37.0774%">人类角色</th>
<th style="width: 34.1543%">AI角色</th>
<th style="width: 12.4617%">产出物</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 16.3848%">① 需求定义</td>
<td style="width: 37.0774%">定义目标、约束、验收标准</td>
<td style="width: 34.1543%">理解需求、澄清模糊点</td>
<td style="width: 12.4617%">需求规格</td>
</tr>
<tr>
<td style="width: 16.3848%">② 任务规划</td>
<td style="width: 37.0774%">审核计划、调整优先级</td>
<td style="width: 34.1543%">拆解任务、制定执行路径</td>
<td style="width: 12.4617%">执行计划</td>
</tr>
<tr>
<td style="width: 16.3848%">③ 代码生成</td>
<td style="width: 37.0774%">关键决策点确认</td>
<td style="width: 34.1543%">编写代码、文档、注释</td>
<td style="width: 12.4617%">源代码</td>
</tr>
<tr>
<td style="width: 16.3848%">④ 自动测试</td>
<td style="width: 37.0774%">定义测试场景</td>
<td style="width: 34.1543%">生成测试用例、执行测试</td>
<td style="width: 12.4617%">测试报告</td>
</tr>
<tr>
<td style="width: 16.3848%">⑤ 问题修复</td>
<td style="width: 37.0774%">确认修复方案</td>
<td style="width: 34.1543%">定位问题、修复代码</td>
<td style="width: 12.4617%">修复补丁</td>
</tr>
<tr>
<td style="width: 16.3848%">⑥ 迭代优化</td>
<td style="width: 37.0774%">提出优化方向</td>
<td style="width: 34.1543%">重构代码、性能优化</td>
<td style="width: 12.4617%">优化版本</td>
</tr>
</tbody>
</table>
<p>下面进行详解。</p>
<ul>
<li><strong>① 需求定义(Requirement Definition)这是整个流程的基石,产出:需求规格说明书(PRD)/用户故事地图</strong></li>
</ul>
<p>在 Agentic 模式下,人类不再是写文档的人,而是产品经理 + 架构师的混合体。</p>
<p><strong>人类角色主要就是定义目标、设定基本的约束、明确验收标准(DoD)等。</strong>例如现在有一个需求就是“构建一个高并发的秒杀系统”。仅从这句话来讲,需求大而空。因此,不仅要说“做什么”,还要说“为什么做”,例如“以支撑双 11 流量”等等一些细节。还需要明确技术栈(如 .Net、Go、Java 等开发语言),性能指标(QPS > 10k)、安全合规要求及预算限制。还有验收标准(DoD),提供具体的 User Stories 或 Gherkin 语法(Given-When-Then),让 AI 有明确的判断依据。</p>
<p><strong>AI 角色主要就是语义理解与澄清、可行性预判等等。</strong>首先 AI 不会盲目开始,它会像初级产品经理一样反问:“您提到的‘高并发’具体指多少?是否需要分布式锁?”另外,基于知识库,AI 会提示潜在的技术风险(如:“在该约束下,使用 MySQL 可能遇到瓶颈,建议引入 Redis”)。</p>
<p>特别注意,需求规格说明书必须是<strong>机器可读性强</strong>的,不仅仅是给人看的,因此描述需要直白一点,避免模棱两可之类的表达。</p>
<ul>
<li><strong> ② 任务规划(Task Planning)这是将宏观目标转化为微观可执行步骤的关键环节,体现了 Agent 的推理能力(Reasoning),产出:执行计划(Execution Plan)/任务树</strong></li>
</ul>
<p><strong>人类角色主要负责审核计划、调整优先级等等。</strong>首先是检查 AI 拆解的逻辑是否合理,是否存在依赖循环。决定是先做核心链路(MVP),还是先做基础设施。人类在此处掌握“方向盘”。</p>
<p><strong>AI 角色主要负责任务拆解(Decomposition)、制定执行路径、工具选择。</strong>自动将大需求拆解为原子任务(Atomic Tasks),例如:创建数据库 schema -> 编写 API 接口 -> 编写单元测试。还要生成 DAG(有向无环图)式的执行计划,确定哪些任务可以并行,哪些必须串行。还可以自动决定需要调用哪些工具(如:需要运行 Docker,需要访问 AWS API,需要读取特定文件等等)。</p>
<p>产出的执行计划通常是一个结构化的 JSON 或 Markdown 列表,包含任务 ID、描述、前置依赖、预估耗时等等。</p>
<ul>
<li><strong>③ 代码生成(Code Generation)全文件级的生成与修改。产出:源代码(Source Code)+配套文档</strong></li>
</ul>
<p><strong>人类角色负责关键决策点确认、上下文注入</strong>。当 AI 遇到多种设计模式选择或复杂的业务逻辑分支时,暂停并请求人类确认(Human-in-the-loop)。在复杂场景中,人类可能需要提供额外的领域知识或遗留代码片段作为上下文。</p>
<p><strong>AI 角色可以多文件协同、文档与注释、自我审查(Self-Correction)。</strong>可以同时创建/修改多个文件(Controller, Service, Model, Config),并保持引用一致性。同步生成 API 文档(Swagger/OpenAPI)、README 以及代码内的解释性注释。在输出前,AI 会先在内部“预演”代码逻辑,检查明显的语法错误或逻辑漏洞。</p>
<p>这一步产出的源代码通常是可编译、可运行的初始版本,而非碎片化片段。</p>
<ul>
<li><strong>④ 自动测试(Automated Testing)闭环验证代码。产出:测试报告(Test Report)+覆盖率分析</strong></li>
</ul>
<p><strong>人类角色定义测试场景、验收测试结果。</strong>指定边界条件、异常流程和性能压测标准(例如:“测试当库存为 0 时的行为”)。并查看测试报告,判断是否通过验收标准。</p>
<p><strong>AI 角色生成测试用例、执行测试环境、分析失败原因。</strong>AI 基于需求规格,自动生成单元测试(Unit Test)、集成测试(Integration Test)甚至端到端测试(E2E)。自动搭建临时环境(如启动 Docker 容器),运行测试脚本。如果测试失败,AI 会读取错误日志,分析是代码问题还是测试用例本身的问题。</p>
<p>自动测试就是将“写完代码再想怎么测”转变为“测试驱动开发(TDD)的自动化实现”。</p>
<ul>
<li><strong>⑤ 问题修复(Bug Fixing)当测试失败或运行时出错,自主进入调试闭环。产出:修复补丁(Fix Patch)+更新后的测试报告</strong></li>
</ul>
<p>人类角色确认修复方案、回归验证。对于复杂 Bug,AI 可能提出 A/B 两种修复思路,人类选择最佳路径。还需要确认修复后没有引入新的副作用。</p>
<p>AI 角色可以定位问题(Root Cause Analysis)、实施修复、补丁生成。堆栈跟踪、日志分析、断点调试(模拟),精准定位错误行。修改代码,并自动重新运行相关测试以确保修复有效。生成 Git Diff 格式的修复补丁,说明修改原因。</p>
<p>此阶段通常会与阶段④形成快速迭代循环,直到所有测试通过(Green Build)。</p>
<ul>
<li><strong>⑥ 迭代优化(Iterative Optimization)追求高质量、可维护的代码。产出:优化版本(Optimized Version)+性能基准对比报告</strong></li>
</ul>
<p>人类角色提出优化方向、代码评审(Code Review)。需要指出痛点,如“启动速度太慢”、“代码耦合度高”、“内存占用过大”。然后对 AI 重构后的代码进行最终的艺术性和架构性把关。</p>
<p>AI 角色可以对代码机型呢重构(Refactoring)、性能优化、安全加固等。例如提取公共函数、优化设计模式、消除魔术数字,提升可读性。分析算法复杂度,引入缓存机制,优化数据库查询语句。扫描常见漏洞(SQL 注入、XSS),并自动修复。</p>
<p>最终交付的是一个经过打磨的、生产就绪(Production-Ready)的软件模块</p>
<h3>1.4 主流工具与平台</h3>
<table style="width: 100.321%">
<thead>
<tr>
<th style="width: 15.7298%">工具</th>
<th style="width: 14.3542%">提供商</th>
<th style="width: 44.498%">核心特点</th>
<th style="width: 25.4189%">适用场景</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 15.7298%">Claude Code</td>
<td style="width: 14.3542%">Anthropic</td>
<td style="width: 44.498%">终端代理式、高度自主、MCP支持</td>
<td style="width: 25.4189%">复杂项目、全流程开发</td>
</tr>
<tr>
<td style="width: 15.7298%">Cursor</td>
<td style="width: 14.3542%">Cursor Inc</td>
<td style="width: 44.498%">AI Native IDE、多Agent并行(最多8个)</td>
<td style="width: 25.4189%">日常开发、团队协作</td>
</tr>
<tr>
<td style="width: 15.7298%">Trae 3.0</td>
<td style="width: 14.3542%">字节跳动</td>
<td style="width: 44.498%">国内优化、中文友好</td>
<td style="width: 25.4189%">国内开发者</td>
</tr>
<tr>
<td style="width: 15.7298%">Qoder</td>
<td style="width: 14.3542%">阿里</td>
<td style="width: 44.498%">上下文优化、企业级</td>
<td style="width: 25.4189%">大型企业项目</td>
</tr>
<tr>
<td style="width: 15.7298%">Devin</td>
<td style="width: 14.3542%">Cognition</td>
<td style="width: 44.498%">全自主AI工程师</td>
<td style="width: 25.4189%">端到端项目交付</td>
</tr>
<tr>
<td style="width: 15.7298%">Manus AI</td>
<td style="width: 14.3542%">Manus</td>
<td style="width: 44.498%">任务自主执行</td>
<td style="width: 25.4189%">自动化工作流</td>
</tr>
<tr>
<td style="width: 15.7298%">Replit Agent</td>
<td style="width: 14.3542%">Replit</td>
<td style="width: 44.498%">云端一体化</td>
<td style="width: 25.4189%">快速原型、教育</td>
</tr>
</tbody>
</table>
<p><span class="qk-md-text complete" data-spm-anchor-id="5176.28103460.0.i13.bc307551x9pyYb">根据开发者实践,</span><strong class="qk-md-strong complete"><span class="qk-md-text complete">Claude Code(任务规划执行) + Cursor(IDE集成) + Claude 4(模型能力)</span></strong><span class="qk-md-text complete"> 被称为"黄金三角"。</span></p>
<p>另外就是 Trae 现在是免费的,可以自主尝试下。</p>
<p>实际上,依照现在 AI 发展的趋势,说不定过几星期就会出现新的黄金搭档,还是需要持续关注发展动态。</p>
<h3>1.5 为什么需要 Multi-Agent(多智能体架构)?</h3>
<p>单个 AI 智能体在复杂任务面前存在能力边界,Multi-Agent 通过分工协作可以实现突破限制。</p>
<table style="width: 60.93%">
<thead>
<tr>
<th style="width: 43.9716%">单 Agent 局限</th>
<th style="width: 56.0284%">Multi-Agent 解决方案</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 43.9716%">任务拆解能力有限</td>
<td style="width: 56.0284%">专业化 Agent 分工</td>
</tr>
<tr>
<td style="width: 43.9716%">上下文管理困难</td>
<td style="width: 56.0284%">分布式记忆系统</td>
</tr>
<tr>
<td style="width: 43.9716%">异常处理单一</td>
<td style="width: 56.0284%">多 Agent 互相校验</td>
</tr>
<tr>
<td style="width: 43.9716%">长流程易失控</td>
<td style="width: 56.0284%">中央协调器管控</td>
</tr>
</tbody>
</table>
<p>Multi-Agent 协作模式可以分为三类。</p>
<p>流水线模式,需求 -> 设计 -> 编码 -> 测试 -> 部署。<br>联邦模式,各 Agent 独立处理子任务。<br>主从模式,主控 Agent 来分配协调。</p>
<p>常见的角色分工:</p>
<table style="width: 71.8332%">
<thead>
<tr>
<th style="width: 22.9458%">Agent 角色</th>
<th style="width: 39.4635%">职责</th>
<th style="width: 37.592%">技能集</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 22.9458%">架构师 Agent</td>
<td style="width: 39.4635%">系统设计、技术选型</td>
<td style="width: 37.592%">架构模式、最佳实践</td>
</tr>
<tr>
<td style="width: 22.9458%">编码 Agent</td>
<td style="width: 39.4635%">代码实现、重构</td>
<td style="width: 37.592%">多语言编程、代码规范</td>
</tr>
<tr>
<td style="width: 22.9458%">测试 Agent</td>
<td style="width: 39.4635%">测试用例、自动化测试</td>
<td style="width: 37.592%">单元测试、集成测试</td>
</tr>
<tr>
<td style="width: 22.9458%">审查 Agent</td>
<td style="width: 39.4635%">代码 Review、安全检查</td>
<td style="width: 37.592%">安全审计、性能分析</td>
</tr>
<tr>
<td style="width: 22.9458%">文档 Agent</td>
<td style="width: 39.4635%">文档生成、API 说明</td>
<td style="width: 37.592%">技术写作、Markdown</td>
</tr>
</tbody>
</table>
<h3>1.6 与传统开发模式相比</h3>
<table style="width: 87.2261%">
<thead>
<tr>
<th style="width: 21.2703%">维度</th>
<th style="width: 17.7253%">传统开发</th>
<th style="width: 27.6219%">Copilot辅助</th>
<th style="width: 33.3826%">Agentic Coding</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 21.2703%">核心执行者</td>
<td style="width: 17.7253%">人类工程师</td>
<td style="width: 27.6219%">人类+AI辅助</td>
<td style="width: 33.3826%">AI智能体+人类监督</td>
</tr>
<tr>
<td style="width: 21.2703%">代码产出比例</td>
<td style="width: 17.7253%">100%人工</td>
<td style="width: 27.6219%">70%人工+30%AI</td>
<td style="width: 33.3826%">30%人工+70%AI</td>
</tr>
<tr>
<td style="width: 21.2703%">开发效率</td>
<td style="width: 17.7253%">基准线</td>
<td style="width: 27.6219%">2-3x提升</td>
<td style="width: 33.3826%">5-10x提升</td>
</tr>
<tr>
<td style="width: 21.2703%">人类工作重心</td>
<td style="width: 17.7253%">编码实现</td>
<td style="width: 27.6219%">编码+审查</td>
<td style="width: 33.3826%">需求定义+架构+审查</td>
</tr>
<tr>
<td style="width: 21.2703%">学习曲线</td>
<td style="width: 17.7253%">陡峭</td>
<td style="width: 27.6219%">中等</td>
<td style="width: 33.3826%">前期陡峭,后期平缓</td>
</tr>
<tr>
<td style="width: 21.2703%">适用项目规模</td>
<td style="width: 17.7253%">全规模</td>
<td style="width: 27.6219%">中小项目</td>
<td style="width: 33.3826%">中大型项目</td>
</tr>
</tbody>
</table>
<h3>1.7 几个适用场景</h3>
<p><strong>1)快速原型开发(Rapid Prototyping)</strong></p>
<p>痛点:传统模式下,从想法到可运行的 MVP(最小可行性产品)需要数天甚至数周,涉及环境搭建、基础架构编写和重复样板代码。</p>
<p>Agent 模式下,用户只需输入自然语言需求(如“创建一个带有用户登录和数据库连接的待办事项 API”),Agent 能自主规划文件结构、安装依赖、编写核心逻辑并启动服务。</p>
<p>效率提升方面,将原本需要数天的工作压缩至24小时内,甚至几小时。它不仅能写代码,还能处理配置错误和环境问题,让开发者专注于业务逻辑验证。</p>
<p><strong>2)遗留系统重构(Legacy System Refactoring)</strong></p>
<p>痛点:老旧代码库(如十年前的 Java 或 PHP 系统)文档缺失、逻辑耦合严重,人工重构风险高、耗时极长,且容易引入新 Bug。</p>
<p>Agent 可以实现全量扫描代码库,自动分析依赖关系,识别“坏味道”(Code Smells),制定重构计划,并分批次执行重构(如提取方法、解耦模块),同时自动运行测试确保行为不变。</p>
<p>自动化处理了最枯燥的分析和初步重构工作,人类专家只需审查关键决策,大幅降低技术债务清理的成本。</p>
<p><strong>3)测试自动化(Test Automation)</strong></p>
<p>痛点:编写单元测试和集成测试往往被视为“脏活累活”,覆盖率低,且随着代码变更,维护测试用例成本高昂。</p>
<p>Agent 能理解业务逻辑,自动生成覆盖边界条件、异常路径的测试用例。当代码修改导致测试失败时,它能自动分析失败原因并修复测试代码或源代码,形成闭环。</p>
<p>这样瞬间生成数百个测试用例,并将测试维护从“手动更新”变为“自动适应”,显著提升软件质量防线。</p>
<p><strong>4)文档生成(Documentation Generation)</strong></p>
<p>痛点:代码更新快,文档更新慢,导致文档与实际代码脱节(“文档腐烂”),新人上手困难。</p>
<p>Agent 实时读取最新代码,<strong>自动生成准确的 API 文档、架构流程图说明、函数注释甚至用户手册</strong>。当代码变动时,文档<strong>自动同步更新</strong>。</p>
<p>这样彻底消除“写文档”的时间成本,确保文档永远与代码版本一致,极大降低沟通和维护成本。</p>
<p><strong>5)Bug 修复(Bug Fixing)</strong></p>
<p>痛点:定位 Bug 需要复现、查看日志、断点调试,修复后还需验证是否引发回归问题,流程繁琐。</p>
<p>通过输入错误日志或复现步骤,<strong>Agent 能自动定位代码行,分析根因,提出修复方案,编写修复代码,并运行相关测试验证修复效果</strong>。</p>
<p>这样就可以将“发现 - 定位 - 修复 - 验证”的循环从小时级缩短到分钟级,尤其擅长处理常见的空指针、资源泄漏等标准错误。</p>
<p><strong>6)多语言迁移(Multi-language Migration)</strong></p>
<p>痛点:将系统从一种语言迁移到另一种(如 Python 转 Go,Java 转 Rust)通常需要完全重写,风险极大且耗时数月。</p>
<p>Agent 理解源语言和目标语言的语义差异,<strong>不仅进行语法转换,还能适配目标语言的惯用写法(Idiomatic Code),并自动处理依赖库的映射</strong>。</p>
<p>通过完成大部分机械性的翻译工作,人类只需处理复杂的业务逻辑转换和性能优化,使大规模迁移成为可能。</p>
<h2>二、小小的总结</h2>
<p>为什么 Agentic Coding 能带来如此高的提升?</p>
<table style="width: 89.2036%">
<thead>
<tr>
<th style="width: 16.1871%" align="left">维度</th>
<th style="width: 40.1707%" align="left">传统 AI (Copilot)</th>
<th style="width: 43.6423%" align="left">Agentic Coding (Agent)</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 16.1871%" align="left">工作模式</td>
<td style="width: 40.1707%" align="left">被动响应:写一行,它最多补一小段</td>
<td style="width: 43.6423%" align="left">主动执行:你给目标,它给结果</td>
</tr>
<tr>
<td style="width: 16.1871%" align="left">上下文感知</td>
<td style="width: 40.1707%" align="left">仅限当前文件或少量上下文</td>
<td style="width: 43.6423%" align="left">理解整个项目仓库、构建系统和运行环境</td>
</tr>
<tr>
<td style="width: 16.1871%" align="left">纠错能力</td>
<td style="width: 40.1707%" align="left">提供建议,由人判断和执行</td>
<td style="width: 43.6423%" align="left">自我反思:运行代码 -> 报错 -> 自动修改 -> 再运行,直到成功</td>
</tr>
<tr>
<td style="width: 16.1871%" align="left">工具使用</td>
<td style="width: 40.1707%" align="left">仅生成文本</td>
<td style="width: 43.6423%" align="left">调用终端、编译器、测试框架、Git 等真实工具</td>
</tr>
</tbody>
</table>
<p><span style="background-color: rgba(251, 238, 184, 1)"><strong>Agentic Coding 将开发者从“打字员”和“调试工”的角色中解放出来,转变为“架构师”和“审核者”,从而在上述场景中实现了数量级的效率飞跃。</strong></span></p>
</div>
<div id="MySignature" role="contentinfo">
<img src="https://images.cnblogs.com/cnblogs_com/blogs/683398/galleries/2417207/o_221441c4.png">
<p>本文来自博客园,作者:橙子家,欢迎微信扫码关注博主【橙子家czzj】,有任何疑问欢迎沟通,共同成长!</p>
<div><p style="float: left;">转载本文请注明原文链接:https://www.cnblogs.com/hnzhengfy/p/19697217/AICoding_AgenticCoding</p></div><br><br>
来源:https://www.cnblogs.com/hnzhengfy/p/19697217/AICoding_AgenticCoding
頁:
[1]