Back to Articles
Feb 18, 20262 hours ago

People Only Do What They're Already Doing – The Product Philosophy Behind Claude Code

宝玉@dotey

AI Summary

This article delves into the remarkable, accidental rise of Claude Code, a terminal-based AI coding tool that achieved $1 billion in annualized revenue within six months of launch. Through a conversation between its creator, Boris Cherny of Anthropic, and Garry Tan, we explore the unconventional product philosophy that guided its development. At its core is the principle of "latent demand": the idea that people only do what they're already doing, so successful products must simplify existing behaviors rather than invent new ones. This insight explains why a tool built in the terminal for sheer convenience, with no user interface, became a powerhouse that now contributes to 4% of public code commits on GitHub. The discussion reveals profound shifts in software development. Cherny details how Anthropic builds for the model they expect in six months, not the one they have today, leading to features like the famously simple "Plan Mode"—just a prompt telling the model "please don't write code"—that he predicts will be obsolete within a month as models gain autonomous planning. He shares staggering internal data, like a 150% increase in engineering productivity, and argues that the title "software engineer" is fading, replaced by "builders" who orchestrate AI agents. The future, as illustrated by stories of agents autonomously building features over a weekend or contacting colleagues on Slack for clarification, is one where human roles evolve from writing code to guiding, specifying, and collaborating with increasingly autonomous AI. This is a must-read for anyone interested in the practical, near-future impact of AI on work and product strategy. It moves beyond hype to offer a grounded, firsthand account of building at the frontier, where the most crucial skill may be the humility to unlearn old methods and embrace what the next model can do. For a deeper understanding of how to navigate this accelerating landscape, the full article provides invaluable insights from the team shaping it.

Boris Cherny是 Claude Code 的创建者。Claude Code 在 2025 年 5 月公开发布后仅 6 个月就达到 10 亿美元年化收入,目前贡献了 GitHub 上 **4%**的公共代码提交。在 YC 播客 The Lightcone 的这期节目中,Boris 和 Garry Tan 聊了聊 Claude Code 是怎么从一个“学 API 用的终端小工具”意外长成现在这个样子的,以及他对 AI 编程未来的判断。

原始视频来源:The Lightcone(YC 播客),2026 年 2 月。https://www.youtube.com/watch?v=PQU9o_5rHC4

要点速览

Claude Code 最初只是 Boris 为了学 API 写的终端聊天工具,选终端是因为不用做 UI。它至今还在终端里运行,这件事连 Boris 自己都觉得不可思议。

Anthropic 的产品哲学是 “不为今天的模型构建,为六个月后的模型构建”。Claude Code 正式发布时只能写 Boris 约 10% 的代码,但团队赌对了模型进步方向。

Plan Mode 的全部技术实现就是在 prompt 里加一句 “请不要写代码”。Boris 预测一个月内它就不需要了。

Claude Code 推出后,Anthropic 人均工程生产力增长了 150%。Boris 在 Meta 时,数百人工作一年才能实现 2% 的提升。

Boris 个人从 Opus 4.5 开始 100% 使用 Claude Code写代码,卸载了 IDE,每天提交约 20 个代码合并请求(PR)。他认为“软件工程师”这个头衔将逐渐消失。

从“我在听什么音乐”到 AGI 时刻

Garry Tan 问 Boris 最初是怎么想到做 Claude Code 的。

Boris 说这完全是偶然。Anthropic 长期押注的路径是:先教模型写代码,再教它用工具,再教它操作电脑。他加入的 Anthropic Labs 团队最终产出了三个产品:Claude Code、MCP【注:Model Context Protocol,Anthropic 推出的模型与外部工具交互的开放协议】和桌面 App。

但没有人让他做命令行工具。Boris 当时的任务是探索某种编码产品,他先需要搞懂 Anthropic 的 API 怎么用,就随手写了个终端聊天 App。

“选终端是因为不用写 UI。当时就我一个人。”

然后 Anthropic 推出了 Tool Use 功能。Boris 觉得好奇,就给模型加了个 bash 工具,直接从文档示例搬过来的,Python 原版移植成了 TypeScript。他先让模型读了个文件,行,能用 cat。然后他问了一句:“我在听什么音乐?”

Claude 写了一段 AppleScript,调用他 Mac 上的音乐播放器查了当前播放的歌。那还是 Sonnet 3.5 时期。

“那是我第一次真正感受到 AGI 的时刻。我意识到:这个东西就是想用工具,它只想跟世界互动。”

Garry 说 Claude Code 在终端里运行这件事挺反直觉的,当时 Cursor、Windsurf 这些 IDE 正在起飞。Boris 说当时团队处于完全探索状态,没人有足够信心说应该做什么。他选了最省事的方案,结果这个方案一直用到了今天。

“不可思议的是我们还在用终端。那本来应该是起点,不是终点。”

两天传遍 Anthropic

原型做出两天后,Boris 把它给了团队做内部测试。第二天早上他发现同事 Robert 已经在用这个东西写代码了。Boris 说“你在干嘛?这东西还没准备好,只是个原型啊”。但它已经有用了。

2024 年 11 月或 12 月,团队准备对外发布时做了个上线评审。Dario Amodei看到内部日活(DAU)增长图几乎是一条垂直线,问 Boris 是不是在强制工程师使用。Boris 说没有,他只是发了个帖子,然后大家互相安利就传开了。

早期工程师主要用它自动化 Git 操作和容器管理,写代码还不太行。Boris 自己主要用它处理 Git,到现在他可能已经忘了大部分 Git 命令了。第一个真正的编码用例是写单元测试,因为风险相对较低。

CLAUDE.md 只需两行

谈到 CLAUDE.md 的由来,Boris 说这又是一个潜在需求(latent demand)的例子。用户自发开始写 markdown 文件让模型读,Boris 观察到这个行为后才把它产品化。

他反复强调“潜在需求”是他最重要的产品理念:人们只会做他们已经在做的事,你不能让人做新事情,只能帮他们把正在做的事做得更简单。

Garry 问他的 CLAUDE.md 长什么样。Boris 说录节目前刚看过,只有两行:第一行是提交 PR 后自动合并;第二行是 PR 提交后发到团队频道让人审批。其他指令都在团队共享的 CLAUDE.md 里,大概 2000 多个 token。Boris 每周会多次在别人 PR 上直接 tag Claude,让它把新规则加进去。

Garry 说自己的 CLAUDE.md 已经膨胀到好几千 token 了。Boris 的建议很直接:删掉,从头来过。

“很多人把 CLAUDE.md 搞得太复杂了。模型能力随着每次更新在变,你需要的是做最少的事情让模型走上正轨。删掉后如果模型跑偏了再加一点回来。你会发现每个新模型需要的指令越来越少。”

Boris 还提到围绕模型构建的 “脚手架”(scaffolding)可以把性能提升 10-20%,但下一个模型出来后这些优化就会被抹平。这也是他们一直留在命令行的原因:他们觉得任何 UI 在六个月后都不会还有意义,因为模型进步太快了。

Plan Mode 的 30 分钟诞生和即将消亡

Garry 问 Boris 是不是觉得以后不需要那么明确地给模型下指令了。Boris 的回答让他大吃一惊:“也许一个月后就不需要 Plan Mode 了。”

Boris 认为 Plan Mode 的寿命有限。他解释说 Claude Code 现在已经可以自己决定何时进入 Plan Mode 了,团队正在调试这个体验,目标是让 Claude 在人类本来想手动触发 Plan Mode 的同一时刻自己进入。

Plan Mode 在技术上其实很简单。

“Plan Mode 没有什么秘密。它只是在 prompt 里加了一句'请不要写代码'。”

这个功能的诞生过程同样简单:Boris 周日晚上 10 点在浏览 GitHub issues 和内部 Slack 反馈频道,看到用户一直在说“先想想方案,别写代码”之类的话。他花了 30 分钟写完代码,当晚发布,周一早上上线。

虽然他预测 Plan Mode 即将消亡,Boris 自己现在是重度 Plan Mode 用户。他 **80%**的会话(session)以 Plan Mode 开始。他会在多个终端标签页同时开 Plan Mode,用完终端标签后还会打开桌面 App 的 Code 标签继续开。一旦方案确定,让 Claude 执行,Boris 说用 Opus 4.5 以来基本每次都能准确执行。

“以前你得在方案规划前和规划后都看着它。现在只需要在规划前看着。下一步可能连规划都不用管了。”

Garry 开玩笑说下一步就是 Claude 直接跟你的用户对话。Boris 说这其实已经在发生了。他们的 Claude 会互相对话,会在内部 Slack 上跟用户交流。Boris 的 Claude 有时还会通过 Co-Work 自动发推文,不过他通常会删掉,因为语气有点“尬”。

更常见的模式是:Boris 让 Claude 做某件事,Claude 看代码库时通过 git blame 发现某个工程师之前改过相关部分,就自动在 Slack 上找那个人问一个确认问题,拿到答案后继续干活。

从内存泄漏看“新手”为何比“老手”更会用 AI

Garry 问技术创始人怎么才能跟上最新模型的能力边界。Boris 认为关键是初心者心态和谦逊。高级工程师过去被奖励“有很强的观点”,但很多这些观点现在已经不再适用了。

他讲了一个内存泄漏的故事。有个内存泄漏需要排查,Boris 按老办法来,抓内存快照,在开发者工具里翻性能分析,看代码。团队另一个工程师 Chris 直接让 Claude Code 处理。Claude 自己抓了内存快照,自己写了一个分析工具,然后比 Boris 更快地找到了泄漏。

“这是我必须不断重新学习的,因为我的大脑有时还停在六个月前。”

Boris 说他招人时会问一个简单问题:“举一个你犯错的例子。” 他想看候选人能不能承认错误、把责任归到自己身上、从中学到东西。他自己估计大约一半的想法是错的,“你必须不断尝试,把东西给用户,跟用户聊天,学习,然后也许最终会找到好主意。有时候找不到。”

两种工程师画像和一个元编程故事

Garry 问能不能用 Claude Code 的使用转录来招人。YC 正在尝试让候选人上传他们跟 AI 一起编程的转录作为面试材料。

Boris 觉得可行。从转录里能看出一个人的思维方式:有没有看日志、能不能在 Agent 跑偏时纠正它、会不会用 Plan Mode、有没有确保有测试。

他说团队中最高效的人呈两极分布。一极是极端专才,比如 Jarred Sumner【注:Bun(高性能 JavaScript 运行时)的创建者,2025 年 12 月 Anthropic 收购了 Bun,Sumner 和团队加入了 Claude Code 团队】和 Bun 团队那样的人,对 JavaScript 运行时和开发工具的理解比任何人都深。另一极是超级通才,横跨产品、基础设施、设计、用户研究、商业。Boris 喜欢“做奇怪事情的人”。

他讲了团队成员 Daisy 的例子。Daisy 从另一个团队转过来后不久,提交了一个 PR 给 Claude Code 加新功能。但她没有直接实现那个功能,而是先写了一个让 Claude Code 能够测试任意工具的工具,然后让 Claude 自己去实现了那个新功能。

“这种跳出框架的思维方式太有意思了,因为很多人还没想明白这一点。”

Boris 说他们已经用 Claude Agents SDK 自动化了开发的几乎每个环节:代码审查、安全审查、issue 标注、生产部署。外部也有越来越多人在摸索怎么用 LLM 做自动化,但这确实是一种全新的技能。

一群 Agent 周末造出 Plugins

谈到 Claude Teams【注:Claude Code 的多 Agent 协作功能】,Boris 引出了 “Agent 拓扑”(agent topologies)这个概念。核心思想是“不相关的上下文窗口”:多个 Agent 各有独立的上下文,不会被彼此的上下文或自己之前的上下文“污染”。更多上下文就是更多推理时计算,配合合适的协作结构就能做更大的事。

他给了一个具体例子。Anthropic 的 Plugins 功能完全由一群 Agent 在周末自动协作构建完成,几乎没有人工干预。一个工程师给 Claude 一个规格说明(spec),让它用 Asana(项目管理工具)的看板来管理。Claude 在 Asana 上创建了一堆任务,然后自动生成了一批子 Agent,这些 Agent 开始自动领取任务执行。主 Claude 只负责给指令,它们自己就搞定了。

Boris 提到,虽然他没拉过数据,但他猜现在大多数 Agent 启动时其实是由另一个 Claude 来提示的(而非人类),以子 Agent 的形式。在代码里,子 Agent 就是递归的 Claude Code。他们内部叫主 Agent “Mama Claude”。

Garry 说他最近在调试时也开始用多个子 Agent 并行搜索。Boris 说他一直这么做:如果任务比较难,他会让 3 个、5 个甚至 10 个子 Agent 并行研究,然后汇总结果。

Garry 问为什么不把这条规则写进 CLAUDE.md。Boris 说 CLAUDE.md 只放你反复重复的东西,其他情况直接 prompt 就行。

永远不要跟模型对赌

Garry 请 Boris 给创业者一些建议。Boris 给出了三条核心原则。

第一条是潜在需求。 他说自己前几次创业都不理解这个概念。人们只会做他们已经在做的事。如果人们在尝试做某件事但做得很费劲,你帮他们做得更简单,这是好主意。但如果你试图让他们做一件完全不同的事,他们不会去做的。

第二条是为未来的模型构建。 不要为今天的模型做产品,要为六个月后的模型做。这听起来矛盾,产品不能用怎么找 PMF(产品市场匹配)呢?但如果你只为当前模型优化,找到的 PMF 很快就会被别人用下一代模型超越。Boris 建议亲自使用模型,感受它能做什么的边界,然后为你认为半年后的那个模型来做产品。

第三条来自他们办公区墙上裱框的一篇文章:The Bitter Lesson。

【注:The Bitter Lesson 是 AI 先驱 Rich Sutton 2019 年写的文章,核心观点是 AI 研究 70 年的最大教训是:利用通用计算(搜索和学习)的方法最终总是胜过依赖人类知识的手工设计方法。】

“永远不要跟模型对赌。”

Boris 解释说,他们随时都面临一个选择:投入工程资源给 Claude Code 加一个功能(scaffolding),获得 10-20% 的提升;或者等两个月,下一个模型大概率自己就能做到了。他们总是这样权衡取舍,并假设任何 scaffolding 都是技术债。

Garry 问 Claude Code 多久重写一次。Boris 说他们每隔几周就增删工具,整个代码库在不停地被重写。

“Claude Code 没有任何部分是六个月前的。它一直在被重写、重写、再重写。”

Garry 追问:所以现在 80% 的代码可能只有几个月的历史?Boris 说是的,可能更短。

TypeScript 的启示

Boris 十多年前写了一本关于 TypeScript 的书【注:《Programming TypeScript》,O'Reilly 出版】,那时候 TypeScript 还没火,大家都在写 JavaScript。Garry 觉得 Claude Code 在终端里的发展轨迹和 TypeScript 早期很像。

Boris 展开说 TypeScript 做了很多“奇怪”的语言设计决策:几乎所有东西都可以是字面量类型,还有条件类型这种没有其他语言想到的概念。这些奇怪设计的根源是:TypeScript 团队观察到 JavaScript 程序员怎么写代码(大量反射、mutation、传统上极难类型化的模式),然后围绕这些行为去设计类型系统,而不是让程序员改变写法。

Claude Code 也是同样的逻辑:不是一个学术性的、原则驱动的产品,而是 “我自己想用什么工具”。Boris 先给自己做,团队给自己做,再给 Anthropic 员工,再给外部用户。

终端体验的设计其实很困难。约束条件包括 80x100 字符、256 色、一种字号、没有鼠标交互。终端里的加载 spinner 动画经过了大约 50-100 次迭代,其中 80% 没有上线。Boris 说 Claude Code 的好处在于可以极快地做出 20 个原型,选最好的那个,整个过程几小时搞定。放在以前用 Origami、Framer 这类设计工具做三个原型可能需要两周。

1000 倍工程师和“软件工程师”头衔的消亡

Garry 提到 Steve Yegge 的文章【注:Steve Yegge,前 Google/Amazon 资深工程师、知名技术博主,2026 年 2 月发表文章“The Anthropic Hive Mind”,在与约 40 名 Anthropic 员工交谈后写成】说 Anthropic 工程师的生产力大约是 Google 巅峰时期的 1000 倍。

Boris 没有直接回应这个数字,但给出了内部数据。Anthropic 的所有技术员工每天都在用 Claude Code,大概一半的销售团队也在用(后来逐渐转向 Co-Work)。团队去年规模翻倍,人均生产力按 PR 数量衡量增长了约 70%。自 Claude Code 推出以来,人均生产力累计增长了 150%。

Boris 用自己在 Meta 的经历做对比。他当时负责 Facebook、Instagram、WhatsApp 所有代码库的质量管理,团队花了很大力气提升生产力。

“那时候 2% 的生产力提升就是几百人工作一年的成果。150%?闻所未闻。”

谈到未来,Boris 认为编程将对所有人“基本解决”。“软件工程师”这个头衔可能会消失,变成“builder”或“产品经理”之类的称呼。工程师不只写代码,还要写 spec、跟用户交谈。他们团队已经是这样了:PM 写代码,设计师写代码,EM 写代码,财务人员也写代码。

Boris 个人从 Opus 4.5 开始就 100% 使用 Claude Code编程,卸载了 IDE,每天提交约 20 个 PR,不再手动编辑任何一行代码。Anthropic 整体的 AI 编码比例在 70-90% 之间。

他也提到了更让人担忧的一面:ASL-4 级别【注:Anthropic 的 AI 安全等级体系,ASL-3 是当前模型所在的等级,ASL-4 意味着模型具备递归自我改进能力,需要满足一系列严格标准才能发布】如果到来,或者出现严重误用(生物病毒设计、零日漏洞等),都是他们正在积极应对的风险。

关于外部数据,Boris 引用了两个数字:Mercury 的统计显示约 70% 的初创公司选择 Claude 作为首选模型;SemiAnalysis 估计 4% 的公共代码提交来自 Claude Code。他还提到 Claude Code 被用于 NASA 火星探测器 Perseverance的航线规划,团队为此打印了海报。

住在日本乡下的科幻读者

Garry 问是什么驱动 Boris 来 Anthropic 的。

Boris 说他当时住在日本乡下,每天早上打开 Hacker News,发现全是 AI 的消息。他试了一些早期产品,还是 Claude 2 的时期。“说起来有点矫情,但那真的是我的感受,它让我窒息。作为一个 builder,我从来没有过那种感觉。”

他开始跟在实验室工作的朋友聊,然后认识了 Ben Mann(Anthropic 联合创始人之一),立刻被说服了。打动他的有两点:一是 Anthropic 作为研究实验室运作,产品团队很小,模型才是最重要的事。做了多年产品之后,这种“产品不是最重要的”的定位反而让他很有共鸣。二是使命驱动。Boris 是重度科幻读者,书架上全是科幻小说。

“我知道这件事可以变得多糟。当我想到今年会发生什么,最坏的情况非常非常糟糕。我想待在一个真正理解这一点的地方。在 Anthropic 的午餐室和走廊里,大家在聊的就是 AI 安全。”

Co-Work,番茄植物和婚礼照片

最后聊到 Co-Work【注:Anthropic 2026 年 1 月推出的桌面端 Agent 工具,面向非技术用户,是 Claude Code 的图形界面封装】。Garry 问 Co-Work 跟 Claude Code 是什么关系。

Boris 说这又是潜在需求的故事。他们看到有人用 Claude Code 监控番茄植物的生长状况,有人用它从损坏的硬盘里恢复婚礼照片,有人用它做财务分析。在 Anthropic 内部,所有设计师、整个财务团队、整个数据科学团队都在用 Claude Code,不是为了写代码。

这些非技术人员在费很大劲安装终端工具,就为了用这个功能。Boris 说他们尝试了好几种方案,最终起飞的是在桌面 App 里做了一个 Claude Code 的图形界面封装。

“底层就是 Claude Code,同一个 Agent。”

Felix(桌面应用框架 Electron 的早期贡献者)和团队在大约 10 天内完成了构建,100% 由 Claude Code 编写。Boris 说对非技术用户需要额外做很多工作:代码在虚拟机里运行,增加了删除保护、权限提示和各种安全防护。

Boris Cherny 在这次访谈中反复回到三个核心理念:围绕用户已有行为构建产品(潜在需求),为未来的模型而非当前模型构建,以及永远不要跟模型对赌。

两个值得关注的信号:Boris 预测 Plan Mode 一个月内消亡,模型的自主规划能力即将跨过一个门槛;他同时认为“软件工程师”这个头衔将逐渐消失,取而代之的是跨职能的“builder”角色,写 spec、做设计、跟用户对话,代码只是其中一个输出。

当 100% 的代码由 AI 编写、Agent 开始自主联系同事、自动管理项目时,人的角色到底在哪里?Boris 说他的大脑有时还停在六个月前。也许所有人的大脑都是。