吴恩达 AI 工程技能图:用好 Coding Agent 的五项关键能力

作者:Andrew Ng(吴恩达)。原文:AI Engineering Skills Map: Using coding agents。

本文依据读者提供的英文正文进行结构化翻译,调整分段与小标题,保留原文论证。正文中的"我""我们"指原作者及其团队。

编者导读:先找到你正在遇到的问题

如果你已经在使用 Coding Agent,却仍要频繁补充背景、纠正方向或追着确认结果,这篇文章值得按问题查阅。它讨论的不是某个工具的操作技巧,而是贯穿规划、执行、验证和运行维护的能力。

你遇到的问题 对应能力 原文讨论的重点
不知道该规划多细,任务怎样拆 Directing the workflow|引导工作流 速度、成本、技术风险与人工投入之间的取舍
不知道该盯着还是委托,多个 session 顾不过来 Enabling agent autonomy|让 Agent 自主工作 自主程度、Context、并行协作与权限
Agent 说完成了,但结果是否可信 Reviewing the work|审查工作成果 测试与目标的一致性,以及自动化和人工验证
每次都要重复解释项目约定 Customizing the agent and its environment|定制环境 Skills、工具、长期背景、状态和复盘
不理解它为什么丢背景、过度设计或提前停止 Coding agent foundations|基础原理 Harness、Context window、检索和 Subagents

以上表格是依据原文整理的阅读导航,不是原作者新增的清单。下文保留完整译文;其中"我""我们"仍指 Andrew Ng(吴恩达)及其团队。

使用 Coding Agent,是一项持续变化的技能

一项关键的 AI Engineering 技能,是使用 Coding Agent。你引导它们编写代码,以及完成数据分析、系统运维等非代码任务的能力,能让你完成更多工作。

Coding Agent 的演进速度很快,这意味着使用它们的技能也在快速变化,而且比其他一级 AI Engineering 技能变化得更快。Claude Code、Codex、Cursor 等专有 Agent,以及 OpenCode、Pi 等开放 Agent,都在通过 Harness 和模型两方面的改进大步前进。因此,想持续掌握 Coding Agent 的使用方法,需要不断实验、构建和学习。

在采访数十位顶尖 AI Engineer,并反思我们团队使用 Coding Agent 的经验后,我们发现,用它们构建软件时,存在一套相对一致的高层工作流。

从 Planning 到部署和监控

编者依据原文整理的图解,非原作者配图。

这套工作流包含三个关键阶段。

Planning:探索、写 Spec、制定计划

首先是 brainstorming,其中可能包括研究、实验,以及理解现有代码库(如果有)。随后,编写一份涵盖需求、技术设计和架构的 Spec,再生成执行计划。

你也可能需要审查计划,追问关键假设,检查安全性、过度设计,以及其他遗漏。

Execution:构建、测试和验证

在 Agent 自主性和人工监督之间取得适当平衡,让 Agent 以经过校准的自主程度构建软件,并通过自动化检查和/或人工检查验证它的输出。

Deployment and monitoring:部署后继续改进

部署软件,必要时通过 CI/CD pipeline 或额外的人工关卡把关。随后使用 Agent 观察日志、发现问题,并提出和执行改进。

这套高层工作流与 Coding Agent 出现之前通常使用的软件开发流程相似。现在,我们对代码本身的关注少了很多,更多精力转向决定构建什么、设计架构、编写 Spec 和验证输出。

工作流需要迭代,也需要因项目而异

不同项目在各个阶段花费的时间可能差异很大,有些步骤也可以省略。比如,一个 greenfield,也就是从零开始构建的原型,它的 Spec 可能只是快速写下的一段宽泛 Prompt;而一个已有大量用户的 brownfield,也就是既有项目,其 Spec 的编写和验证可能需要投入更多精力。

此外,这套工作流具有很强的迭代性。熟练的开发者知道,什么时候应该根据后续阶段的反馈,回到前面的步骤。

例如,验证失败时,他们知道如何引导 Agent 重新构建并修复错误;监控发现问题时,他们也知道如何让 Agent 更新系统并重新部署。

为了在这套工作流中有效使用 Coding Agent,关键技能包括:

  • Directing the workflow|引导工作流
  • Enabling agent autonomy|让 Agent 自主工作
  • Reviewing the work|审查工作成果
  • Customizing the agent and its environment|定制 Agent 及其工作环境
  • Coding agent foundations|Coding Agent 基础原理

1. Directing the workflow|引导工作流

编者依据原文整理的图解,非原作者配图。

你知道如何推进上述工作流中的每一个阶段。这包括决定每个阶段分别投入多少人工和 Agent 工作,以及什么时候应该回到之前的步骤继续迭代。

这要求你深入理解速度、成本、技术风险与人工投入之间的 trade-off,从而作出一系列决定:前期研究和规划做到什么程度,哪些关键工作继续由人负责,如何选择架构,Spec 等规划材料需要写到多细,以及如何把工作拆成可以验证的步骤。

2. Enabling agent autonomy|让 Agent 自主工作

把 Coding Agent 用于工作流的不同阶段时,你需要选择它的自主程度:是看着它工作,与它来回互动,还是把更大的一块任务委托给它?什么时候应该设定一个清晰目标,让它循环执行直到成功?

此外,你必须认真管理 Agent 的 context。随着构建过程进入不同阶段,需要判断什么时候应确保关键经验、用户反馈和假设被记录下来,供 Agent 在后续工作中使用。这里也包括那些在构建过程中发生变化的假设。

你还需要决定,什么时候把任务拆解后交给多个 Agent 并行执行,由人或者更高层的 Agent 负责协调,以及如何在并发的 Agent session 之间分配人的注意力。

你也知道如何安全地运行 Agent:设置适当的权限,为操作安排必要的关卡,让开发快速推进,同时限制信息泄露、数据丢失或其他损害的风险。

3. Reviewing the work|审查工作成果

编者依据原文整理的图解,非原作者配图。

Coding Agent 的输出是不确定的。我们无法提前知道,它会提出哪些好主意,又会写入哪些 bug。审查和验证输出,是确保得到预期结果的重要步骤;如果结果不符合预期,也需要通过这个步骤重新引导 Agent。

你会设计与任务相匹配的 testing 和 validation,按需采用行为验证和功能验证。你也可能测试用户流程,比如让 Agent 提供截图,作为成功或失败的证据。对于定性或行为评估,可以使用 eval sets,必要时配合 LLM-as-a-judge。

你还需要决定,这些测试应该有多少实现自动化。有些工作流会把测试和验证全部自动化,让 Agent 能检查自己的工作,并知道什么时候已经成功完成任务。你需要评估这些测试是否对应自己的目标;如果不对应,就继续改进测试。

此外,你会使用 agentic code review,并开展 AI 辅助的安全和架构审计。当 AI 审查不够时,你会审慎加入对代码行为的人工审查,少数情况下也审查代码本身,同时继续探索如何进一步自动化这些审查。

最后,你会验证部署结果,并利用 Agent 将监控与事件管理落实到日常运作中。

4. Customizing the agent and its environment|定制 Agent 及其工作环境

编者依据原文整理的图解,非原作者配图。

你更新 Agent 及其工作环境的能力,能让 Agent 高效获得所需 context、访问工具,并正确、高效地完成构建。

你知道如何集成 agent skills、plugins 和 MCP servers。有时,当它们不再必要时,你也会进行精简,例如新模型让某项旧 Skill 不再需要。

你可以使用 hooks 自动化开发过程中的重复环节,比如触发自动代码审查或 CI/CD pipeline。

你也能维护 Agent 的工作环境:更新 AGENTS.mdCLAUDE.md 等长期 context,写入代码库信息、关键架构假设、代码风格和数据访问模式。

你知道如何跨多个 session、跨并行 Agent 保留状态,并随时间积累 Agent 的经验。比如,可以在任务运行结束后进行复盘,记录哪些做法有效、哪些无效。

你也知道如何建立一致的约定与结构,让 Agent 容易理解和查找代码库中的内容,以及如何定期清理 agent-generated debt。在团队工作中,还需要考虑如何协调不同开发者所用 Agent 的 context。

5. Coding agent foundations|Coding Agent 基础原理

编者依据原文整理的图解,非原作者配图。

最后,为了在整个过程中作出好的决定,你需要充分理解 Coding Agent 如何工作:它们如何搜索和检索代码库,如何管理 context window,不同操作(比如增加 tool calls、MCP servers 等)怎样影响 context,Agent 与 Subagent 如何交互,以及如何通过在 LLM 外包裹一层 Harness 构建 Agent。

这些理解让 Agent 不再那么像一个黑箱,也有助于识别它的失败模式,例如:把简单方案设计得过于复杂,因为缺少明确的验证流程而失去严谨性,在达到目标前就停止,以及执行可能破坏文件或生产数据的操作。

这些知识也能帮助你推断 Agent 的状态,给出正确的处理办法或 context 来引导它。当你观察一次运行时,这种理解还会帮助你更早发现 Agent 偏离方向、需要介入的时刻。

长时间自主运行,并非总有想象中的价值

我发现,社交媒体经常把 Coding Agent 的使用方式描述得过于简单。比如,让 Agent 自主运行数小时,消耗数百万甚至数千万 Token,有时确实有用。但目前,超长时间跨度任务的实际效用,尤其是相对于其成本而言,已经被夸大了。

实际上,大多数有效的 Coding Agent 使用方式,是一个复杂、高度迭代的过程。能够凭借高水平判断适时介入,会带来更好的结果。

你使用 Coding Agent 的技能,会让你成为一名高效的构建者。这也使你有能力进一步引导整个构建过程。我将在未来的一篇文章中继续讨论这一点。

附录:术语对照(编者补充)

  • Coding Agent:围绕任务使用工具、编写或修改代码的智能体;本文也涉及非代码用途。
  • Harness:围绕 LLM 构建的 Agent 执行与控制机制。
  • Spec:规格说明,本文涵盖需求、技术设计与架构。
  • Context / context window:上下文/上下文窗口。
  • Greenfield / brownfield:从零构建的项目/既有项目。
  • Trade-off:不同目标与约束之间的取舍。
  • Eval sets / LLM-as-a-judge:评估集/使用 LLM 进行评判。
  • Hooks / MCP servers / Subagents:钩子机制/MCP 服务/子 Agent。
  • Standing context:持续提供给 Agent 的项目背景与约定。
  • Agent-generated debt:Agent 产出累积的、需要后续清理和维护的负担。

来源与翻译边界

X 原帖对应本次更新。翻译底本为读者提供的完整英文段落,覆盖开篇、三阶段工作流、迭代说明、五项技能和结尾;原帖附图不在本次翻译范围内。

当前未通过 X 官方接口独立验证全文。可读镜像与所提供文本的主体相符,但镜像末句为"下周的来信",读者提供版本为"未来的一篇文章";本译稿采用后者,不推定下一篇的确切发布时间。此前提及的北京时间 9 月 4 日 23:02,来自帖子 ID 的时间解码,并非 API 返回的 created_at。

开头的阅读导航、术语附录、本节及配图为编者补充;译文主体未加入独立分析中的场景或结论。

相关推荐
_阿南_11 小时前
项目中新增给AI制定的代码规范
前端·程序员
巫山老妖15 小时前
讲不清楚,是因为你还没想清楚
人工智能·程序员
阿里嘎多学长1 天前
2026-09-05 GitHub 热点项目精选
开发语言·程序员·github·代码托管
小小小小钰儿2 天前
1.2-AI核心理论与术语
人工智能·计算机·网络安全·信息安全·程序员·编程
kyriewen3 天前
GPT-6 发布当晚,三大 AI 集体宕机 4 小时——我扒完时间线,发现最该慌的不是宕机
人工智能·程序员·ai编程
阿里嘎多学长3 天前
2026-09-03 GitHub 热点项目精选
开发语言·程序员·github·代码托管
SamDeepThinking3 天前
HashMap 分组操作的演进:从三次查找到一次调用
java·后端·程序员
Shinner欣儿3 天前
个人项目中 Monorepo, pnpm workspace, Turborepo, prisma 和 Docker 如何协作?
程序员
newerp3 天前
Golang 接口的两副面孔:eface、iface 与动态派发之谜
后端·程序员·go