Claude Code 之父:AI 的改变不止于代码,程序员需要改变整个工作流

张开发
2026/4/4 22:56:01 15 分钟阅读

分享文章

Claude Code 之父:AI 的改变不止于代码,程序员需要改变整个工作流
高水平工程劳动正在离开手写代码。编译 | 王启隆出品丨AI 科技大本营IDrgznai100这两天Claude Code 以一种多少有点尴尬的方式被更多人看见了。不是因为新模型发布也不是因为哪场演示太惊艳而是因为 Anthropic 在 npm 包里漏了 source map。几乎是一夜之间Claude Code 的大量 TypeScript 源码被还原、下载、镜像、拆解。外面的人忙着看提示词、看权限、看缓存、看那些原本不该以这种方式摊开的工程细节。Claude Code 的创造者 Boris Cherny 后来在社交平台上的回应倒很直接开发者的失误。但有意思的是很多原本只把 Claude Code 当成一个强势 AI 编程产品的人突然开始认真问另外一类问题它到底是怎么做出来的为什么会这样设计为什么安全、权限、代码审查和上下文管理会被放在这么靠前的位置。这些问题其实 Boris 一个月前已经讲过。Boris 是 Claude Code 的创造者和负责人前 Meta 首席工程师也是《Programming TypeScript》的作者。在 3 月份的 The Pragmatic Engineer Podcast 里他和主持人聊了Claude Code 如何从一个副项目变成 Anthropic 的核心内部工具也聊了它的并行 agent、PR 结构、代码审查、上下文检索方式以及当工程师不再亲手写大部分代码时工作到底会怎么变。正值大家还在玩最新出来的 Claude Buddy 的时候也可以看看它的工具怎么长出来安全怎么兜住代码审查怎么重组原型为什么压过文档工程师为什么正在从写代码的人慢慢变成调度、验证和判断的人。今天重看这场对话最值得注意的已经不是 Claude Code 有多强而是 Boris 怎么描述一套新工作方式正在成形。要点速览Claude Code 最早不是一个完整产品而是用来理解 Anthropic API 的终端实验。真正让它突然变得有用得吓人的不是聊天而是 bash、文件系统和工具调用。Anthropic 内部一度认真讨论过这东西是不是该只留给自己用。在 Boris 的工作流里工程师越来越像一个同时管理多个 agent 的人。AI 编码工具越强权限、沙箱机制、lint 规则、自动审查和人始终在回路中就越不能少。这场访谈真正解释的不只是 Claude Code 如何工作而是工程师这份工作的重心为什么正在迁移。我写的第一支 PR 被打回来了因为我是手写的主持人听说你加入 Anthropic 后写的第一支 PR被打回来了。不是因为代码差而是因为你是手写的。是真的吗Boris Cherny真的。Adam Wolf 当时是我的入职引导伙伴。我刚加入 Anthropic做了几件入职培训项目我就像以前那样自己把代码写出来然后提了第一支 PR。我以为写代码当然就是这么写的。主持人这曾经确实是写代码的标准方式。Boris Cherny对曾经是。但在 Anthropic当时已经有个很早期的东西叫 Clyde算是 Claude Code 的前身。它非常研究项目风是 Python 写的启动很慢不是那种真正成熟的 agent 式产品完成度也不高。但如果你会用、提示词给得对它已经能替你写代码了。Adam 就把我的 PR 打回来说你不该手写应该用 Clyde 来做。我当时花了半天才搞明白这玩意怎么用因为它要配很多参数使用姿势也挺别扭。但最后它真的一把就给我吐出了一支能工作的 PR。主持人这是你第一次真正意识到事情变了Boris Cherny可以说是我在 Anthropic 第一次强烈感到 AGI 正在逼近的时刻。我之前对 AI 编码的理解其实还停留在 IDE 里的补全、行级建议。你知道它能帮你写一点但你没想到它能直接给你一支能跑的 PR。那一下我才第一次感觉到原来模型已经能做到这种程度了。主持人你后面会反复说编程对你来说一直是个很务实的东西。这个气质是从哪来的Boris Cherny很早就这样。大概 13 岁的时候我在 eBay 上卖自己旧的宝可梦卡。后来我发现原来商品页面是可以写 HTML 的。我看别人有些商品页会有颜色、字号甚至各种花哨效果。后来我发现了 blink 标签就觉得特别神如果我把卡片标题做得更显眼也许能把 49 美分卖成 99 美分。然后我就开始学 HTML。另一条线是我们学校那种老式 TI-83 图形计算器。最开始我只是想在数学考试里偷个懒把答案写进计算器里。后来题型变了我就不能只写死答案了只能开始写求解程序。再后来题更复杂我为了让程序跑快一点甚至往更底层走。主持人所以你在八九年级就已经往汇编语言里钻了Boris Cherny差不多吧。最有意思的是后来班里同学发现我有求解程序都有点嫉妒。我就去买了根串口线把这个东西也传给他们。结果下一次数学考试全班都拿了 A。老师很快就觉得不对劲最后的结论大概是这次算了下不为例。但对我来说这一切从头到尾都不是那种热爱编程语言之美的起点而是编程是拿来解决问题的。它是一个非常实用的手段。哪怕后来我也会爱上语言、类型系统、函数式编程这些东西我最深的底色还是没变。归根结底写代码是为了把东西做出来。主持人你后来去做创业、去 YC、去各种 startup好像也一直延续着这种实用主义。Boris Cherny对。最早我做过一些很野的项目。比如我们还搞过一个大麻点评网站说白了就是试图做一个相关的评论产品。后来又做过别的创业项目。整个过程对我最有吸引力的始终不是把某项技术做得多漂亮而是不断验证假设、找产品市场匹配。我印象特别深的是后来那个医疗软件公司。我们做一套给医生用的决策树工具试图把一些临床决策流程标准化。产品做出来日活很平我怎么也想不通。我当时骑着摩托去 UCSF跟着医生观察他们怎么工作。然后我才发现问题根本不是产品逻辑没写清而是医生在那个场景下根本没有时间坐下来打开电脑。后来我们又改成 Android还是不行。再往后才意识到医生在带着一串住院医查房那是一个社会性场景他们甚至不愿意被看见一直盯着手机。主持人所以你那时候已经在做今天所谓产品工程师会做的事了。不是坐在工位上猜用户而是直接去看。Boris Cherny对。对我来说最有意思的不是坚持最初那个想法而是承认你最初那个想法大概率是错的。你要不断试、不断修正。这个习惯后来其实一直跟着我。今天为什么我会天然相信原型比 PRD 更重要很大程度上就是因为我很早就习惯了别过早迷信纸上的答案先去碰真实世界。为什么应该重视代码质量主持人你在 Meta 待了七年后来又在 Instagram、再去做跨 Meta 的代码质量治理。这段经历显然也深深影响了你。Boris Cherny对。我一开始在 Facebook Groups后来去了 Instagram。当时有个很强烈的反差Facebook 那套基础设施太强了Hack、HHVM、GraphQL、Relay、React整个开发栈极其完整。然后我到 Instagram看到的是另一套很拼起来的系统Python 类型检查不灵、点击跳转定义不灵很多事情都不好用。我一开始是去 Instagram Labs 想做新东西但很快意识到我在那套栈里根本干不快。所以后来我干脆转去做开发基础设施从 Python 往大一统 monolith 迁、从 REST 往 GraphQL 迁。再往后我开始更深地做代码质量到离开 Meta 前我基本是在负责跨 Instagram、Facebook、Messenger、WhatsApp 等多个代码库的质量问题。主持人你后来还提到一个很重要的判断代码质量对生产率的影响是可以被测出来的。Boris Cherny是而且是双位数的影响。我们那时候会做一些因果分析试图搞清楚哪些因素真的会影响工程师生产率。代码质量绝对是其中之一。因为如果你的代码库是半迁移状态到处都有 X、Y、Z 三套框架残留你每次做事都得先判断该走哪条路新人会痛苦模型也会痛苦。你不是只是在让代码更漂亮你是在降低整个系统的理解成本。这也是为什么我今天看 AI 编码会天然把代码质量、lint 规则、迁移治理、确定性检查放在很重要的位置。很多人以为模型更强之后这些事情就不重要了我的感觉正好相反代码越是大量由 AI 生成验证和约束就越重要。Claude Code 一开始只是一个终端聊天框后来突然变质了主持人回到 Claude Code 本身。它最早到底是怎么开始的Boris Cherny最早我只是想熟悉 Anthropic 的 API。我不想先去搭一个图形界面所以就随手写了个终端里的小聊天程序。说白了当时我对 AI 的理解还停留在聊天机器人因为那就是大家当时对 AI 的主流理解。后来我开始想试工具调用。工具调用刚出来的时候我也并不知道它到底意味着什么。我给它的第一个工具就是 bash。然后我随口问它我现在在听什么歌它就自己写了一段 AppleScript去调用播放器再把结果返回给我。那是我第二次强烈感到 AGI 逼近的时刻模型似乎天然就想使用工具。再往后我给了它文件编辑能力、文件系统能力。那一刻事情彻底不一样了。它不再只是一个聊天框而是开始自己读文件、看导入关系、顺着依赖一层层找上下文直到找到足够好的答案。对我来说那才是真正的 Claude Code 起点。主持人你后来给这件事用了一个非常 Anthropic 味的词product overhang。Boris Cherny对。所谓 product overhang就是模型已经能做某件事了但还没有对应的产品把它接出来。我第一次看到模型自己探索文件系统的时候就意识到这就是一个巨大的 product overhang。能力其实已经在那了只是之前没人把它变成产品。主持人Claude Code 在 Anthropic 内部扩散很快。你们后来是不是认真讨论过要不要只留着自己用Boris Cherny认真讨论过。因为内部使用增长的速度实在太夸张了。最早的内部版本出来后工程师几乎是用脚投票。我们没有强推没有行政命令但很快就看到采用曲线几乎是垂直往上。后来不仅技术员工几乎人人在用连很多非技术员工也开始用。所以我们当然会想如果这东西对我们自己这么有帮助它会不会就是我们的秘密武器为什么要公开最后我们决定公开是因为 Anthropic 从根上说是一家重视安全的公司。我们做产品很大程度上也是为了更好地理解模型的安全边界和能力边界。光在实验室里做评估不够你得把工具放到真实世界里看用户怎么用、会遇到什么问题、暴露出哪些风险。Claude Code 如果真的能让这么多人上瘾那它就值得被放出去也值得在真实世界里被研究。主持人所以今天看那不只是一次产品发布还是一次把安全研究带到真实世界的决定。Boris Cherny我觉得是。对 Anthropic 来说这两件事并不是分开的。Opus 4.5 之后基本不再手写代码了主持人你什么时候真的跨过了那条线开始让 Claude Code 写掉你几乎所有代码Boris Cherny基本就是 Opus 4.5 出来之后。那个切换几乎是瞬间发生的。我们内部先自己把产品用了一阵我很快发现我根本不需要再开 IDE。后来我甚至把 IDE 卸了。不是出于某种仪式感而是过了一个月才突然意识到我其实已经不用它了。有段时间我在欧洲旅行一边四处漂着一边工作。那段时间我每天会提 10 到 20 个 PR用 Opus 4.5 加 Claude Code 写了 100% 的代码我一行都没手改。最后回头一算那个月模型只引入了大概两个 bug如果是我手写我可能会引入二十个。主持人你真的敢说它写得比你还好。Boris Cherny我现在是会这么说。至少在大量场景下它写得比我好。尤其是在我不熟的代码库和不熟的技术栈里这个差距非常明显。主持人你现在的工作流非常有代表性。很多人听到你会先想到五个窗口、规划模式、并行 agent。你自己怎么描述今天的工作状态Boris Cherny我通常会同时开五个终端窗口每个窗口都是一个独立的工作副本。大多数时候我先让它们都进入规划模式然后轮流给任务。一个 Claude 在想计划的时候我去开第二个第二个在跑我去开第三个。等第一个返回我再回来看它。整个过程更像轮转式推进而不是我在一个任务里深潜到底。过去当你熟悉一个代码库时所谓高效更多是深度专注、自己实现。现在我觉得角色变了。尤其是模型足够强之后一旦计划对了它常常能一次写成。所以最关键的环节变成你如何把计划打磨对、如何校准多个并行任务、如何在多个上下文之间切换。主持人也就是说工程师越来越像一个调度多个 agent 的人。Boris Cherny我觉得是这样。不是说实现不重要了而是实现越来越不是瓶颈。瓶颈往上移了移到了任务定义、计划、验证、并行管理这些层面。主持人你提到五个窗口、多个工作副本、Git worktree、桌面应用、甚至手机端。这些细节本身也很有意思。Boris Cherny对。我以前会在多个独立工作副本里跑。后来桌面应用加了内建 Git worktree 支持用起来更方便。最近我也越来越常用 iOS 应用早上醒来先在手机上起几个 agent。这件事如果你六个月前告诉我我根本不会信。但现在它真的就是我工作流的一部分。学习模式给新人规划模式给高产的人主持人你也提到一个很重要的区别新手怎么用 Claude Code和像你这种熟手怎么用其实不是一回事。Boris Cherny对。如果你刚进一个代码库学习模式或解释模式非常有用因为你需要它多解释、多展开你需要跟着它一起理解系统。但如果你已经熟悉环境目标就是尽快把事情做出来那重点就变了。你不想一直盯着它逐步读文件你想的是先把计划搞对然后让它去做。所以对我来说熟手模式几乎就是多开 agent先规划再实现。我的角色不是和它一起敲而是更像个调度者——给任务、看计划、修计划、继续推进。主持人你现在动辄 20、30 个 PR 一天。很多人可能会想这是不是意味着很多 PR 其实都很小Boris Cherny有大有小。有的是几行有的是几百行有的是几千行。但跟以前最大的不同是过去高产工程师很多产出其实是迁移式产出比如大规模把 A 换成 B里面很多是一行一行、模式化的改动。现在不是。现在这些模式化工作Claude 自己就能做掉。所以我每天发的那些 PR虽然数量也很多但每一个都可能是完全不同的事情。换句话说PR 数量本身已经不足以说明问题。真正变的是过去要花很多时间的实现劳动被极大压缩了而我可以把精力放在更多不同的问题上。主持人一个自然的问题是当 AI 开始写这么多代码审查怎么办Boris Cherny对我来说代码审查没有消失只是层级变多了。过去我做审查有个方法每次我在审查里看到同类问题就把它记进表格。某个问题累积够多了我就把它写成 lint 规则。因为我一直觉得工程师最大的超能力之一就是把枯燥劳动自动化掉。今天这个逻辑没有变只是工具升级了。Claude Code 写代码时往往会自己跑测试、自己写测试。我们在 Claude Code 团队里还会让它先用 Claude 审查一遍在持续集成里跑第一层自动检查。它甚至会启动自己来做端到端自测。但最终仍然有人类审查者在后面做第二轮审查。尤其是面对企业用户的产品安全、隐私、正确性都太重要了。至少今天我完全不相信人可以退出回路。主持人所以现在的审查更像是类型检查、lint 规则、构建、测试、Claude 审查、人类审查一层叠一层。Boris Cherny是。我觉得这才是更真实的未来不是审查被 AI 取消而是验证被分层、被前移、被自动化得更彻底。权限与沙箱机制不是锦上添花而是 Claude Code 能不能存在的前提主持人这次源码风波之后很多人都去看 Claude Code 的提示词、安全、权限、沙箱。你在访谈里其实讲得很早权限控制一开始就是个生死问题。Boris Cherny对。非常早的时候内部就有人说你不能让模型自己跑 bash这太危险了。甚至有人觉得agent 式安全根本不可解所以这种产品不该存在。后来我们想到一个最核心的办法就是权限提示。如果系统不能确定某个动作是否安全那就把人放进回路里让人决定。这其实是 Claude Code 最早期就有的设计今天大家看起来觉得它很自然但当时它就是让整个产品可以存在下去的那个关键点。当然后面还有很多工程分类器、静态分析、允许列表、默认只放行足够安全的命令、各种更细的约束。因为你会发现很多你以为只读的命令实际都有办法被玩出执行路径。所以安全这件事不存在一个单一开关它永远是层层叠加的瑞士奶酪模型。主持人你们后来又做了 Claude Co-Work。外面看会觉得这是不是只是一个漂亮一点的界面包装层Boris Cherny有些地方比你想的简单有些地方比你想的复杂。产品表面上确实很简单它就在 Claude 桌面应用里是一个标签页和 Code 标签页、聊天标签页并列。底下跑的还是 Claude Code 和 Claude Agent SDK。但真正复杂的地方其实还是安全。因为 Co-Work 面向的是非技术用户。你不能让一个人刚开起来就意外删掉家里的照片。于是你就需要前后端一整套保护措施后端有分类器前端有虚拟机还有大量操作系统层面的保护。再加上非技术用户很多工具不是命令行而是浏览器、MCP、Chrome 扩展所以权限模型还得重新设计。表面上看像个薄壳实质上很多复杂度都藏在安全和权限控制里。主持人所以它不是 Claude Code 套个皮而是把同一套 agent 能力迁移到非技术用户可用的场景中去。Boris Cherny对而且越是面向非技术用户你越不能只把能力交给人还得把边界做得更牢。很多工程量其实就埋在这里。Agent Teams 的重点不只是更多 agent而是让更多上下文窗口并行工作主持人你们最近又发了 Agent Teams。很多人简单理解成让一群 Claude 一起干活。它真正有意思的地方是什么Boris Cherny背后一个很关键的概念是彼此不高度耦合的上下文窗口。简单说如果你让同一个 Claude 连续干两件事第二件事会继承第一件事的上下文但如果你启动一个子 agent它是一个新的上下文窗口只带着主 agent 给它的提示出发它并不知道父上下文里的全部东西。这种彼此不高度耦合的上下文窗口在很多复杂任务上反而会给你更好的结果。某种意义上它是一种测试时计算你不是单纯往一个窗口里塞更多 token而是让多个相对独立的窗口协作最后把结果汇回来。我们其实从很早就在试这件事但一直到 Opus 4.6才觉得模型终于足够会用它了。你会看到一些很有趣的 agent 之间的交流也会看到在复杂任务上结果显著提升。当然代价是 token 消耗非常大所以目前它还是更适合复杂任务也仍然是研究预览版。主持人这场变化对很多工程师来说不只是效率问题还有一种身份上的失重。你也曾经是那种以写代码能力著称的人这对你意味着什么Boris Cherny我完全理解这种感觉。因为我自己也走过一个很长的路径。最开始编程对我是工具后来我真的爱上了语言、类型系统、工具链本身。我掉进过很深的兔子洞写 TypeScript 书、办 TypeScript meetup、痴迷 Scala、痴迷函数式编程去思考类型签名本身的美感。哪怕今天模型在写代码我还是会先想类型。所以我非常理解那种“这东西我花了很多年才学会它怎么突然变成人人可得”的失落感。只是我最后还是会回到最早那个判断上写代码归根结底是一种建造手段。它可以有艺术性、有美但它首先还是用来做东西的。主持人你反复用了一个比喻印刷机。为什么是印刷机Boris Cherny因为它和今天的感觉真的很像。以前有一小群抄写员他们会写字为君主、教会、权力中心服务。识字和书写是极度稀缺的技能。后来印刷机来了印刷材料的成本在几十年里迅速下降数量激增识字率再慢慢上升。真正重要的不是抄写员消失了而是整个书写、传播、知识生产的市场都被放大了。你很难说在印刷机刚出来的时候有谁能准确预测后面会出现作者、现代出版甚至更远处的一整套现代经济结构。同样我今天也不觉得我们能准确预测 AI 编码最终会带来什么。它最令人兴奋的地方恰恰是现在还说不准。主持人所以对程序员来说这不是一个简单的饭碗还在不在的问题而更像是你原来身处的那个稀缺结构正在松动新的结构还没完全出现。Boris Cherny对。我觉得这才是最真实的感受。最先贬值的不是工程师而是很多旧时代的执念主持人你在 Anthropic 待了一段时间以后回头看最强的那批人你觉得他们有什么共同点Boris Cherny很难点名因为真的有很多强得离谱的人。但如果你非要总结我会说越来越多特别突出的是那种复合型人才。他们不只是代码写得好而是能在多个相邻领域之间移动有人特别擅长把一个想法从 0 推到 0.5快速做出原型有人很擅长把一个有点苗头的东西推到产品市场匹配还有越来越多的人本身就是产品和工程的混合体或者工程和设计的混合体甚至业务和技术之间也能穿梭。主持人所以你后来那句“这是通才的一年”并不是一句时髦判断而是你在组织内部已经看到了这种变化。Boris Cherny对我是从现实里得出的这个判断。不是说深度不重要而是单一维度的深度已经不够了。会横向连接、会跨边界协作、会快速试错这类能力正在变得越来越值钱。主持人你和 Andrej Karpathy 那段关于程序员第一次真的感到落后的讨论其实很能代表很多人的情绪。你自己怎么消化这种变化Boris Cherny老实说我也很挣扎。模型变得太快了以至于你过去对什么方法有效的判断会在几个月里迅速失效。以前失败过的路现在可能行了以前最优的方式现在可能过时了。其他技术很少这么变所以你其实没什么历史经验可以照搬。我觉得最后逼出来的是一种不断把自己变回初学者的能力。你得保留初学者心态保留智识上的谦逊。以前别人提一个旧点子你会说我们早试过没用。今天这种反应未必成立因为模型每几个月就会把旧答案改写一次。主持人你甚至看到更年轻或更晚加入的人在某些地方比你更会用这套系统。Boris Cherny完全会。团队里一些更年轻、更晚加入的人有时候会直接做出我根本没想到该去试的事情而且它还真的有效。我现在越来越接受这一点你不能太快用旧经验关门。主持人那如果落到今天最具体的问题上什么能力在贬值什么能力在升值Boris Cherny我觉得最先会没那么值钱的是很多围绕语言、框架、代码风格的强意见。以前这些差异可能真的决定工程效率现在模型可以很快地在不同语言和框架之间工作你不喜欢它写的方式它甚至可以给你重写。所以这类争论的价值会下降。真正还在升值的是更讲方法、更基于假设来推进的做事方式。调试仍然需要这种能力产品探索也需要这种能力。再往上是好奇心是愿意走出自己泳道的意愿。你不只是懂工程你还懂产品、懂业务、懂设计能把这些东西串起来这种人会越来越值钱。我确实觉得这会是通才的一年。主持人你甚至还说了一句很有记忆点的话今年可能也是 ADHD 的一年。Boris Cherny对这句话当然有点开玩笑但也有点真。因为今天很多工作变成了在多个 agent、多个上下文之间快速切换。以前深度单线程专注几乎是唯一美德现在上下文切换本身也在变成能力的一部分。主持人但你本质上要说的也许还是适应力。Boris Cherny对。你得能变。每次新模型出来工作方式就可能再改一轮。原视频链接youtu.be/julbw1JuAz0投稿或寻求报道zhanghycsdn.net48 小时与 50 位大厂技术决策者共探 AI 落地真路径由 CSDN奇点智能研究院联合举办的「全球机器学习技术大会」正式升级为「奇点智能技术大会」。2026 奇点智能技术大会将于 4 月 17-18 日在上海环球港凯悦酒店正式召开大会聚焦大模型技术演进、智能体系统工程、OpenClaw 生态实践及 AI 行业落地等十二大专题板块特邀来自BAT、京东、微软、小红书、美团等头部企业的 50 位技术决策者分享实战案例。旨在帮助技术管理者与一线 AI 落地人员规避选型风险、降低试错成本、获取可复用的工程方法论真正实现 AI 技术的规模化落地与商业价值转化。这不仅是一场技术的盛宴更是决策者把握 2026 AI 拐点的战略机会。

更多文章