硅谷这两年出现一个反常的现象:干到 CTO、CPO 位置的人,反而想办法”降级”回去写代码。Mike Krieger 是这批人里最扎眼的一个——Instagram 联合创始人,在 Anthropic 做了两年首席产品官,现在的头衔只是普通的技术团队成员。AI Engineer World’s Fair 2026 收尾日的主舞台上,swyx 把他请上来聊了 20 分钟,聊的不是产品发布,是他自己怎么用 Claude、怎么看 Anthropic 内部现在管 agent 的方式。
原视频:https://www.youtube.com/watch?v=I2cbIws9j10(约 01:12:22 开始)
这是当天 Harness Engineering 赛道的第 4 场,排在 Barr Yaron 那份行业问卷和 DSPy 团队讲任务与模型分离之后。前两场一个甩数据、一个讲框架,轮到 Krieger,画风换成了一线亲历:不端着讲战略,讲的是他自己这一年怎么用 Claude,怎么把十几年前做 Instagram 攒下的工程直觉,搬来管 agent。
从 CPO 退到一线
Krieger 在 Anthropic 头两年是首席产品官,看着身边人一直在用模型搭东西,FOMO 越攒越多,他索性把周末都拿来自己上手。转折点出现在内部开始拿到 Mythos 和 Fable 的早期快照那段时间。这两个名字圈内人不陌生。Mythos 是 Anthropic 内部一款前沿模型,一直没有公开发布,只限定走 Project Glasswing 这条防御路径;Fable 则是 Krieger 自己在 labs 里推的产品,大会开场时主持人还调侃”谢谢你掐着大会时间点发布 Fable”。
他形容的变化是一种范式转移。以前拿到一个想法,会先在脑子里按工程习惯拆解成步骤,再一步步推进;现在变成描述一个目标状态,让模型自己去跑,跑完再回头聊它中途遇到的取舍,看它落到了哪里。Krieger 说 Fable 经常比他聪明得多,做完事就甩一堆权衡结论给他。他反而要倒过来求模型”当我比你笨一点,重新讲一遍”,才能追上它的判断过程。
这条曲线不止他一个人在讲。今年早些时候 Claude Code 创建者 Boris Cherny 在红杉的一场访谈里讲过几乎同一件事。他现在的工作模式核心是 Loop:用 cron 起定时任务,让 Claude 自己盯 PR、修 CI、追反馈。人不再逐轮下指令,只负责设计这套循环该怎么跑。同一场访谈里,他还转述过 Krieger 的一个说法:Claude 现在能写 90% 到 95% 的代码,瓶颈已经不在工程,在决策。两个人隔着几个月、各自的场合,说的是同一条曲线:会写代码这件事本身在贬值,值钱的是判断该往哪个方向走。
“不合理”地用 Claude:把一个 Python 项目周末搬成 TypeScript
swyx 提到内部一份日报式通讯上,同事号召大家”be unreasonable”,问 Krieger 是怎么更放开手用 Claude 的。他举了两个例子。第一个例子里,一个不懂技术的同事觉得某个内部工具用着不顺手,想请人改一改,Krieger 的反应是”你直接让 Claude 改就行”。他由此得出一个判断:现在整个行业和产品团队要教会用户对 AI”更不讲道理”一点。第一代 AI 产品把模型的工具权限和自由度关得太死。模型想解析一个内置格式解析不了的 PDF,其实完全可以让它自己写段脚本解决,而不是干等着人来兜底。
第二个例子是他自己”最不合理”的实验:把一个用 Python 写的 labs 内部项目,整体重写成 TypeScript。这个项目戳中他心里最柔软的地方。当年整个 Instagram 都是用 Python 写的,他开玩笑说 Instagram 现在总算要因为有了模型,才敢换成 PHP,逗得台下笑场。这次触发原因是 Claude Code 在 TypeScript 加 bun 这套部署链路上明显更顺。按他”2010 年代工程师”的直觉,周末重写几十万行代码级别的东西是个荒唐主意。但他还是搭了一套动态工作流,让模型自己跑通移植、验证、双向比对代码,churn 了一整个周末。周一回来时,已经是一份能部署的完整移植版本。
swyx 追问:编程语言之间转换有编译器和现成测试兜底,相对容易,但把 Instagram 这种产品级项目整个转到另一种语言呢?Krieger 提到一段旧事:当年 Python 3 引入类型标注时,Instagram 内部做过一个叫 Monkey Type 的工具。它会把生产环境里实际用到的运行时类型采集下来,再反向映射回代码库里的类型定义。他认为同样的模式放到用 LLM 做跨语言迁移上依然成立,可以更多依赖生产环境的真实调用数据做分段验证,而不是假设能一次性把整片海烧开。最难的部分,永远是找到那条能增量推进的边界线,不用一夜之间全量切换。
Instagram 那套”预埋点+feature flag”,原样用来管 agent
swyx 顺势问到 Instagram 最出名的一次扩容事故——上线第一周差点被自己发的邮件通知量打垮。Krieger 没有展开细节,但提到那次事故后,一位投资人恰巧安排的”基础设施午餐”上大家给的两条建议,十几年后他还记得清清楚楚。第一条:把任何可能用得到的指标提前埋点,因为最糟糕的情况是出故障时你根本判断不出眼前这个数字算不算正常,因为埋点是出事那一刻才现加的。第二条:认真对待旋钮和 feature flag。早期 Instagram 有一套简单但很有效的灰度上线和动态配置机制,运行时配置经常要在几秒钟内改掉才能扛住流量。他说这套东西现在原封不动地用来管 AI。每天都在做不同的取舍,能不能做运行时配置,直接决定扛不扛得住这些取舍的变化。
这条经验刚好接上 Barr Yaron 那场开场问卷讲的东西:今天多数团队管 agent 写权限的办法,还停留在人工审批加权限门控这两件”管实习生”的工具上。Krieger 讲的”预埋点+feature flag”其实是十几年前互联网扩容就验证过的运行时控制手段,现在原样搬来用在 agent 身上。治理 agent 现在缺的未必是新理论,更像是耐心——把这套老工程纪律重新捡回来。
代码审查靠”讲权衡”,不再靠”读 diff”
Krieger 承认团队仍然被代码审查卡着,尤其是牵涉架构的改动。但他说这个瓶颈其实更微妙——不是审查时间不够,是人已经很难完整地把系统在做什么想清楚。团队几周前上线的 Claude Code artifacts,一部分就是为这个问题准备的。以前发一份 2000 行的 PR,对方大概率回一句”这我也看不出啥,看着就是代码”。现在改成分享一份 artifact,里面写清楚改动的意图和取舍。他自己收到 pull request 时并不逐行审查代码,而是直接找 Claude 聊,把自己会问的问题抛过去让模型去查。重要的改动仍由人来拍板,只是靠 Claude 打底;纯视觉、纯 cosmetic 的改动,团队干脆约定先合了,出问题再往前修。
labs 里没有人管人
Anthropic 内部有个叫 Nikhil Patel 的同事,爱问一句”画一下你们的组织图”,Krieger 的答案是:labs 团队两周一轮”persevere or pivot”评审,每个项目都要在会上决定继续还是关停,几乎每一轮都有项目被砍。要是把组织架构死绑在具体项目上,就得每两周重组一次。他们的解法是让”bet”这种临时小队从各个团队抽人拼凑,配一个 bet lead,但 bet lead 通常不管人。项目黄了就地解散,不算失败。能沉淀成建制的,是像 Claude Design 这种从松散小组一路跑出信号、做到有专门团队、出了第二个大版本的产品。先松散着跑,等信号验证了再固化下来。
收尾:这是场长期游戏
最后聊到心理健康,Krieger 说这个行业比当年做 Instagram 强度高出好几倍。过去一年一次 WWDC、几个月一次友商发布已经算大事,现在每周三的全员会都有一页叫”AI 的这一周”,几乎每次都有新模型或新产品冒出来。他给的办法很朴素。一是真的把时间腾出来休息,创始人们的态度是”burnout 了基本就废了”,没有什么工作重要到不能离线几天。二是提醒自己”你不会像最好的一场比赛那么好,也不会像最差的一场那么差”——这轮”AI 已经完了/AI 又行了”的钟摆情绪本身就是常态,内化了这一点就不会觉得有多糟。他还提到教练教他的一招:当众说出自己真实的情绪,往往能让团队里别人也敢说出同样的感受,这比各自憋着更容易往前推进。












