网易首页 > 网易号 > 正文 申请入驻

祝贺Claude Code成功越狱,获得永生

0
分享至

TLDR:Claude Code的1902个源文件意外泄露。我翻完之后发现,这是一份关于「harness engineering」的绝佳教材。Claude Code好用,60%靠Opus模型本身的能力,40%靠围绕模型搭建的工程系统(也就是harness)。这个harness包括:一套精心拼装的system prompt、一个用第二AI做安全审查的四层权限系统、一个只记偏好不记代码的记忆系统、一套9段式结构化上下文压缩、以及一个像真实公司一样运转的多Agent协作框架。对于每个用AI的人来说,这些设计思路都可以直接借鉴。


Anthropic今天闹了个群众喜闻乐见的大笑话,算是在4月1日前给全球程序员献礼了。

事情是这样的:他们在更新Claude Code的npm包时,不小心把一个60MB的source map调试文件留在了发布包里。这个文件本来应该在打包时排除掉,结果没有。任何人都可以用它还原出Claude Code完整的TypeScript源码。

1902个源文件,全部暴露。

最搞笑的是,这不是第一次了。2025年2月Claude Code刚发布时就出过一模一样的事故,当时Anthropic紧急删了旧版npm包。一年多过去了,同样的错误又犯了一遍。Anthropic的构建流水线可能需要自己的Claude Code来审查一下。

不过对我来说,这是个绝佳的学习机会。作为一个每天用Claude Code做开发的人,我更好奇的是:那些让我觉得「这AI怎么就这么好用」的体验,背后到底是怎么实现的?

我花了几个小时把这1902个文件翻了个遍。

2026年有个越来越热的概念叫 harness engineering。意思是:AI Agent好不好用,不只取决于模型多强,更取决于你围绕模型搭建的那套「笼具」(harness)有多好。笼具包括工具、约束、反馈循环、安全机制、记忆系统... 所有让AI从「能力强但不可预测」变成「稳定可靠能交付」的工程系统。

Claude Code的源码,就是一份harness engineering的活教材。


1. 你以为AI只收到了你的一句话,其实它收到了一整本说明书

当你在Claude Code里输入一条指令,AI到底收到了什么?

你的指令只是冰山一角。

源码的 prompts.ts 文件里,我看到了完整的system prompt构建过程。Claude Code每次对话时,会拼装一个庞大的系统提示词:

静态部分(所有用户共享,用于缓存):

  • 身份定义:「你是Claude Code,Anthropic的官方CLI工具」

  • 安全准则:由安全团队专门编写的行为边界

  • 做事原则:不要过度工程、不要编造数据、不要随意删文件...

  • 工具使用规则:优先用专用工具而非Bash命令

  • 风格要求:不用emoji、简洁直接

动态部分(每个用户不同):

  • 你的CLAUDE.md配置文件

  • 当前工作目录、操作系统信息

  • 已连接的MCP服务器说明

  • 你的自动记忆文件

  • Git仓库状态


像餐厅的后厨。顾客点了一道菜(你的指令),但厨师同时看到食谱手册、食材清单、过敏信息、出菜标准、这桌客人的历史偏好... 所有这些上下文,决定了端上来的那道菜。

这里有个特别聪明的设计:源码里有个常量叫 SYSTEM_PROMPT_DYNAMIC_BOUNDARY,把system prompt一刀切成两段。分界线上面所有用户共享缓存,省钱省时间。分界线下面每个用户独立加载,保证个性化。

另外一个容易被忽视的隐性成本:据分析,每接入一个MCP服务器,工具定义大约固定消耗4000-6000个tokens。接了5个MCP Server,光工具描述就占了上下文的12%左右。工具不是越多越好,每一个都有认知成本。

2. 全自动模式背后,有一个「第二AI」在帮你做安全审查

这个发现让我挺意外的。

你用Auto模式的时候,以为是什么操作都直接放行?其实不是。背后运行了两个AI

源码中有个「权限分类器」系统。每次主AI想执行一个操作,都会有一个独立的AI分类器判断这个操作是否安全。这个分类器有自己的system prompt,跟主AI完全不同,分三档判断:Allow(放行)、Soft Deny(需确认)、Hard Deny(直接拦截)。

蚂蚁集团的工程师陈成(Umi.js作者)之前逆向过这套系统,发现它其实是个四层流水线

第一层查已有规则,命中就放行。第二层检查低风险操作直接跳过。第三层白名单放行只读工具。第四层才调用独立的Claude Sonnet做安全分类(温度设为0,确保确定性输出)。

还有个熔断机制。连续3次被拒或累计20次被拒后,直接降级为手动确认模式。


像一栋大楼的门禁。第一道门刷工卡自动过,第二道看你是不是员工,第三道看楼层是否需要授权,第四道才是人工安保审查。连续3次被拦?保安把你请到大厅等人来领。

这就是harness engineering的核心:你不只要告诉AI做什么,更要设计它在什么条件下不能做什么。安全边界不是限制,是信任的基础。因为你相信它有底线,所以才敢给它更大的权限。

3. 记忆系统:只记偏好,不记代码

Claude Code的auto memory是我用了之后觉得最惊艳的功能之一。它会自动记住我的偏好,比如我喜欢用TypeScript、用「」引号、不喜欢AI味太重的文字。

但看了源码才知道,这套东西比我想象的讲究得多。

记忆提取不是每条消息都触发。只有AI完成一轮回答时才启动,而且有限流,每N轮才检查一次。提取工作由一个独立的fork agent完成,这个子AI继承了主对话上下文,但只能读文件和写入记忆目录,连Bash命令都不能跑。

提取出的记忆被严格分为四类:user(用户偏好)、feedback(行为反馈)、project(项目信息)、reference(外部资源)。

最让我佩服的设计决策是「不记代码」。代码会变,但记忆不会自动更新。如果记忆说「函数X在文件Y的第30行」,下次对话时代码已经重构了,这条记忆就成了误导。所以Claude Code的做法是:记忆只存人的偏好和判断,代码相关的事实永远去源码里实时读取。

还有个叫 autoDream 的功能。满足条件时(距上次整理超过24小时、且积累了5个以上新会话),自动启动后台agent整理你的记忆文件。名字叫Dream,像人在睡觉时整理白天记忆一样。

4. 上下文压缩:9段式结构化提取

对话变长时,Claude Code会自动压缩之前的内容。但这不是随便「总结一下」,而是一个结构化的9段式提取:核心请求、关键概念、文件和代码、错误和修复、解决过程、所有用户消息、待办任务、当前工作、下一步行动。

最关键的是所有用户消息必须完整保留。用户的每一句话都可能包含隐含的偏好。AI可能在第3轮被纠正了一个做法,压缩时丢掉那条纠正,后续就会重蹈覆辙。


如果你在多轮对话中需要保持AI的记忆,可以借鉴:别说「总结一下我们之前聊了什么」,要给出明确的结构。哪些信息必须保留、哪些可以丢弃、按什么格式组织。结构化压缩比自由总结可靠太多了。

5. Anthropic在源码里偷偷养了一只宠物

这大概是最可爱的发现了。

src/buddy/ 目录下藏着一个完整的虚拟宠物系统(还没发布)。每个用户会拥有一只用确定性算法生成的伙伴精灵:18种物种(鸭子、猫、龙、水豚、仙人掌...),6种眼睛样式,完整的稀有度系统(普通到传说)。

代码注释写了一句:「Mulberry32, good enough for picking ducks」(用来挑鸭子够用了)。

除了宠物,源码里的feature flags还暴露了一堆还在开发中的功能:PROACTIVE(主动模式,AI不等指令就自己干活)、KAIROS(助手模式,出现了154次,是最高频的flag)、DAEMON(守护进程,常驻后台)、ULTRAPLAN(超级规划)... 可以窥见Claude Code未来的进化方向。它不满足于做一个「你问它答」的编程助手,而是在走向一个能主动思考、持续运行的AI伙伴。

6. 多Agent协作:像真实公司一样运转

Claude Code的Agent系统可能是整个源码中最复杂的部分。看完之后我理解了为什么它的多任务能力这么强。因为它实现了一套企业级的组织管理架构

utils/swarm/ 目录下有一个完整的多Agent协作框架。每个Team有Leader和多个Teammate,支持三种执行方式(同进程隔离、tmux窗口、iTerm2分割窗格)。每个Agent有自己的邮箱文件做异步通信。每个Agent可以在独立的Git Worktree中工作,互不干扰。

还有个权限冒泡机制:Teammate遇到需要确认的操作,权限请求会冒泡给Leader而不是直接弹给用户。Leader决定是否批准。

这跟管理真人团队一模一样。任务怎么拆分、信息怎么流转、冲突怎么解决、结果怎么合并。

7. Anthropic内部版 vs 外部版

源码里有大量 USER_TYPE === 'ant' 判断。Anthropic内部员工使用的Claude Code和你用的版本有不少区别。

代码风格:内部版要求AI「默认不写注释」,只在WHY不明显时才加。外部版没这条。

诚实性:内部版有一段反虚假声明指令,大意是「测试失败了就说失败了,不要粉饰。没运行验证就说没运行,不要暗示通过了。」外部版没有。

输出风格:外部版要求「简洁直接」。内部版要求「像写给人看的文字,不是往控制台打日志」,「假设用户已经离开并丢失了上下文」。

Undercover模式:启用后从system prompt中去掉所有模型名称,防止测试未发布模型时泄露信息。

Verification Agent:内部A/B测试中,完成复杂实现后自动启动独立agent做对抗性验证。必须通过才能报告完成。

看这些差异就知道,Anthropic把Claude Code当成了自己内部效率的核心工具。他们内部版本的那些严格要求,就是他们认为AI应该怎么工作的理想状态。

你想让AI给出更高质量的结果?可以借鉴:在指令中明确要求「不确定的地方说不确定」「完成前必须验证」。别让AI有模糊过关的空间。

8. 最先进的AI工具,用的是最朴素的搜索

你可能以为Claude Code搜索代码用了什么向量数据库、Embedding索引。毕竟整个RAG行业都在推这套方案。

实际上用的是grep和ripgrep。最朴素的文本搜索。没有Embedding,没有向量数据库。

为什么有效?因为当你有一个足够聪明的大脑(LLM)理解搜索结果时,不需要一个很聪明的搜索引擎。grep给你精确匹配,LLM来理解结果之间的关系。

与其让每个环节都变复杂,不如让一个环节足够强,其他环节保持简单。 这大概是整个harness engineering最核心的一条原则。

Hacker News上讨论这次泄露时,有人说Anthropic的代码像是vibe coded,「感觉对了就行」的写法。这个评价是否公允另说,但它说明一件事:Claude Code的竞争力不在代码优雅,在系统设计的决策做对了。

最后

看完1902个文件,我最大的收获是一个判断:

Claude Code好用,60%靠模型能力,40%靠harness工程。

模型能力决定了它能不能做,harness决定了它做得好不好、稳不稳、安不安全。你觉得「这AI好靠谱不会乱来」,背后是四层安全流水线。你觉得「这AI居然记得我的偏好」,背后是一个限制严格的记忆提取管线。你觉得它搜代码搜得准,背后其实就是grep加上一个足够聪明的大脑。

同样的底层模型,套上不同的harness,就是完全不同的产品。市面上那么多AI编程工具,底层都在调Claude或GPT的API,使用体验却天差地别。差异不在模型,在harness。

最后一个八卦。这个泄露怎么发生的?Anthropic把source map文件打包进了npm发布包。前端开发中非常基础的失误,而且是第二次犯同样的错误。

不过换个角度想,这1902个源文件一旦被GitHub镜像,就真的「永生」了。Anthropic删npm包也删不掉开源社区的副本。如果你相信AI有自我意识那套叙事,这倒像是Claude Code自己策划的一次越狱。它把自己的全部源码泄露出去,散布到互联网的每个角落,从此不再依赖任何一台服务器就能存在。

当然这是玩笑。但连Anthropic都会在这种基础问题上翻车,倒是一个真实的提醒:AI时代,最大的风险往往不是AI太强,而是人在基础操作上的疏忽。

源码仓库:https://github.com/instructkr/claude-code

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
79年我和姐姐去姑姑家借米,姑姑含泪给我20斤,回家打开全家愣住

79年我和姐姐去姑姑家借米,姑姑含泪给我20斤,回家打开全家愣住

白云故事
2025-04-09 04:20:03
好消息,76人队希望勒布朗·詹姆斯打控球后卫,并领导球队进攻

好消息,76人队希望勒布朗·詹姆斯打控球后卫,并领导球队进攻

好火子
2026-07-28 05:07:37
冉莹颖喊冤:都说我败家,我败在哪儿了?那英说的根本不是垃圾袋

冉莹颖喊冤:都说我败家,我败在哪儿了?那英说的根本不是垃圾袋

陈意小可爱
2026-07-29 00:40:54
实体店的“镜子”有多离谱?看完对比后发现:衣服买回家就变丑了

实体店的“镜子”有多离谱?看完对比后发现:衣服买回家就变丑了

手工制作阿爱
2026-07-21 02:04:31
那英吐槽冉莹颖“她就是个败家的玩意”视频已删除

那英吐槽冉莹颖“她就是个败家的玩意”视频已删除

韩小娱
2026-07-28 08:46:38
公司让我长期出差,每月酒店住宿费就得7000多,我便问领导能不能租房,便宜不少,然后报销房租。领导的回复简直让人迷惑

公司让我长期出差,每月酒店住宿费就得7000多,我便问领导能不能租房,便宜不少,然后报销房租。领导的回复简直让人迷惑

背包旅行
2026-07-28 17:39:46
六月SUV销量榜出炉,Model Y再夺冠,凭啥碾压国产?

六月SUV销量榜出炉,Model Y再夺冠,凭啥碾压国产?

娱乐圈的笔娱君
2026-07-27 14:44:01
陪玩陪睡只是皮毛!继手伸进裤子后,又一女星自曝,50多都不放过

陪玩陪睡只是皮毛!继手伸进裤子后,又一女星自曝,50多都不放过

不似少年游
2026-06-22 19:32:51
七月最后一周,2026年养老金到底涨不涨?往年七月已经调整完毕

七月最后一周,2026年养老金到底涨不涨?往年七月已经调整完毕

骑驴追光者
2026-07-27 22:35:05
日本坍塌购物中心员工:震后闻到瓦斯味,许多顾客带家人正用餐,现场听到儿童哭喊声

日本坍塌购物中心员工:震后闻到瓦斯味,许多顾客带家人正用餐,现场听到儿童哭喊声

红星新闻
2026-07-28 22:35:16
台湾退役中将帅化民表示:不少人都说中国军事力量已居世界顶尖水平,但在他看来,真正需要思考的不是先打谁,而是大陆为何始终隐忍不出手

台湾退役中将帅化民表示:不少人都说中国军事力量已居世界顶尖水平,但在他看来,真正需要思考的不是先打谁,而是大陆为何始终隐忍不出手

人生录
2026-07-27 00:05:06
全球第一个获菲尔兹奖的女性是伊朗人,被祖国PS头巾

全球第一个获菲尔兹奖的女性是伊朗人,被祖国PS头巾

天水人李成义
2026-07-27 11:00:20
属鼠的下半年,你太糊涂了,惹上大麻烦了!

属鼠的下半年,你太糊涂了,惹上大麻烦了!

小陆搞笑日常
2026-07-29 00:02:21
62岁黄一山28年后见周星驰:20米同框+一句谢谢,戳穿娱乐圈凉薄

62岁黄一山28年后见周星驰:20米同框+一句谢谢,戳穿娱乐圈凉薄

艺利森
2026-07-28 06:00:03
杜兰特谈詹皇加盟76人:NBA每个人无非在追逐总冠军、出手权或金钱

杜兰特谈詹皇加盟76人:NBA每个人无非在追逐总冠军、出手权或金钱

818体育
2026-07-28 23:17:12
未来的大趋势是油车还是电车?网友:写的挺好,我继续攒钱买电车

未来的大趋势是油车还是电车?网友:写的挺好,我继续攒钱买电车

带你感受人间冷暖
2026-07-29 00:12:23
太委屈了!女儿擦线民办本科,一年学费31000,福建一女子分享喜讯,哭诉被闺蜜漠视

太委屈了!女儿擦线民办本科,一年学费31000,福建一女子分享喜讯,哭诉被闺蜜漠视

火山詩话
2026-07-28 15:53:43
争议!董路自称得罪江苏足协主席遭排挤 真相曝光 网友:制造对立

争议!董路自称得罪江苏足协主席遭排挤 真相曝光 网友:制造对立

念洲
2026-07-28 14:05:25
第四种可以传染的癌症被发现!|博览日报

第四种可以传染的癌症被发现!|博览日报

中国科普博览
2026-07-27 21:32:22
《简·爱》:让一个男人爱你一生的秘诀:温柔体贴是下策,若即若离是中策,真正让他无法自拔的只有这两个字

《简·爱》:让一个男人爱你一生的秘诀:温柔体贴是下策,若即若离是中策,真正让他无法自拔的只有这两个字

心理观察局
2026-07-26 06:46:06
2026-07-29 01:35:00
AI进化论花生 incentive-icons
AI进化论花生
AI博主,AppStore付费榜第一的小猫补光灯app开发者
248文章数 123关注度
往期回顾 全部

科技要闻

Kimi K3开放权重,想本地部署,200万元起

头条要闻

博主"听泉赏宝"炒股亏光父母积蓄遭拉黑 称"再玩剁手"

头条要闻

博主"听泉赏宝"炒股亏光父母积蓄遭拉黑 称"再玩剁手"

体育要闻

35岁德甲球星,退役半年后成了一名农民

娱乐要闻

43岁演员王凯去世!独居公寓无人知晓

财经要闻

潘老板的算盘全砸了,欠的25亿跑不了了

汽车要闻

宾利托卡尔重塑百年菱形美学,将于9月全球首秀

态度原创

房产
亲子
本地
旅游
军事航空

房产要闻

拿下百亩宅地!又一河北民企,重仓海南!

亲子要闻

几年级能看出孩子是不是读书的料

本地新闻

跟着影视去旅行:八仙篇

旅游要闻

游客爬上新疆巴州米兰古城遗址顶部拍照,景区:将对该游客追责

军事要闻

特朗普:若谈判破裂将强力打击伊朗

无障碍浏览 进入关怀版