出品 | 網易智能
作者 | 小小
編輯 | 王鳳枝
一個59.8MB的map文件,把Anthropic最核心的編程產品扒了個干凈。這不是黑客攻擊,不是內部泄密,就是發布時忘了刪。
3月31日,安全研究員Shou Chaofan在npm注冊表上發現了一個不該存在的東西。
![]()
Anthropic的AI編碼工具Claude Code,在它的npm包(3月31日發布的最新版本v2.1.88)里附帶了一個59.8MB的源映射文件(cli.js.map)。這個文件的作用很簡單,就是把壓縮后的生產代碼還原回人類可讀的原始TypeScript代碼。
換句話說,Anthropic把自家產品的源代碼,打包進了公開發布的軟件包里。
Shou Chaofan在X平臺上以@Fried_rice的用戶名發布了這一發現,帖子里直接附上了完整的src.zip文件鏈接。幾小時內,這條帖子瀏覽量就突破了660萬次。
這不是第一次。
2025年2月,Claude Code的一個早期版本就因為同樣的原因被曝光。當時Anthropic從npm上撤掉了舊版本,刪除了源映射文件。一年之后,同樣的問題再次出現。
01源代碼泄露了什么?
這次泄露的源代碼包包含1906個Claude Code的專有源文件,涵蓋了內部API設計、遙測分析系統、加密工具、進程間通信協議等核心內容。整個項目規模約2300多個文件,包括103個命令文件、146個組件、67個hooks、45個工具模塊,還有插件系統和服務端代碼。
有人把還原出來的代碼傳到了GitHub上,在發現后的幾個小時內,這個倉庫就獲得了超過1100個星標和1900個復刻。雖然Anthropic隨后發出了DMCA版權刪除通知,但源碼已經被無數人復刻保存。
![]()
一個名為ost-tracker.ts的文件引起了社區注意,計費邏輯可能也被暴露了。
不過對于普通用戶來說,這次泄露并不直接構成安全風險。泄露的是Claude Code命令行工具的客戶端實現代碼,不涉及模型權重,也不涉及用戶數據。你的個人對話記錄沒有因此暴露。真正被公開的,是這個工具的內部架構、安全機制和遙測邏輯:它如何通信、如何收集使用數據、安全層是怎么構建的,現在對任何人都是可見的。
02藏在代碼里的“彩蛋”
當開發者們開始翻看泄露的源代碼時,發現Anthropic在Claude Code里藏了不少從未公開過的功能。
最受關注的是一個叫BUDDY的電子寵物系統。它像一個拓麻歌子,會出現在輸入框旁邊的對話氣泡里。根據泄露的說明,這只寵物由用戶ID的哈希值生成,共有18個物種:鴨子、龍、蠑螈、水豚、蘑菇,甚至還有幽靈。
稀有度從普通到1%的傳說級別不等,還有帽子、閃亮變種等裝飾物。每只寵物有五個屬性:調試、耐心、混亂、智慧、吐槽。首次孵化時,Claude會為它生成名字和性格,配有精靈動畫和浮動的心形特效。計劃在4月1日到7日預告式推出,5月正式上線,從Anthropic員工開始試用。
另一個重大發現是KAIROS,一個“始終在線的Claude”持久助手模式。它可以跨會話持續工作,把記憶日志存儲在私有目錄里,通過夜間“夢境”進行整理,還能主動啟動任務。代碼里甚至詳細說明了午夜邊界處理機制,確保夢境進程不會出錯。
泄露的代碼里還提到了ULTRAPLAN,用于在云端進行30分鐘遠程規劃會話,以及協調員模式,允許一個Claude實例生成并并行管理多個工作智能體。
還有Auto Mode,用一個AI分類器來自動批準工具權限,不再彈出提示窗口。以及一個叫Undercover Mode的模式,專門為Anthropic員工在公共代碼庫上自動激活,從提交記錄里移除AI歸屬痕跡,而且無法關閉。
一位X平臺的用戶總結了這些發現,并在最后寫道:“不確定我們是否還能再見到這些功能了。”
![]()
Reddit和Hacker News上的討論迅速發酵。有人把這份代碼庫稱為一個“寶藏”,因為里面藏著這么多未完成或未公開的想法。
03開發者從泄露代碼里看到了什么
開發者@devmelv在X上分享了他閱讀泄露代碼后的觀察。他正在構建AI應用,從Claude Code的源代碼里看到了幾個值得注意的設計思路。
![]()
關于上下文處理,Claude Code的CLAUDE.md文件在每一輪對話中都會被加載,不是在會話開始時加載一次,而是每一輪都加載。Anthropic構建了一整套文件層級結構來可靠地注入上下文:全局偏好設置、項目級規則、模塊化規則文件,還有私有的、被gitignore忽略的筆記。每條消息都要重新讀取4萬個字符。他的結論是:持久化、結構化的上下文,不是后期添加的功能,而是從第一天起就要承載一切的基礎架構。
關于并行處理,當Claude Code派生一個子智能體時,它會創建一個與父上下文完全相同的字節副本。API會對其進行緩存。五個智能體的消耗成本與一個智能體大致相當,因為它們都命中了同一個提示緩存。這是一個產品層面的設計決策,不是性能層面的取巧。Anthropic是根據自身API的定價模型來設計產品的。他給其他AI產品構建者的建議是:理解所使用的任何模型的價格體系,并圍繞它來設計產品。
關于權限設計,Claude Code的每一次權限彈窗都被視為配置的失敗。源代碼里有一個五級設置聯動,還有一個自動模式,用LLM分類器自行決定權限,無需詢問用戶。他們用AI來決定AI能做什么。在他看來,AI產品中的每一個摩擦點,本質上都是一個配置問題。目標是在已知、可信的工作流程中實現零中斷。
關于會話連續性,每個會話都會保存到JSONL文件中。用戶可以恢復、分支、繼續。系統還內置了“會話記憶”機制,在上下文壓縮過程中自動提取任務規范、決策和學習成果。大多數人每次都是重新開始,這丟棄了模型已經了解到的關于項目的所有信息。他為AI產品構建者給出的啟示是:為連續性而設計。用戶不想每次都重新解釋自己。一個能記住的AI,價值是一個不能記住的AI的十倍。
他還列出了一個數據:Claude Code擁有60多個工具、25多個生命周期hooks、5種上下文壓縮策略、帶有指數退避的重試系統、出錯時的模型降級、為中斷設計的流式架構、一個IDE橋接器、語音輸入、一個多智能體協調器,還有一個寵物伙伴精靈。而大多數AI演示,只有500行代碼。他說,花一個周末做出來的東西只是一個概念驗證,真正的產品是當真實用戶做出你意想不到的事情時,所需要的一切。
04最諷刺的一次泄露
這次泄露在社交媒體上引發了大量討論。
一位小紅書博主“AI愛好者”寫道:“Claude Code閉源變開源,只因忘刪一個文件。不是被黑客攻擊,也不是內部人員泄密,僅僅他們自己發布npm包的時候,忘了把source map文件刪掉。就這么簡單。一個59.8MB的文件,把整個Claude Code扒了個干凈。”
![]()
他還打了個比方:“source map是啥?正常發布代碼都會壓縮混淆,變成一坨人類看不懂的東西。但source map能把它完整還原回來,相當于你把日記鎖進保險箱,但把鑰匙一起塞進了快遞包裹。”
“AI愛好者”還批評稱:“說真的這事最諷刺的地方在于,Anthropic是全世界最強調AI安全的公司,天天講安全、講對齊、講負責任,結果自己最核心的產品源碼,因為忘刪一個文件就全漏了。就是因為發包的時候沒檢查。這波啊,這波叫安全公司最不安全。”
另一位小紅書博主“機器之心”也提到了這件事:“網傳Claude Code的源碼被大規模還原,導火索居然是發布npm包時遺留的source map。這事兒不是黑客攻擊,也不是員工誤操作。是構建產物里多帶了一個‘能反推源碼關系’的文件,結果被人順藤摸瓜。”
![]()
截至發稿時,Anthropic尚未就此事發表任何公開聲明。這次事件可能會引發對AI公司軟件發布流程的審視,尤其是因為這些公司正在構建的工具正越來越多地被全球的開發者和企業所使用。
