最近,随着AI能力的不断提升,AI取代人的焦虑也越来越浓烈。Simon Willison刚刚发布的《Agentic Engineering Patterns 》指南算是给很多工程师们一条新路线,给大家吃了颗定心丸。
他提出了一个反直觉的洞察:现在写代码几乎免费了,但人类工程师的价值反而更加凸显。
这听起来像是悖论,但正是这个矛盾定义了Agentic Engineering(代理工程)的核心。Hrishi在推特上提出了一个更尖锐的问题:Agentic Engineering到底是用agent做工程,还是做agent的工程?就像"锤子工程"——是用锤子做工程,还是做锤子的工程?

Simon的指南揭示了一个根本性转变:编程代理(如Claude Code、OpenAI Codex)将代码生成成本降到了几乎为零。但交付好代码的成本依然高昂。
什么是好代码?Simon的定义很全面:
当机器能轻松生成代码时,人类的角色从"代码编写者"转变为"问题定义者"和"质量保证者"。我们的价值不再体现在打字速度上,而体现在判断力、系统思维和业务理解上。
传统的for循环与agentic循环之间的转变,本质是从编写代码到设计能够编写代码的系统的转变。
当你从传统循环转向agentic循环时,实际上是在设计带有大脑的微服务。每个agent都需要自己的系统提示和专门角色——架构师负责规划,批评家负责质量控制。否则整个群体就会崩溃成上下文漂移。
这不再是简单的提示工程或编排。Agentic Engineering是上下文流设计——每个决策都关乎信息去哪里、何时去、以什么形式去,而不仅仅是调用哪些工具。
Hrishi在《Antibrittle Agents》中深入探讨了现实问题解决的本质:根本不是线性的成功步骤序列。
真实的问题解决更像一个迷宫,有多个路径、死胡同和循环,而不是从A到B的直线路径。复杂工作几乎不是步骤序列,我们人类在解决复杂问题时也会犯很多错误,会反复回溯。
这就是为什么TODO列表强加的错误线性往往弊大于利。它们把问题的组成部分强行塞进一条直线,而不是构建适合任务的结构。
Simon的指南提供了大量可立即应用的工程模式:
"使用红绿TDD"是获得更好结果的简洁方式。让agent先写测试(红),确认测试失败,然后实现代码让测试通过(绿)。这是防止agent写出不工作代码的最有效方法。
任何新会话都从"先运行测试"开始。这告诉agent有测试套件存在,并强制它学会如何运行测试。四个字的提示包含了大量的软件工程纪律。
让agent使用Playwright、Rodney等工具进行真实的浏览器自动化测试。自动化测试可能通过,但代码仍然可能崩溃服务器或遗漏关键UI元素。
LLM受限于上下文限制(通常100万token左右)。子代理允许在新鲜上下文中处理任务,而不消耗宝贵的主上下文。可以并行运行多个子代理加速任务。
Agent精通Git的所有高级功能,包括历史重写、分支管理等。我们可以更雄心勃勃地使用版本控制,因为agent能处理复杂的Git操作。
Simon指南最革命性的地方在于它将一个感觉像魔法的领域转变为可教的工程学科。通过具体的、可重复的实践,Agentic Engineering正在从神秘艺术转变为系统科学。
这种转变的标志是复合工程循环的概念:每个编码项目都以回顾结束,记录有效的方法供未来的agent运行使用。质量改进开始复合积累。
Simon的《Agentic Engineering Patterns》指南包含六个主要部分:
指南中最具革命性的可能是具体的实践模式。比如Simon提到的OCR工具案例:他让agent结合Tesseract.js OCR库和Mozilla的PDF.js库,在浏览器中构建了一个PDF OCR工具。这种"组合已知模式"的方法大幅降低了复杂工具的开发门槛。
另一个例子是GIF优化工具:Simon只用了一个提示就让Claude Code将Gifsicle编译为WebAssembly,并构建了完整的Web界面。这种能力让曾经复杂的项目变得几乎可以即时原型开发。

随着任务时间跨度延长到几天,生成的词数达到数百万,好的信号和中间状态将提供有用的中断点。中断和何时让人介入将成为越来越难的问题。
但更大的挑战可能是认知债务的管理。当agent编写的代码变成我们不完全理解的黑盒时,规划新功能变得更难,最终会像累积的技术债务一样减慢进度。
解决方案?通过构建交互式解释和线性走查来偿还认知债务。Simon的动画词云解释就是一个完美例子——通过可视化让复杂的算法变得直观易懂。

Agentic Engineering代表了软件开发的范式转移,我们正从亲手编写代码转向设计能自主编写代码的系统。这可能是自敏捷开发以来,软件工程领域最重要的一次演进。它并非要取代人类工程师,而是重新定义我们的核心角色和价值。
这可能是自敏捷开发以来,软件工程领域最重要的一次演进。它并非要取代人类工程师,而是重新定义我们的核心角色和价值。
当代码生成成本归零时,真正稀缺的资源变成了:问题定义能力、系统设计思维、质量判断力、业务理解深度。这些正是人类工程师的核心竞争力。
不过,这只能保证你进了新的牌桌,但需求不足的情况下,供给的大幅提升会不会让整个竞争更加激烈呢?
无论如何,Simon的指南值得任何想要在这个快速变化的领域保持领先的开发者阅读。
地址:https://simonwillison.net/guides/agentic-engineering-patterns/