ENZH
和 AI 讨论这篇文章
ChatGPTClaude

为什么偏偏是 claude code 赢了

📊 幻灯片

从一个终端窗口伸出的无限触手——Claude Code 的缰绳效应从一个终端窗口伸出的无限触手——Claude Code 的缰绳效应


2 月初 SemiAnalysis 发了一份报告,标题就叫《Claude Code is the Inflection Point》。报告里说,截至 2 月 2 日,Claude Code 的日均代码提交量已经占到 GitHub 公共提交的 4%,照这个增速推下去,到 2026 年底会超过 20%。20% 这个外推不知道最后能不能兑现,但我只能说,4% 本身已经很吓人了:GitHub 上是数千万活跃开发者,而 Claude Code 发布才 13 个月,不是 IDE,也不是什么 SaaS 平台,就是终端里的一个命令行工具。

而且不只是提交量这一个数。Mercury 的数据说,70% 的创业公司把 Claude 选作首选模型。NASA 拿 Claude Code 给火星探测器 Perseverance 算轨道,团队还把这件事做成海报挂在办公室里,Boris 的原话是「这是最酷的事」。从 YC 初创到火星任务都在用,这个覆盖面已经不是一个指标能说清的了。

我自己天天在 Claude Code 里干活,这些数字我一点不意外。让我意外的是,主流分析机构终于开始认真对待这件事了。


报告里有个类比我觉得抓得挺准的:ChatGPT 时代是 Web 1.0,Claude Code 时代是 Web 2.0。Web 1.0 是静态网页,发一个请求,服务器回一个页面;TCP/IP 是底层协议,但真正创造万亿价值的,是后来建在上面的动态应用。ChatGPT 的 API 就是 AI 世界的 TCP/IP:发过去一段文字,回来一段文字,一问一答。

Claude Code 干的是另一件事。它在模型外面套了一层 harness(模型外面那层控制程序):读 codebase、定执行计划、调工具、跑命令、验证结果、自己 debug,一直迭代到任务做完。有了这层 harness,模型干的事就从「回答问题」变成了「完成任务」——或者说,以前是你问它答,现在是你给它一个目标,它自己把整件事跑完。

harness 外壳把模型套进读代码→定计划→调工具→验证→自己 debug 的循环,从回答问题变成完成任务harness 外壳把模型套进读代码→定计划→调工具→验证→自己 debug 的循环,从回答问题变成完成任务


Boris Cherny 是 Claude Code 的作者,这个产品怎么来的,他在访谈里讲得挺清楚的。2024 年 9 月,他就是想试试 Anthropic 的 API,用 TypeScript 写了个最简单的终端聊天程序,然后给模型加了个 Bash 工具,纯粹因为文档示例就是这么写的。模型能读文件了,也能跑命令了。然后他随口问了句「现在在听什么歌」,模型自己写了一段 AppleScript,控制了他的 Mac,查了音乐播放器,把正在放的歌名报给他。当时用的还是 Sonnet 3.5,放今天看是个能力很有限的模型。没人教它这么干,prompt 里也没写「请控制用户电脑」,它拿到工具之后,自己想出来怎么用工具把这件事办了。

Boris 说那是他第一次真正有 AGI 的感觉:「这个模型只是想要使用工具。这就是它想做的全部事情。」


不过起源故事只讲了一半。harness 重要,但模型本身的进化更重要。今天的 foundation model 已经不是文本补全机器了:Opus 能自己想下一步做什么,判断该调哪个工具,看返回结果再决定下一步,一串决策连着做,直到把复杂任务做完。思考、行动、判断、再行动,这个循环就是 agentic model 的底层。codebase 访问、shell 命令、API 调用、文件系统,这些只是它的行动空间,真正做决策的是模型自己。

这跟以前所有的自动化都不一样。CI/CD 管线、自动化脚本、RPA,全是按写死的规则跑:if A then B, else C,没有判断力,遇到意外就卡死。agentic 范式是模型先理解任务、拆目标、规划路径,再去调工具执行,一条路走不通就换一条。所以它的能力边界不再卡在预设规则上,上限变成了模型的判断力,而判断力在指数级涨。第五篇说的那 99.99% 的人,对 AI 的印象可能还停在一个更聪明的搜索引擎上。用过 Claude Code 就知道,AI 已经可以直接把事情干了,从头干到尾那种。

传统自动化按写死的规则跑、遇障碍就卡死,agentic 范式先理解再规划、遇阻能换条路传统自动化按写死的规则跑、遇障碍就卡死,agentic 范式先理解再规划、遇阻能换条路


那为什么偏偏是 Anthropic?模型能力上头部几家的差距越来越小,算力 OpenAI 更多,用户基数上 ChatGPT 的月活也远超 Claude。我只能说,Anthropic 先看明白了一件事:「编排」比「生成」更重要。benchmark 上多两分少两分,他们好像没那么在意,心思都花在怎么让模型真正替人把事做完上面。

他们交出的答案,是一个看起来很「原始」的终端工具。这个选择甚至算不上深思熟虑:Boris 说做终端程序纯粹因为当时团队只有他一个人,不需要也没时间做 UI,本来就是个原型,一个最便宜的起点。但他们后来留在了终端,原因挺有意思:模型进步太快,他们觉得任何 UI 六个月后都会过时,终端反而因为「原始」成了最耐久的形态。

内部的采用速度也验证了这个判断。第一版原型做出来两天,对面坐的工程师 Robert 就自己用上了,没人让他用。准备对外发布的时候,Dario Amodei 看着内部使用量的图表问:「DAU 图表完全垂直上升。你们在强制工程师使用吗?」Boris 说没有,就发了个帖子,大家就开始互相安利了。


终端这个选择反直觉,但背后的逻辑很硬。IDE 插件更友好、更「产品化」,可插件里的 AI 只能在受限的沙箱里辅助写代码。终端意味着完整的计算机访问权限:读文件系统、跑 shell 命令、调 API、部署服务,行动空间没有上限。Cursor 和 Copilot 那套,本质上还是人在写代码,AI 在旁边搭把手。Claude Code 是你把想要什么说清楚,剩下的它自己去跑。这两个东西看着都叫 AI 编程,其实差得挺远的,差的是整个干活的方式。


还有一个点我觉得真的很牛:他们对模型能力曲线的判断。Boris 说团队的核心信条是,不要为今天的模型做产品,要为六个月后的模型做产品。最初发布的时候,模型只能写他大概 10% 到 20% 的代码,产品并不好用,他们赌的就是模型会变强。而且这对他们来说都不太算赌:三位联合创始人就是 Scaling Laws 论文的前三位作者,指数增长在他们那里是日常经验,不需要说服自己。

团队办公区的墙上,挂着装裱好的 Rich Sutton 的《苦涩的教训》,核心论点就一条:更通用的模型最终总是赢过更专门的模型。所以他们不给 Claude Code 加复杂的脚手架和 workflow 编排。Boris 说脚手架或许能提 10% 到 20% 的性能,但下一个模型一出来,这点增量就被抹平了,与其不停重建脚手架,不如把注押在模型本身上。

这套打法落到代码上,就是一个挺离谱的事实:Claude Code 没有任何一行代码是六个月前写的。产品被反复重写,不再需要的工具删掉,新的加进来,每隔几周迭代一轮,代码的保质期可能就几个月。


Claude Code 团队用 Claude Code 开发 Claude Code。Boris 说自从 Opus 4.5 之后,他个人 100% 的代码都是 Claude Code 写的,IDE 已经卸载,没有手动编辑过一行,每天提 10 到 30 个 PR。今年 1 月推出的 Cowork,4 个工程师 10 天做完,全部由 Claude Code 编写。Plan Mode 这个功能,Boris 说实质上就是在 prompt 里加了一句「请先不要写代码」,他周日晚上看 GitHub Issues,花 30 分钟写出来,第二天早上就上线了。用户需求直接变成功能,产品自己造自己,这个自我强化的循环,竞争对手很难抄。

Claude Code 用自己造自己,用户需求直接变功能,形成对手难抄的自我强化循环Claude Code 用自己造自己,用户需求直接变功能,形成对手难抄的自我强化循环

这还带出来一种挺独特的工作方式:并行 agent。简单的 bug 一个 agent 就够了;复杂的问题,Boris 会同时开三到五个甚至十个 agent,每个从不同的角度去查。他管这个叫不相关的 context window:独立的 context window 越多,整体能力越强,快只是顺带的。

Boris 觉得 Plan Mode 活不太久,他说可能一个月。Claude Code 已经能自己判断要不要先规划再动手,下一步是模型完全不需要这种显式的模式,功能就这样一点点被吸收成模型的基础能力。


有人问 Boris 今年会发生什么,他给了两个边界。下界是编码对所有人来说都被解决了,「软件工程师」这个头衔开始消失,换成 builder 或者产品经理这类叫法。上界他自己说「恐怖得多」:ASL4,模型开始递归式自我改进。ASL 是 Anthropic 的安全等级体系,定义了发布更强模型之前必须满足的严格标准。Boris 说他在食堂偷听到的对话里,大家聊的都是 AI 安全,「这真的是每个人最关心的事」。把编码 agent 做到最强的这家公司,内部聊得最多的却是安全,我觉得这个组合挺有意思的,也确实只有他们是这样。


如果只有我一个人这么说,可能是个人偏见,所以值得听听写了几十年代码的人怎么说。分量最重的是 Andrej Karpathy,一年前造出 vibe coding(氛围编码)这个词的人。他最近说,他已经明显感觉到手动编写代码的能力在慢慢退化,代码生成和代码解读在大脑里是两种不同的能力。这话从他嘴里说出来我是信的,他天天泡在这些工具里,自己什么能力在退化,他自己的感受最直接。

类似的话,别人说得更直接。NodeJS 的作者 Ryan Dahl 直接宣判「人类编写代码的时代已经结束」;Rails 的作者 DHH 说手写 Ruby 代码如今已经是奢侈体验,这门手艺或许很快会失传;连 Linus Torvalds 都开始用 AI 辅助编程了。

前 Google 工程师 Steve Yegge 给了个更夸张的数字:一个 Anthropic 工程师现在的平均生产力,是巅峰期 Google 工程师的 1000 倍。「10 倍工程师」存不存在,三年前行业还在争,这边直接给了个 1000 倍,而且基准还是巅峰期的 Google 工程师。这个数字听着夸张,但我是信的。Anthropic 内部自从引入 Claude Code,每个工程师的生产力提升了 150%。Boris 之前在 Meta 管全公司的代码质量,Facebook、Instagram、WhatsApp 所有的 codebase,专门团队干一整年,能看到几个百分点的提升。150% 放在传统软件工程的语境里,根本不可想象。

连招聘方式都在变。YC 正在试让候选人提交 Claude Code 的 session 记录,看他跟 agent 一起开发功能的完整过程。合伙人说这能看出一个人怎么思考:会不会看日志,agent 跑偏了能不能纠正,有没有系统思维。说白了,现在看的就是你能不能驾驭 agent,代码本身写得怎么样反而没那么重要了。

反正定义了现代编程的这批人,正在各自用自己的方式说同一件事:手写代码的时代正在结束。但把 Claude Code 只当成编程工具用,还是会错过真正在发生的事,因为编码只是这场范式转移的第一站。它怎么从代码扩展到一切,第九篇接着聊。


和 AI 讨论这篇文章
ChatGPTClaude

订阅更新

新文章发布时发到你的邮箱,不发别的。


© Xingfan Xia 2024 - 2026 · CC BY-NC 4.0