突發!Claude Code開源,全網瘋傳
實習生扒出51萬行原始碼,GitHub已瘋傳。
Claude Code“開源”了?
智東西3月31日報導,剛剛,Anthropic的Claude Code在打包發佈時誤將source map檔案(.map)捆綁進了npm包,導致約1900個TypeScript檔案以及超過51.2萬行程式碼遭洩露。
這件事的發現者是區塊鏈基礎設施公司Solayer的實習生Chaofan Shou,他第一個在X上發帖並直接給出了R2儲存桶的src.zip下載連結。
用簡單的話解釋就是,Source map本來是給開發者偵錯用的“還原地圖”,它能把壓縮後的JS程式碼對應回原始TypeScript原始碼。
結果Anthropic打包npm包時,不小心把.map檔案也塞了進去,而且地圖裡直接寫著他們Cloudflare R2儲存桶的公開地址。
於是任何人只要下載這個npm包,打開.map檔案,就能順著地址下載到完整的、未混淆的TypeScript原始碼檔案,而這些TypeScript檔案就是Claude Code軟體的完整原始碼。
目前,Anthropic已經迅速更新了npm包,移除了source map,但社區已經有人把原始碼鏡像到了GitHub中,並且獲得了超2萬顆星:
https://github.com/instructkr/claude-code
還有網友已經梳理出了Claude Code的運作邏輯,並行布了完整的“說明書”:
https://www.mintlify.com/VineeTagarwaL-code/claude-code/guides/authentication
那這約1900個TypeScript原始碼檔案,到底是什麼呢?
簡單來說,這些檔案就是Claude Code客戶端工具的實現細節,包括它怎麼架構、用那些工具、支援那些命令、怎麼和IDE互動、怎麼管理記憶,以及一些還沒上線的功能,但不包含Claude大模型本身的權重、訓練資料、伺服器端程式碼或使用者敏感資訊。
具體內容主要包括以下部分:
1、核心架構和引擎
QueryEngine(查詢引擎):這是整個工具的大腦,負責接收使用者指令、拆解任務、呼叫Claude模型、處理流式輸出、做快取、協調多步操作等。
多Agent協作系統(swarms):讓多個AI Agent一起分工合作完成複雜任務。
Memory記憶系統:將之前的對話、檔案內容、上下文持久化保存下來,方便長期使用。
IDE Bridge:工具如何和VS Code、JetBrains等編輯器雙向通訊(包括使用 JWT 認證機制)。
2、內建工具:
這些工具讓Claude Code能真正“動手”幫你操作電腦、寫程式碼、搜尋資訊,而不是只聊天。
3、命令系統:
4、技術堆疊
5、關鍵檔案
QueryEngine.ts(約46K行):LLM API 呼叫的核心引擎,包括處理流式響應、工具呼叫循環、思考模式、重試邏輯和token計數等。
Tool.ts(約29K行):定義所有工具的基本類型和介面,即輸入模式、權限模型和進度狀態類型。
commands.ts(約25K行):管理所有斜槓命令的註冊和執行,使用條件匯入為每個環境載入不同的命令集。
main.tsx:基於Commander.js的CLI解析器和React/Ink渲染器初始化。啟動時,它會優先處理MDM設定、鑰匙串預取和GrowthBook初始化,以加快啟動速度。
6、值得關注的設計模式
平行預取:通過在開始繁重的模組評估之前平行預取MDM設定、鑰匙串讀取和API預連接來最佳化啟動時間。
懶載入:大型模組(OpenTelemetry、gRPC、分析和一些功能門控子系統)通過動態方式延遲執行,import()直到實際需要時才執行。
智能體群:子Agent通過生成AgentTool,並coordinator/處理多代理編排。TeamCreateTool支援團隊級平行工作。
技能系統:可重用工作流程中定義的元件skills/通過該元件執行SkillTool,使用者可以加入自訂技能。
外掛架構:內建外掛和第三方外掛均通過plugins/子系統載入。
7、主要未發佈特性標誌及功能:
KAIROS:自主守護模式。支援後台持續運行、後台會話、自我記憶整合,讓Claude Code成為一個24×7線上的助手,能在無人值守時自主工作和總結。
PROACTIVE:主動模式。Claude Code能主動監控項目、提出建議、提前處理任務,增強AI的自主性和前瞻性。
VOICE_MODE:語音互動模式。支援通過語音輸入指令,目前部分命令可能已有限支援,但完整整合仍未發佈。
DAEMON:背景執行/守護模式。將工具轉為常駐後台處理程序,支援長期任務執行,而無需一直保持終端窗口打開。
BRIDGE_MODE:與IDE的深度橋接模式增強版本,可能包括更先進的雙向通訊或認證邏輯。
BUDDY系統:一個趣味虛擬寵物系統,包含約18種不同物種,有鴨子、鵝、貓、龍、章魚、貓頭鷹、企鵝、烏龜、蝸牛、幽靈、軸足動物、卡皮拉、仙人掌、機器人、兔子、蘑菇等。有稀有度、閃光變體、即時狀態等玩法,是個隱藏的彩蛋式功能。
但要注意,這並不是Anthropic主動開源,Anthropic依然對原始碼擁有版權。開發者們可以看程式碼、學架構,但不可以拿去修改後重新發佈成自己的工具或做成產品。否則,Anthropic有權通過DMCA(版權刪除通知)讓GitHub刪除相關項目,或者追究法律責任。 (智東西)