.npmignore 少一行,512K 行原始碼見光——Claude Code 洩漏事件全解析
2026 年 3 月 31 日 UTC 凌晨 4 點,Anthropic 把 Claude Code v2.1.88 推上 npm。23 分鐘後,一位累積 190 萬美元漏洞賞金的安全研究員在 X 上發了一則貼文,引爆了 AI 開發工具史上最大的原始碼洩漏事件。 512,000 行 TypeScript。1,900 個檔案。44 個未開放的 Feature Flags。全部見光。 而最諷刺的是,這家公司的品牌定位是「安全至上」。 一個 .npmignore 的遺漏如何釀成災難事情的根因簡單到令人難以置信。 Claude Code 用 Bun 做 bundler。Bun 預設會產生 source map 檔案——一個 59.8 MB 的 cli.js.map,用來把打包後的程式碼對應回原始 TypeScript。這個檔案指向 Anthropic 的 Cloudflare R2 儲存桶上一個 zip 壓縮檔,裡面裝著完整的未混淆原始碼。 正常流程下,.npmignore 應該排除這個檔案。但不知道是哪個環節出了問題,它被一起推上了公開的 npm registry。 更慘的是,Bun...
Claude 寫、Codex 審:Agent-to-Agent 配對程式設計到底有沒有用?
一個人寫程式碼容易盲點。所以我們發明了 pair programming——兩個人看同一份程式碼,一個寫、一個審。 現在有人問:如果兩個都換成 AI 呢? 這個概念從哪來Axel Delafosse 在他的部落格上發了一篇「Agent-to-agent pair programming」,在 HN 拿了 97 分和 34 則討論。核心想法:讓 Claude Code 負責寫程式碼,讓 OpenAI Codex 負責 review,兩個 agent 在同一個 codebase 上來回迭代,直到 review 通過。 不是人 + AI,是 AI + AI。人類退到 supervisor 的角色——設定目標、審核最終結果,中間過程交給兩個 agent 自己跑。 實際怎麼運作目前有幾種做法在社群裡流通: 手動切換派。 最原始但很多人在用。Claude Code 寫完一個 feature,把 diff 丟給 Codex review。Codex 找到問題,人類把 review 結果貼回 Claude Code。來回幾輪直到通過。HN 上有人提到做了 10-15 輪...
