Claude Code之父:「自动化」正变的前所未有的重要
Claude Code的创造者Boris Cherny刚刚发了一条长文,聊了聊他对工程师自动化工作这件事的最新思考自动化,正在从工程师的加分项,变成整个团队能不能用好AI智能体的分水岭。过去,自动化是好工程师的标配Boris Cherny说,他认识的那些最厉害的工程师,有一个共同的习惯,就是花大量时间把自己的工作自动化。比如把vim或者emacs的操作打磨得更顺手,写lint规则去自动抓出反复出现的代码问题,搭一整套端到端测试,这样就不用每次都手动去点一遍应用看看有没有问题。在他看来,这些事情是一个工程师能做的杠杆率最高的活。因为它能把工程师自己的产出成倍放大,产出上去了,自然就能做成更多事情。现在,自动化变得更重要了Boris Cherny认为,到了智能体时代,这些自动化不仅没有过时,反而变得比以前更加重要,原因有三个。第一个原因:基础设施和开发体验方面的自动化能让人的速度变快。如果你手上跑着一整支智能体大军,那么每一个智能体也会因为这些自动化而跟着提速。自动化程度越高,单位时间里能做出来的东西就越多。第二个原因是,把事情变成代码能大幅提升效率。智能体当然可以每次遇到同一个问题就动手修一次,但这样做要消耗token,而且很可能会漏掉一些边界情况。如果换个思路,让Claude去写一条lint规则、一个CI步骤,或者一套固定流程,那么这一整类问题就能被永久地、彻底地解决掉,以后再也不用一个一个去修了。Boris Cherny说,这其实正是大家最近常提到的循环这个概念背后的意思。核心不是让智能体去解决单个问题,而是把整类重复性的琐碎工作全部自动化掉。不过他也强调,这不是什么新鲜想法,工程师们早就这么干了很多年。第三个原因,也是最重要的原因:自动化让更多人能参与进代码库Boris Cherny观察到一个越来越明显的趋势:工程师第一天入职就能给一个完全陌生的代码库贡献代码,因为Claude可以替他在代码库里找路;同时,不写代码的人,比如产品经理或者设计师,也能像工程师一样有效地参与到代码库的开发中。那到底是什么东西挡住了这两件事发生呢?答案是那些只存在于人脑子里、而没有变成自动化机制的领域知识。也就是过去一个新人要花很长时间去慢慢摸索、慢慢学会的那些东西。而智能体带来的真正变化在于,能够被写进基础设施里的领域知识,不再局限于lint规则、类型系统和测试这些能表达的范围了。现在几乎所有的领域知识,都可以通过代码注释、技能文件、CLAUDE.md规则,还有记忆功能,被完整地记录下来。Boris Cherny举了两个反面例子。如果他给一个自己不熟悉的iOS代码库提了一个PR,结果代码审阅者因为他没用对框架就把PR驳回了;或者一个设计师做了个新功能,结果因为没按照正确的架构模式来就被打回去了。这两种情况在他看来,都不是人的问题,而是自动化没做到位。每个团队都该动手写这些文档了基于这些思考,Boris Cherny给出了一个建议:每个团队都应该动手去写CLAUDE.md、REVIEW.md、技能文件,以及各种文档,让智能体不需要提问的人再额外提供任何背景信息,就能高效地在自己的代码库里干活。这个说法听起来有点激进,但Boris Cherny认为,这其实就是工程师一直以来做的事情的自然延伸:把事情自动化,把领域知识写进基础设施里。随着模型变得越来越聪明,配套的工具链也越来越成熟,这件事只会变得越来越容易做。不过在那之前,每个团队都得主动去找办法,把自己脑子里的领域知识转化成基础设施。这样一来,Claude才能把代码写得更好,代码审查才能自动抓出问题,下一个来接手这个代码库的人,才能更轻松地参与进来。