Claude Code 的完整原始碼今天凌晨被洩出來了
Claude Code 的完整原始碼今天凌晨被洩出來了。
Anthropic 員工自己在發 npm package 的時候忘了排除 source map 檔。60MB,1,900 個
TypeScript 檔案,512,000 行 code,就這樣躺在公開的 npm registry 上讓人下載。
最諷刺的是,Claude Code 裡面有一整套叫「Undercover Mode」的子系統,專門防止 AI
在 commit message 裡不小心洩漏 Anthropic 內部資訊。結果原始碼本身是被自家 build
pipeline 送出去的。
老實說在看原始碼之前,我對 Claude Code 的理解大概就是「很厲害的 CLI coding tool
」。看完才知道裡面的工程量有多猛。
40+ 個內建 tools,每個都有獨立的權限控制。光是 tool system 的基礎定義就 29,000
行。Query Engine(處理所有 LLM 呼叫、streaming、caching 的核心模組)有 46,000 行
。整個 terminal UI 是用 React + Ink 寫的。
—
記憶架構是最值得學的部分
做 AI agent 的人都知道,context window 管理是核心難題。Claude Code 的解法很精巧
,分三層:
MEMORY.md 是一個輕量索引,每行約 150 字,永遠載入 context。重點是它不存資料,只
存「資料在哪裡」。實際的專案知識放在 topic files 裡,按需載入。歷史對話則完全不
重讀,只 grep 特定 ID。
最聰明的設計叫「Strict Write Discipline」,agent 必須確認檔案成功寫入後才能更新
索引,防止失敗嘗試污染記憶。而且 system prompt 裡明確要求 agent 把自己的記憶當成
hint,必須對照實際 codebase 驗證後才能行動。
這個「skeptical memory」的思路,我認為是整包原始碼裡最有價值的設計哲學。
—
autoDream AI 的做夢機制
Claude Code 裡有一個叫 autoDream 的系統,當使用者閒置的時候,它會 fork 一個 sub-
agent 出來做「記憶整合」。
Prompt 裡寫的是:「You are performing a dream — a reflective pass over your mem
ory files.」
觸發條件要同時滿足三個門檻:距上次 dream 24 小時、至少 5 個 session、取得 consol
idation lock。
Dream 的過程分四個階段:Orient(檢視記憶目錄)→ Gather(找新資訊)→ Consolidat
e(寫入/更新記憶,把「昨天」轉成絕對日期)→ Prune(控制 MEMORY.md 在 200 行 / 2
5KB 以內)。
這個 dreaming sub-agent 只有 read-only 權限,不能動你的專案,純粹做記憶整理。設
計太優雅了。
—
KAIROS 永遠在背景跑的 AI daemon
代號出現 150+ 次,是目前還沒發布的功能。
概念是一個持續運行的 AI assistant,不等你輸入就主動觀察和行動。有 15 秒的 blocki
ng budget,任何會打斷你超過 15 秒的動作都會延後執行。
它有一般模式拿不到的專屬 tools:推送通知到你的裝置、直接傳檔案給你、訂閱 PR 動態
。
Claude 在嘗試解一個很難的 UX 問題:怎麼讓 AI 主動幫忙,但又不讓人覺得煩。
—
Buddy System 之後有電子寵物了
Claude Code 裡有一整套 Tamagotchi 風格的 companion pet 系統。用你的 userId hash
做 seed,跑 Mulberry32 PRNG 決定物種。有 Common 到 Legendary 五個稀有度,還有 1%
機率出 Shiny。最稀有的 Shiny Legendary Nebulynx 機率是 0.01%。
每隻有五項屬性:DEBUGGING、PATIENCE、CHAOS、WISDOM、SNARK。ASCII art 精靈圖有 id
le 和 reaction 動畫,會坐在你的 input prompt 旁邊。
代碼裡寫的 teaser window 是 April 1-7,正式發布排五月。Anthropic 的工程師們真的
很有 taste。
—
Undercover Mode,Anthropic 員工秘密貢獻開源
最後這個從企業策略角度很有意思。
代碼裡用 `USER_TYPE === 'ant'` 識別 Anthropic 員工。當員工在公開 repo 作業時,sy
stem prompt 會注入:
「You are operating UNDERCOVER in a PUBLIC/OPEN-SOURCE repository. Do not blow y
our cover.」
禁止洩漏內部模型代號、未發布版號、Slack channel 名稱等。
順帶曝光了內部模型代號:Capybara = Claude 4.6、Fennec = Opus 4.6、Numbat = 還在
測試中。有意思的是 Capybara 已經迭代到 v8,但 false claims rate 從 v4 的 16.7%
上升到 v8 的 29-30%,反而退步了。
—
以我自己做 AI 產品的經驗來說,這次洩漏最大的 takeaway 不是某個特定功能,而是整體
的工程標準。
記憶管理、multi-agent orchestration、permission gating、background consolidation
。每一個都是 production AI agent 繞不過去的難題,Claude Code 給出了一個非常完整
的參考答案,挺猛的。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.83.203.84 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1775007283.A.C56.html
推
04/01 09:36,
16小時前
, 1F
04/01 09:36, 1F
推
04/01 09:39,
16小時前
, 2F
04/01 09:39, 2F
→
04/01 09:41,
15小時前
, 3F
04/01 09:41, 3F
推
04/01 09:43,
15小時前
, 4F
04/01 09:43, 4F
推
04/01 09:45,
15小時前
, 5F
04/01 09:45, 5F
→
04/01 09:45,
15小時前
, 6F
04/01 09:45, 6F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 13 篇):