Agentic Coding 是最近被反复提到的热词。如果说过去一年大家还在讨论“AI 能不能补全代码”,那现在的讨论已经变成“AI 能不能自己拆解任务、读取仓库、调用工具、修改多个文件、跑测试、修 bug”。吴恩达在这个话题上给了一个相反方向的提醒:Agentic Coding 越普及,基本功的价值反而越高。不掌握基本功,Agent 只会更快地放大你的错误。
这篇文章不打算复述某一次演讲,而是把“Agentic Coding 时代基本功更重要”这句话拆成可执行的东西:基本功到底指什么?一个典型的 Agentic Coding 工作流长什么样?需要什么样的硬件和软件环境?如何验证 Agent 写的代码真的可用?以及最常见的失败点在哪里。如果你正在用或打算用编程 Agent 辅助日常开发,这篇文章可以直接对照着用。
文章的组织方式是先给结论,再给环境,再给工作流,再给测试和排错。涉及的具体工具名只做通用能力描述,不绑定某个商业产品的专属配置,换任何一款主流 Coding Agent 都能迁移。下面开始。
1. Agentic Coding 核心观点速览
| 维度 | 关键结论 |
|---|---|
| 核心观点 | 工具自动化程度越高,开发者对问题理解、代码阅读、调试、测试和质量判断的基本功越重要 |
| Agentic Coding 定义 | AI 不只会补全代码,还会按任务拆解、搜索代码库、修改多个文件、执行命令、运行测试并迭代修复 |
| 真正被考验的能力 | 需求拆解、上下文组织、代码审查、失败定位、边界判断 |
| 工具门槛 | 云端 API 场景对本地硬件要求低;本地模型场景需要独立部署推理服务 |
| 关键风险 | Agent 可能产生看似合理但逻辑错误的改动,基本功不足时很难发现 |
| 容易忽略的判断 | 输出代码行数不代表工程质量,测试通过也不代表需求被正确实现 |
从公开讨论来看,吴恩达这句话的核心意思可以概括为:当前 AI 编程工具的能力已经很强,但开发者如果不懂如何验证、如何描述需求、如何审阅代码,工具的效率优势反而无法兑现。更危险的是,Agent 会非常自信地写出结构完整、注释齐全、但业务逻辑完全跑偏的代码。这时候,一个基本功扎实的开发者能立刻发现问题,而基本功薄弱的开发者可能会把错误代码合入主干,让问题在几周后才暴露。
所以 Agentic Coding 时代的基本功,不是“手写每个 API 调用”的能力,而是判断力。你能不能在 Agent 产出代码后判断它对不对、边界在哪、风险在哪、测试够不够。这个能力不可能被工具替代,因为验证工具输出的人必须比工具更清楚“预期结果是什么”。
2. 基本功具体指什么
2.1 需求拆解与任务描述能力
一句话需求会得到一句话实现。这是 Agentic Coding 里最常见的失败源头。你告诉 Agent“帮我优化一下登录接口”,它返回的代码可能改了密码校验逻辑、加了缓存、调整了错误码,结果哪一项都不是你真正想要的,还引入一堆回归风险。基本功扎实的开发者会把需求拆成可验收的约束:输入是什么、输出是什么、异常怎么处理、兼容哪些旧调用方、性能指标是什么。
这里有一个很实用的描述模板,可以在每次给 Agent 派任务时使用:先说任务目标,再说涉及文件,然后列硬性约束,最后写验收标准。约束包括“不改变公共函数签名”“不新增第三方依赖”“保持现有代码风格”这一类,验收标准包括“单测通过”“所有旧用例不回归”“错误信息保持兼容”。越具体的描述,Agent 的一次性成功率越高,你 review 的负担越小。
2.2 代码阅读与上下文组织能力
Agent 再强,也需要你告诉它“从哪里看起”。一个刚接手的项目里,入口文件、配置文件、核心业务模块、测试目录之间的关系,Agent 不可能每次都靠猜猜对。如果你能用一两句话把项目结构说清楚,比如“用户模块在 app/users,中间件在 app/middleware,测试在 tests”,Agent 进入正确上下文的成本会大幅降低。
这意味着你的基本功里包含“快速阅读代码库”的能力。你要能判断哪些文件是核心、哪些文件只是辅助,哪些依赖关系会影响当前改动。很多开发者习惯把整个仓库丢给 Agent 让它自己找,这在小型项目里可行,在中大型项目里会变成两部分问题:token 消耗过高,Agent 容易在无关文件里“发挥”出大量无效改动。先定位、再执行,才是正确姿势。
2.3 调试与错误定位能力
Agent 写完代码跑测试,报错了,接下来怎么办?基本功薄弱的开发者会把报错信息原样贴回去,让 Agent 继续改,结果 Agent 可能改十轮都改不对,因为根因判断从一开始就偏了。基本功扎实的开发者会自己先看报错栈,定位是测试写错了、环境配置错了,还是业务代码真的有 bug。如果是真 bug,会补充线索:哪个变量在哪个分支变成了 None,哪个函数传入的格式不符合预期。
这里有一个值得养成的习惯:让 Agent 在修复之前先输出“根因分析”,而不是直接给改动。根因分析写清楚了,说明它真的在思考问题;根因分析含糊,只是复述报错,那改多少次都白搭。你自己也要能验证它给出的根因是否成立,这依赖你对运行时行为的判断能力,也就是调试基本功。
2.4 测试设计与质量判断能力
Agent 很擅长写测试,尤其是那种“跑得通、但等于没写”的测试。它会自动生成一个 mock,把外部依赖全部 mock 掉,断言函数返回值存在,然后测试通过。这类测试的防护价值很低,真正的边界条件、异常分支、数据一致性都没覆盖到。基本功扎实的开发者能一眼看出测试断言过弱,能补出真正可能失败的用例。
更重要的检查点是:测试能不能先失败。让 Agent 先写一个描述预期行为的测试,在实现之前跑一次,确认测试确实能暴露问题,再让它去实现。如果测试在实现之前就通过,说明测试本身有问题,或者任务已经被人实现过。这个“先红后绿”的流程在 Agentic Coding 里尤其重要,因为 Agent 自带的测试往往为了“通过”而设计,不是为了“验证正确”而设计。
2.5 代码审查与安全边界判断
当 Agent 产出几百行代码时,审查能力就是基本功的终极体现。你要看代码是否真正满足需求,是否引入了不必要的抽象,是否有性能隐患,是否在不知不觉中扩大了权限范围。很多 Agent 生成的代码会把 API key 写进日志,会使用不安全的反序列化方式,会在文件路径拼接时忽略校验,这些都不是模型能替你兜底的事。
安全边界判断还包括数据合规。你把代码库里的内容发给第三方 API 时,有没有包含敏感业务数据、用户隐私字段、内部架构信息?在生产环境使用 Coding Agent 之前,必须建立一条数据红线:哪些目录可以进上下文,哪些目录必须排除。这属于工程纪律,也是对基本功的硬性要求。
3. 适用场景与使用边界
3.1 适合什么场景
Agentic Coding 最适合解决的是“结构化改造”和“批量生成”类任务。典型场景包括:为已有模块补充单元测试,把旧接口从一种调用方式迁移到另一种,生成重复性较高的 CRUD 代码,为开源项目补充文档和示例,跨语言翻译一个模块,修复带有清晰复现步骤的 bug。这些任务的共同特点是边界清楚、验收标准明确、流程化程度高,Agent 的成功率会比较高。
同时,Agent 适合做“探索性原型”。你不确定某个方案是否可行,可以让 Agent 先搭一个最小可运行版本,跑通后再决定是否投入时间精修。这个场景下 Agent 的价值不是提供最终代码,而是帮你降低“从零到一”的启动成本。基本功能验证通过后,你会更清楚后续要投入多少工作量。
3.2 不适合什么场景
最不适合的场景是:完全不懂代码的人指望用 Agent 替代程序员。Agent 不是无代码平台,它生成的代码需要有人能看懂、能验证、能维护。另一个高风险场景是大型遗留系统直接让 Agent 大改。没有测试、没有文档、依赖关系混乱的老项目,Agent 很可能在一个自以为合理但实际错误的前提上开工,产生大量难以排查的改动。
生产环境的合并同样要设门槛。Agent 的输出不能直接合入主干,必须经过人工 review、测试验证、diff 审查。特别是涉及支付、权限、安全策略、数据迁移这些模块,宁可多花时间 review,也不要让 Agent 自主决定如何改。工具自主性越强,人工审查的权重就越高。
3.3 版权、隐私与合规边界
使用第三方编码 Agent 服务时,你发出的代码、文档和任务描述都会进入服务提供方的系统。涉及未公开的商业项目、客户数据、密钥信息时,要格外谨慎。建议在使用任何 Agent 工具之前确认它的数据处理策略,敏感信息做脱敏处理,必要时采用本地化或私有化部署方案。
生成的代码还涉及依赖许可证问题。Agent 可能“借鉴”了某些开源实现,或者提供了一个需要特定许可证的依赖方案。发布或商用之前,确认新增依赖的许可证合规,确认没有把受版权保护的代码片段原样搬进项目。这不是可做可不做的步骤,而是工程伦理底线。
4. Agentic Coding 工作流环境准备
4.1 硬件与软件环境
Agentic Coding 的硬件要求取决于你选择的运行方式。如果使用云端 API 模式,它的核心能力在服务端,本地只需要一个能跑 IDE 或终端工具的环境。一般 8GB 以上内存的电脑就能正常工作,磁盘预留 20GB 以上空间用于项目文件、依赖缓存和日志。操作系统方面,Windows、macOS、Linux 都可以,本质是看你想用的 IDE 和命令行工具是否支持。
如果选择本地模型模式,情况会复杂一些。你需要独立部署一个推理服务,显存占用完全取决于模型参数量、量化方式、上下文长度和并发请求数。更稳妥的判断是,先从云端 API 或托管 API 开始验证工作流,确认 Agentic Coding 方式适合你的项目后,再为本地模型单独规划硬件。不要在第一天就为了一台尚未配置好的本地服务器浪费开发时间。
4.2 密钥与环境变量管理
Coding Agent 工具几乎都需要 API Key。这里最核心的工程纪律是:不要让密钥进入代码仓库。常见的做法是用 .env 文件保存密钥,并在 .gitignore 中排除它。下面是一个通用示例,环境变量的具体命名为你使用的工具为准:
# AI 编码工具环境变量示例,不要提交到仓库 # 具体变量名以你使用的工具文档为准 API_BASE_URL=https://your-api-endpoint.example.com API_KEY=sk-your-key-here MODEL_NAME=gpt-4o-class# .gitignore 示例 .env *.local .DS_Store如果你使用团队共享环境,更推荐用密钥管理服务注入环境变量,避免密钥以明文形式放在开发机里。密钥一旦泄露,要立即吊销并轮换。这个动作听起来简单,但很多 Agent 事故都源于密钥被写进了代码注释或日志输出。
4.3 项目目录约定
为了让 Agent 更快定位文件,建议把项目目录做清晰划分。下面是一个通用模板,具体结构以你的业务为准:
workspace/ app/ # 业务代码 tests/ # 测试代码 docs/ # 文档 prompts/ # 沉淀下来的任务提示词 scripts/ # 辅助脚本 .env # 密钥,不入库其中 prompts/ 目录值得认真维护。把每次给 Agent 的高质量任务描述保存下来,后续同类任务直接复用。你会慢慢发现,真正拉开效率差距的不是模型有多强,而是你的提示词模板有多少沉淀。
5. 搭建一套可复用的 Agent 编码工作流
5.1 工作流总览
一套稳定的 Agentic Coding 工作流应该包含六个环节:需求拆解、上下文收集、生成计划、实现改动、运行测试、代码审查。六个环节中,最容易跳过的是“生成计划”和“代码审查”,但这两个环节恰恰是质量保障的关键。
需求拆解阶段要把大任务拆成小任务。一次让 Agent 修改二十个文件,不如拆成五个小步骤,每步只改三四个文件。小步提交的另一个好处是:如果 Agent 在某一步产生错误改动,你定位和回滚的成本都很低。真正的工程化不是一次跑赢,而是可控地输、快速地修。
5.2 任务描述模板
在给 Agent 派任务时,可以用下面这个模板:
你在一个 Python 项目中。请完成以下任务,并遵守约束: 目标:... 涉及文件:... 约束: - 不改变公共函数签名,除非有明确说明 - 新增代码必须有单元测试 - 不引入新的第三方依赖,除非说明理由 - 保持现有代码风格 完成前请: 1. 先阅读相关文件,确认理解 2. 输出实现计划,等待确认 3. 修改代码并运行测试 4. 报告改动清单和测试结果这个模板的关键是让 Agent 先输出计划,而不是直接动代码。你可以核对计划是否符合预期,再允许它修改。很多 Coding Agent 工具都支持这种交互方式,核心思路是把控制权留在人类手上。
5.3 上下文收集与工具配合
在 Agent 开始修改之前,先用常规工具收集上下文。直接用 ripgrep 或全局搜索定位关键引用,会比让 Agent 通读整个仓库更高效:
# 用 ripgrep 快速定位关键引用,减少 Agent 猜错 rg -n "def generate_report" app/# 查看一个函数的调用关系,帮助判断改动影响范围 rg -n "generate_report\(" --type python这些命令能让你在把任务交给 Agent 之前,已经知道涉及哪些文件、哪些地方调用了它会受影响的函数。当你把“涉及文件”写清楚,Agent 的幻觉率会明显下降,它不必浪费时间在无关代码里寻找依据。
5.4 分阶段执行与版本控制
每一轮 Agent 改动之后,立即查看 git diff,确认改动范围符合预期。建议每完成一个阶段就提交一次,提交信息写清楚“这是 Agent 生成的第几轮改动,目标是什么”。后续要回滚时,直接定位到对应提交即可。版本控制不是可选项,它是 Agentic Coding 的“撤销按钮”,没有它,你只能看着错误代码蔓延到多个文件。
## 6. 功能测试与效果验证 ### 6.1 第一轮:让 Agent 生成一个完整模块 第一次验证建议控制范围。选择一个小型模块,让它独立完成。下面以“为项目增加一个简单的限流器,并补充单元测试”为例。这类任务结构清晰,适合作为 Agentic Coding 的入门测试。 ```bash # 在一个 Python 项目里验证生成结果 python -m pytest tests/ -q预期结果是测试通过。这里的判断标准不是代码看起来多漂亮,而是它是否满足验收标准:限制每秒钟的请求次数超过阈值后拒绝服务,且原有代码没有回归。如果测试没通过,不要急着让 Agent 反复改,先看报错是设计问题还是实现问题,再补充上下文。
6.2 第二轮:让 Agent 做一次有约束的重构
重构是更能检验 Agent 能力的任务。先为待重构模块补好测试,再把测试结果保存为基线;然后要求 Agent 在“保持外部行为不变”的前提下优化代码结构。重构完成后,跑原有测试并对比 git diff。如果测试全部通过,且 diff 范围只涉及目标模块,那这次重构就是成功的。
如果测试挂了,常见原因是 Agent 改动了一个看似无关的函数。这时候要回到“分阶段执行”原则,要求 Agent 撤销改动,补充说明为什么修改了那个函数。很多无效重构都源于 Agent 误解了“优化”的含义,它可能顺手重命名了变量、调整了 import 顺序,这类噪音会让代码审查成本剧增。
6.3 第三轮:故意埋一个 bug,看 Agent 能否修复
这是对“调试基本功”和 Agent 能力的双重验证。你先在代码里埋一个可复现的 bug,再写一段清晰的问题描述:“当传入空列表时,sort_items 函数会抛 IndexError,请定位根因并修复,同时补一个回归测试。”然后观察 Agent 的表现。
重点观察三点:它是否先复现了问题,它是否准确定位到根因,它是否补了真正有意义的回归测试。如果 Agent 只是修改了异常处理逻辑让程序“不报错”但结果仍错误,说明它的理解不到位;如果你自己能一眼看出它修改的逻辑有问题,说明你的代码审查基本功已经在起作用。
6.4 验证 Agent 产物的检查清单
无论 Agent 生成什么代码,都可以用下面这张检查清单来验收:
| 检查项 | 方法 | 通过标准 |
|---|---|---|
| 功能是否符合需求 | 看 git diff + 跑测试 | 满足验收标准,没有偏离 |
| 是否引入无关改动 | 逐文件 review diff | 改动仅涉及目标模块 |
| 是否引入安全风险 | 检查密钥、注入点、路径处理 | 无新增风险 |
| 测试是否有效 | 读测试断言 | 断言足够强,能真正失败 |
| 依赖是否被合理变更 | 检查依赖清单 | 没有无理由的新增依赖 |
| 性能是否可接受 | 按需跑基准 | 没有明显退化 |
这张清单最好固化成一个 Markdown 文件,每次 Agent 完成任务后逐项打钩。基本功扎实的开发者会把这套流程变成肌肉记忆,而不是每次临时想起检查一两项。
7. 接口 API 与批量任务:把 Coding Agent 接入自动化
7.1 通过 API 驱动 Coding Agent
部分 Coding Agent 服务会提供 API 接口,允许你在自己的脚本里提交任务、拉取结果。这对批量场景非常有用。下面是一个通用调用模板,实际接口路径和参数以你使用的工具文档为准:
import os import requests endpoint = os.getenv("AGENT_API_ENDPOINT", "http://127.0.0.1:8080/run") payload = { "task": "为 project 增加导出 CSV 功能,并补充测试", "repo": "/path/to/repo", "max_iterations": 10, "run_tests": True, } resp = requests.post(endpoint, json=payload, timeout=600) print(resp.status_code) print(resp.json())这个脚本的价值在于,你可以把 Coding Agent 编排进 CI 流水线或定时任务。比如每晚自动让 Agent 检查代码中的 TODO、自动为新增函数补充测试、定期执行依赖版本升级建议。把它当成一个可编程的执行单元,而不是一个只能手动对话的工具。
7.2 批量任务设计与失败重试
批量任务最大的坑是“一次任务做太多”。Agent 一旦需要同时改写多个模块,错误率会显著上升。推荐的做法是写一个简单的任务队列,把大任务拆成小任务依次提交,每个子任务之间保持独立。下面是一个批量任务脚本片段:
import time tasks = [ {"id": 1, "task": "修复 utils.py 中的日期解析 bug"}, {"id": 2, "task": "为 api/handlers.py 补充参数校验"}, {"id": 3, "task": "为 calculator.py 增加除法边界测试"}, ] for t in tasks: print(f"start task {t['id']}: {t['task']}") # 实际调用时替换成你自己的接口 # 注意:这里需要捕获异常、记录日志、决定是否重试 time.sleep(1)生产级的批量任务还要加入重试和超时机制。Agent 第一次失败很常见,可能是上下文不完整、网络抖动、或者模型对某个任务理解有偏差。建议为每个任务记录完整的输入输出日志,保存失败现场,再决定是调整任务描述后重试,还是将任务标记为人工处理。
7.3 日志与审计
任何自动化任务都必须有日志。记录每次 Agent 调用的任务描述、token 消耗、生成的文件列表、测试结果、执行时间。这些数据不仅能帮你排查问题,还能帮你判断哪种任务适合交给 Agent、哪种任务经常失败。把日志汇总到统一目录,按日期归档,减少排查的盲目性。
审计还包括输出物管理。不要让 Agent 直接修改生产分支。最好让它在独立分支上干活,生成一个清晰的 diff,你 review 后再合并。如果 Agent 在自动化流程中出错,独立分支可以让你快速回滚,不影响主干稳定性。
8. 资源占用与性能观察
8.1 API 模式下的资源占用
云端 API 模式下,本地资源消耗很低。Coding Agent 的客户端插件或命令行工具一般只占几十 MB 到几百 MB 内存,CPU 消耗主要发生在代码高亮、diff 展示和终端渲染上。你可以通过操作系统的资源监视器或任务管理器观察,重点不是内存,而是网络请求是否正常、有没有大量重试。
不过 API 模式的性能瓶颈在 token 消耗和响应延迟。一次涉及多个文件的改动,可能消耗大量上下文 token,模型输出时间也会明显变长,几秒钟到几分钟都很正常。不要用“本地卡顿”来判断效率,关键是看任务完成质量和总耗时。
8.2 本地模型模式下的资源占用
如果使用本地模型驱动 Coding Agent,硬件资源占用会明显上升,显存取决于模型参数量、量化精度、上下文长度和并发请求数。观察显存使用可以借助下面的命令:
# 观察显存动态变化,适合本地推理服务压测 nvidia-smi --query-gpu=utilization.gpu,memory.used --format=csv -l 2本地模型的优势是数据不出内网,适合敏感项目;劣势是模型能力通常弱于顶级云端模型,代码生成质量可能会有差距。更稳妥的判断是:先用云端 API 验证流程是否跑通,再根据实际需求和预算决定是否切换到本地模型。不要默认本地部署一定更好,先看效果,再看成本。
8.3 影响性能的关键因素
影响 Coding Agent 性能的主要因素有三个:上下文长度、文件数量和任务复杂度。上下文越长,模型理解和输出的单位成本越高;文件数量越多,Agent 越容易在无关代码里产生幻觉;任务越复杂,迭代轮数越多,总耗时会非线性增长。
对应的优化策略也很直接:任务描述精炼到能覆盖验收标准即可;通过搜索定位相关文件,而不是把整个仓库塞进上下文;限制单次任务的“最大迭代轮数”,避免 Agent 在错误方向上空转。每轮迭代都会消耗 token,限制轮数也是在限制成本。
8.4 常见性能陷阱
最常见的性能陷阱是“一个对话跑几十轮”。随着对话历史越来越长,上下文窗口被无意义的报错、重复尝试填满,模型的响应会越来越慢,结果越来越差。正确的做法是:每开始一个新任务就开启新会话,把旧会话的关键结论整理成新的任务描述。保持每个会话短小、聚焦,是 Agentic Coding 效率管理的核心技巧。
9. 常见问题与排查方法
下面是 Agentic Coding 使用过程中最常遇到的几类问题,以及对应的排查思路:
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| Agent 生成的代码调用不存在的函数 | 上下文不完整 | 查看错误信息 | 补充相关文件引用 |
| 测试通过但需求没实现 | 验收标准不清晰 | 对照任务描述看 diff | 写清验收标准和边界条件 |
| 反复改同一个 bug 改不好 | 根因判断错误 | 要求先输出根因分析 | 打断它,补充线索 |
| API 返回超时 | 任务过大或网络不稳定 | 看日志和耗时 | 拆分任务、加超时重试 |
| Context 太长 | 一次喂了太多文件 | 查看 token 统计 | 只给相关文件 |
| 生成了密钥或敏感信息 | 提示词没约束 | 检查日志和 diff | 加入密钥扫描工具 |
| 批量任务卡住 | 某个任务无限循环 | 查看进程状态 | 加最大轮次限制 |
| 本地模型 OOM | 并发太高或模型太大 | 查看 GPU 显存 | 降并发或换小模型 |
排查的基本原则是:先看日志和实际输出,再猜原因,不要盲目让 Agent 重试。大部分失败都源于上下文缺失、任务描述模糊、或者改动范围失控,而不是模型能力不够。把每次失败原因记录到一个文档里,形成你自己的排错手册,比反复试错有效得多。
10. 最佳实践与基本功训练建议
10.1 工程实践建议
我给 Agentic Coding 设立过几条工程纪律,现在分享出来供你参考。第一,所有 Agent 改动都必须走 git diff review,不允许直接合入主干。第二,维护 prompts/ 目录,沉淀高质量任务模板,让后续任务直接复用。第三,测试先行,先让 Agent 写一个会失败的测试,再让它实现功能。第四,限制单次改动范围,小步提交,快速回滚。第五,不向第三方 API 发送敏感数据,不把密钥交给 Agent 管理。
这些纪律短期内看起来是“拖慢速度”,长期来看是唯一能保证质量的方式。Agentic Coding 的效率红利建立在“人类快速判断 + Agent 快速执行”的配合之上,如果人类判断环节失灵,效率红利会变成效率灾难。
10.2 基本功训练清单
如果你认可“基本功更重要”这个观点,那下一步就是主动训练这些基本功。每周读一个开源项目的核心模块,理解它的设计取舍;练习用一两句话描述一个需求的边界,包括正常流程、异常流程和性能约束;手工写测试,然后和 Agent 生成的测试对比,找出你的测试比它强在哪些地方;刻意练习调试,遇到 bug 时先用调试器定位根因,再动手改。
最重要的训练是复盘。Agent 改坏了某个功能,你能不能作为负责人讲清楚坏在哪里、为什么坏、怎么避免再犯。如果你能,那基本功就在增长;如果你只能把报错贴给 Agent 让它继续改,那就还在用“表面补丁”的方式处理问题。基本功不会因为工具变强而过时,它只会从“能写代码”变成“能判断代码对不对”。
11. 总结与下一步
如果你刚接触 Agentic Coding,建议从一个小型 Python 或 TypeScript 项目开始,先跑通本文提到的四轮验证:让 Agent 生成一个完整模块,补测试,做一次有约束的重构,再故意埋一个 bug 看它能否修复。把这四轮的结果记录下来,你会清楚地看到自己的基本功在哪个环节最薄弱。
工具会不断迭代,模型会越来越强,但“判断代码对不对”的能力永远稀缺。先把你最常用项目的测试覆盖率补起来,再让 Agent 进入那个项目的代码库修改逻辑,这是最容易见效的第一步。测试是 Agentic Coding 时代的锚点,没有锚点,代码生成得越快,风险累积得越快。建议先把这套方法论收藏备用,下次使用 Coding Agent 的时候,按照上面的流程走一遍,你会明显感觉到可控性在变强。