[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-claude-code-source-leak-analysis-zh":3,"article-related-claude-code-source-leak-analysis-zh":28,"series-tools-b8017776-9752-43f0-ba35-cec093dae349":85},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":11,"views":25,"created_at":26,"published_at":27,"topic_cluster_id":11},"b8017776-9752-43f0-ba35-cec093dae349","claude-code-source-leak-analysis-zh","Claude Code 源码外洩後，我看到什麼","\u003Cp>2026 年 3 月 31 日，\u003Ca href=\"https:\u002F\u002Fwww.anthropic.com\" target=\"_blank\" rel=\"noopener\">Anthropic\u003C\u002Fa> 的 \u003Ca href=\"https:\u002F\u002Fclaude.ai\u002Fcode\" target=\"_blank\" rel=\"noopener\">Claude Code\u003C\u002Fa> 因一個殘留的 \u003Ccode>.map\u003C\u002Fcode> 檔外洩。起點很土炮。\u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@anthropic-ai\u002Fclaude-code\" target=\"_blank\" rel=\"noopener\">npm 套件\u003C\u002Fa> 留下了可追蹤的下載線索，最後整份原始碼被翻出來。這種翻車方式，說真的，蠻像工程團隊最怕的那種低級失誤。\u003C\u002Fp>\u003Cp>但這件事好看的地方，不是八卦。是它把一個真正在跑的 AI 編程工具，直接攤在開發者眼前。你可以看到它怎麼切功能，怎麼處理權限，怎麼把模型呼叫包進產品。我的結論很直接：\u003Ca href=\"\u002Fnews\u002Fclaudes-c-compiler-benchmarks-analysis-zh\">Clau\u003C\u002Fa>de Code 不是靠花俏介面撐場，它更像一個把終端、狀態、權限和模型輸出拼起來的高密度軟體。\u003C\u002Fp>\u003Cp>如果你平常就在寫 Node、看打包流程，這次事件其實很有感。因為它不是什麼神秘滲透。它就是發布鏈條沒收乾淨。這也提醒我們，越是面向開發者的產品，越容易在 build、publ\u003Ca href=\"\u002Fnews\u002Fdistsim-distributed-systems-on-your-laptop-zh\">is\u003C\u002Fa>h、debug 這三個地方出包。\u003C\u002Fp>\u003Ch2>外洩是怎麼發生的\u003C\u002Fh2>\u003Cp>這次的入口很明確。有人在 \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@anthropic-ai\u002Fclaude-code\" target=\"blank\" rel=\"noopener\">@anthropic-ai\u002Fclaude-code\u003C\u002Fa> 裡，看到構建產物殘留的 source map。source map 的本意，是把壓縮後的程式碼對回原始檔。問題是，只要發布時沒清乾淨，原本只該留在內部的路徑、檔名、甚至儲存桶資訊，就可能被外部拿到。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775304426447-1y6q.png\" alt=\"Claude Code 源码外洩後，我看到什麼\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>這類問題在前端圈不算少見。Webpack、Vite、esbuild、Rollup，大家都碰過 source map 管理不當的坑。差別在於，一般網站漏掉 source map，影響通常有限。可是一個 AI 編程產品漏掉，外洩的就不只是前端檔案，還可能連功能切分、請求流程、內部命名都一起露出來。\u003C\u002Fp>\u003Cp>講白了，這不是「駭客很強」的故事。這是「發布流程有洞」的故事。Anthropic 這次被抓到的，不是防線被打穿，而是包裝沒包好。對開發者來說，這種事故最刺眼，因為它太常見，也太不該發生。\u003C\u002Fp>\u003Cul>\u003Cli>外洩入口：npm 套件中的 \u003Ccode>.map\u003C\u002Fcode> 檔\u003C\u002Fli>\u003Cli>暴露內容：Claude Code 的完整原始碼\u003C\u002Fli>\u003Cli>問題核心：構建產物沒有清理乾淨\u003C\u002Fli>\u003Cli>影響面：產品實作、流程設計、命名習慣\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>原始碼裡最值得看的，不是秘密\u003C\u002Fh2>\u003Cp>我讀完後，最深的感覺不是「原來內部長這樣」。而是「原來它做得這麼克制」。Claude Code 沒有把自己做成一個大而全的 IDE 巨獸。它比較像一個圍繞命令列體驗打磨出來的工作流工具。輸入、整理上下文、呼叫模型、渲染結果，這幾步分得很清楚。\u003C\u002Fp>\u003Cp>這種設計其實很務實。AI 工具最怕什麼？最怕把所有東西都塞進一個入口。最後看起來功能很多，實際上每個功能都卡卡的。Claude Code 的做法剛好相反。它把複雜度藏在內部，外面只留必要的互動。開發者還是用熟悉的 shell，節奏不會被打斷。\u003C\u002Fp>\u003Cp>另一個重點，是它對會話狀態和上下文的處理。AI 編程工具真正難的，不是送一次 prompt。難的是多輪互動時，怎麼維持任務邊界。怎麼避免模型把前文、目錄、指令混成一鍋粥。從公開出來的程式碼看，Claude Code 在這部分下了不少功夫。\u003C\u002Fp>\u003Cul>\u003Cli>互動層偏薄，重點放在終端完成任務\u003C\u002Fli>\u003Cli>會話狀態有明確管理\u003C\u002Fli>\u003Cli>上下文整理比介面裝飾更重要\u003C\u002Fli>\u003Cli>模型回應和本地執行分工清楚\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>它和其他 AI 編程工具差在哪\u003C\u002Fh2>\u003Cp>如果把 Claude Code 和 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ffeatures\u002Fcopilot\" target=\"_blank\" rel=\"noopener\">GitHub Copilot\u003C\u002Fa>、\u003Ca href=\"https:\u002F\u002Fopenai.com\u002Fcodex\" target=\"_blank\" rel=\"noopener\">OpenAI Codex\u003C\u002Fa> 放一起看，差異就很明顯。Copilot 長期比較像補全層。它擅長在編輯器裡補一行、接一段、給你提示。Codex 則更偏任務執行。Claude Code 的位置介於兩者之間，但氣質更偏 shell 使用者。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775304418994-hjoh.png\" alt=\"Claude Code 源码外洩後，我看到什麼\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>這代表它的產品策略很明白：不是把 AI 塞進介面角落，而是把 AI 直接接進開發者原本就會用的工作流。這個選擇很重要。因為專業開發者最討厭的，不是功能少，而是工具要他改習慣。只要你要我換一套操作方式，我就會先皺眉。\u003C\u002Fp>\u003Cp>從程式碼結構也能看出，Anthropic 很在意命令、權限、檔案操作和輸出格式的邊界。這讓工具在做複雜任務時比較可控。也比較像真的工程軟體，而不是一個很會聊天的 demo。\u003C\u002Fp>\u003Cul>\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ffeatures\u002Fcopilot\" target=\"_blank\" rel=\"noopener\">GitHub Copilot\u003C\u002Fa> 強在行級補全\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Fopenai.com\u002Fcodex\" target=\"_blank\" rel=\"noopener\">OpenAI Codex\u003C\u002Fa> 偏代理式任務執行\u003C\u002Fli>\u003Cli>Claude Code 更偏終端內閉環\u003C\u002Fli>\u003Cli>它的預設入口更像 shell，不是重度 IDE\u003C\u002Fli>\u003C\u002Ful>\u003Cp>這種差異會直接影響使用者。\u003Ca href=\"\u002Fnews\u002Fmicrosoft-365-copilot-cowork-claude-partnership-zh\">Copi\u003C\u002Fa>lot 適合大量日常補全。Claude Code 則更適合願意把 AI 放進命令列的人。前者降低摩擦，後者像是把一個能做事的代理放到你眼前。\u003C\u002Fp>\u003Ch2>這次外洩透露了 Anthropic 的產品判斷\u003C\u002Fh2>\u003Cp>最有價值的部分，其實是 Anthropic 的產品判斷。Claude Code 的實作說明了一件事：開發者願意接受 AI 參與寫程式，但前提是它不能破壞原本工作方式。工具越像額外一層能力，接受度越高。工具越像逼你改流程，阻力就越大。\u003C\u002Fp>\u003Cp>這也解釋了為什麼 Anthropic 把力氣放在終端體驗、權限控制、上下文組織，而不是把畫面做得很炫。對很多專業開發者來說，終端本來就是高頻入口。你能直接把 AI 接進這個入口，價值通常比做一個漂亮面板更實際。\u003C\u002Fp>\u003Cp>這裡可以借一句 \u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FJeff_Atwood\" target=\"_blank\" rel=\"noopener\">Jeff Atwood\u003C\u002Fa> 的話：\u003Cblockquote>“The best code is no code at all.”\u003C\u002Fblockquote> 這句不是在講 Claude Code，但放在這裡很合。AI 編程工具的目標，不是讓你多寫幾段看起來很聰明的程式碼。它的目標，是少寫那些重複、機械、又很煩的東西。\u003C\u002Fp>\u003Cp>從這個角度看，Claude Code 的程式碼透露得很清楚。Anthropic 想證明的，不只是「AI 會寫 code」。而是「AI 能在真實開發流程裡穩定工作」。這包含權限、上下文、輸出格式、錯誤處理，還有不要吵到使用者。\u003C\u002Fp>\u003Ch2>和競品比，差異其實很現實\u003C\u002Fh2>\u003Cp>如果只看功能表，很多 AI 編程工具都差不多。都能對話，都能補 code，都能跑一些任務。但真正拉開距離的，通常是工程細節。誰能處理檔案系統。誰能控權限。誰能把上下文維持住。誰能在失敗時不要亂炸。\u003C\u002Fp>\u003Cp>這次外洩後，Claude Code 的輪廓反而更清楚了。它不是那種把所有能力攤在 UI 上的產品。它更像把模型能力收斂成一個可執行的工程層。這種做法看起來沒那麼炫，卻更接近真實工作場景。\u003C\u002Fp>\u003Cp>我整理幾個實際對比點，會比較好懂：\u003C\u002Fp>\u003Cul>\u003Cli>Copilot 比較像編輯器內的即時助手\u003C\u002Fli>\u003Cli>Codex 比較偏任務導向的代理\u003C\u002Fli>\u003Cli>Claude Code 更像終端裡的工作夥伴\u003C\u002Fli>\u003Cli>Claude Code 對本地狀態和輸出格式更重視\u003C\u002Fli>\u003Cli>它比較適合 shell 使用者，不是只靠 GUI 的人\u003C\u002Fli>\u003C\u002Ful>\u003Cp>這種定位很現實，也很殘酷。因為它把門檻放在「你是不是熟 shell」。但換個角度看，這也正是它能打進工程團隊的原因。它沒有逼大家重學一套介面。\u003C\u002Fp>\u003Ch2>這次事故也在提醒整個產業\u003C\u002Fh2>\u003Cp>如果只把它當安全事故，就太小看這件事了。對外界來說，外洩讓 Claude Code 的內部實作提前攤開。對 Anthropic 來說，這是一次很直接的提醒：發布鏈路裡任何一個小洞，都可能把產品工程細節整包送出去。\u003C\u002Fp>\u003Cp>更重要的是，它讓大家對 AI 編程工具的討論，有了更硬的參照物。真正能留下來的工具，通常不是功能最多的那個，而是最懂開發者工作方式的那個。它要嘛融進終端，要嘛融進編輯器，要嘛融進任務流。它不能要求使用者為它重建習慣。\u003C\u002Fp>\u003Cp>我自己的判斷很簡單。接下來幾個月，Anthropic 應該會更嚴格處理構建產物、調試資訊和套件發布。其他做 AI 編程工具的團隊，也會更重視 source map、私有路徑、log 清理這些細節。因為這次事件很直接地告訴大家：很多事故不是被攻破，而是被順手帶出去。\u003C\u002Fp>\u003Cp>如果你是開發者，我反而建議你現在就回頭看自己的發布管線。source map 有沒有關。debug log 有沒有留。build 產物有沒有混進私有資訊。這些東西平常看起來很瑣碎，但真的出事時，往往就是它們。\u003C\u002Fp>\u003Cp>下一次你看到一個很會講 AI 的產品時，不妨先問一句：它的發布流程乾不乾淨？如果連這個都沒顧好，其他都只是包裝。\u003C\u002Fp>\u003Ch2>我會怎麼看接下來\u003C\u002Fh2>\u003Cp>我的預測很直接。接下來 AI 編程工具會更重視可回放、可稽核、可控權限這幾件事。因為只要工具真的進入團隊工作流，大家就會開始問：它到底做了什麼？改了哪些檔？誰批准的？能不能重跑？\u003C\u002Fp>\u003Cp>Claude Code 這次外洩，表面上是事故。實際上，它也讓市場更清楚看到一件事。AI 編程產品要活下來，不是靠聲量。是靠工程紀律。你把細節處理好，使用者才會真的拿它來做事。\u003C\u002Fp>","Claude Code 因 .map 檔外洩後，程式碼透露了它的產品節奏、工程取捨與 Anthropic 的發布方式，也暴露出 AI 編程工具常見的發布風險。","zhuanlan.zhihu.com","https:\u002F\u002Fzhuanlan.zhihu.com\u002Fp\u002F2022389695955346888",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775304426447-1y6q.png","tools","zh","8a93c4fc-8e53-49e9-b2d3-b7940eb26188",[17,18,19,20,21,22,23,24],"Claude Code","Anthropic","source map","npm","AI 編程工具","原始碼外洩","GitHub Copilot","OpenAI Codex",5,"2026-04-04T12:06:40.330526+00:00","2026-04-04T12:06:40.191+00:00",{"tags":29,"relatedLang":44,"relatedPosts":48},[30,31,33,35,37,39,41,43],{"name":20,"slug":20},{"name":21,"slug":32},"ai-編程工具",{"name":24,"slug":34},"openai-codex",{"name":23,"slug":36},"github-copilot",{"name":17,"slug":38},"claude-code",{"name":18,"slug":40},"anthropic",{"name":19,"slug":42},"source-map",{"name":22,"slug":22},{"id":15,"slug":45,"title":46,"language":47},"claude-code-source-leak-analysis-en","Claude Code源码泄露后，读完我发现了什么","en",[49,55,61,67,73,79],{"id":50,"slug":51,"title":52,"cover_image":53,"image_url":53,"created_at":54,"category":13},"4bdcf208-fb80-484e-b4b6-06af035a6df1","modulate-aws-voice-chats-into-signals-zh","Modulate 用 AWS 把語音聊天做成訊號","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780519733892-rxue.png","2026-06-03T20:48:22.697917+00:00",{"id":56,"slug":57,"title":58,"cover_image":59,"image_url":59,"created_at":60,"category":13},"f44a28d3-2305-43de-b5fa-21217d561054","amazon-rekognition-content-moderation-filter-zh","Amazon Rekognition把審核變成過濾器","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780517005409-bxfc.png","2026-06-03T20:02:57.634353+00:00",{"id":62,"slug":63,"title":64,"cover_image":65,"image_url":65,"created_at":66,"category":13},"80f6f40b-3217-45e4-acff-7b2f6d261779","codex-workspace-limits-tell-you-why-zh","Codex 讓工作區限額錯誤說人話","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780514293711-ltqa.png","2026-06-03T19:17:41.340056+00:00",{"id":68,"slug":69,"title":70,"cover_image":71,"image_url":71,"created_at":72,"category":13},"daa3d568-4bc5-4f29-aa64-225928ace9b4","book-2-turns-sneaker-drop-into-merch-zh","Book 2 把球鞋發售變成周邊系統","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780513400116-8jeh.png","2026-06-03T19:02:49.03795+00:00",{"id":74,"slug":75,"title":76,"cover_image":77,"image_url":77,"created_at":78,"category":13},"9c9d8493-a290-4058-bcab-dc03c05476bf","chatgpt-updates-june-2026-playbook-zh","ChatGPT 更新變成 6 月 playbook","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780503519133-jmfa.png","2026-06-03T16:18:07.006985+00:00",{"id":80,"slug":81,"title":82,"cover_image":83,"image_url":83,"created_at":84,"category":13},"f8c7594c-a6b3-4745-acfe-8bc3b217662c","leveraging-turns-vague-business-speak-into-action-zh","Leveraging 讓你把廢話寫成行動","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780461213246-b87c.png","2026-06-03T04:32:58.759444+00:00",[86,91,96,101,106,111,116,121,126,131],{"id":87,"slug":88,"title":89,"created_at":90},"855cd52f-6fab-46cc-a7c1-42195e8a0de4","surepath-real-time-mcp-policy-controls-zh","SurePath 推出即時 MCP 政策控管","2026-03-26T07:57:40.77233+00:00",{"id":92,"slug":93,"title":94,"created_at":95},"9b19ab54-edef-4dbd-9ce4-a51e4bae4ebb","mcp-in-2026-the-ai-tool-layer-teams-use-zh","2026 年 MCP：團隊真的在用的 AI 工具層","2026-03-26T08:01:46.589694+00:00",{"id":97,"slug":98,"title":99,"created_at":100},"af9c46c3-7a28-410b-9f04-32b3de30a68c","prompting-in-2026-what-actually-works-zh","2026 提示工程，真正有用的是什麼","2026-03-26T08:08:12.453028+00:00",{"id":102,"slug":103,"title":104,"created_at":105},"05553086-6ed0-4758-81fd-6cab24b575e0","garry-tan-open-sources-claude-code-toolkit-zh","Garry Tan 開源 Claude Code 工具包","2026-03-26T08:26:20.068737+00:00",{"id":107,"slug":108,"title":109,"created_at":110},"042a73a2-18a2-433d-9e8f-9802b9559aac","github-ai-projects-to-watch-in-2026-zh","2026 必看 20 個 GitHub AI 專案","2026-03-26T08:28:09.619964+00:00",{"id":112,"slug":113,"title":114,"created_at":115},"a5f94120-ac0d-4483-9a8b-63590071ac6a","claude-code-vs-cursor-2026-zh","Claude Code 與 Cursor 深度對比：202…","2026-03-26T13:27:14.279193+00:00",{"id":117,"slug":118,"title":119,"created_at":120},"0975afa1-e0c7-4130-a20d-d890eaed995e","practical-github-guide-learning-ml-2026-zh","2026 機器學習入門 GitHub 實用指南","2026-03-27T01:16:49.712576+00:00",{"id":122,"slug":123,"title":124,"created_at":125},"bfdb467a-290f-4a80-b3a9-6f081afb6dff","aiml-2026-student-ai-ml-lab-repo-review-zh","AIML-2026：像課綱的學生實驗 Repo","2026-03-27T01:21:51.467798+00:00",{"id":127,"slug":128,"title":129,"created_at":130},"80cabc3e-09fc-4ff5-8f07-b8d68f5ae545","ai-trending-github-repos-and-research-feeds-zh","AI Trending：把 AI 資源收成一張表","2026-03-27T01:31:35.262183+00:00",{"id":132,"slug":133,"title":134,"created_at":135},"3ce6e6e2-bac5-463e-9f8d-45caabcc61f7","awesome-ai-for-science-research-tools-map-zh","AI 科研工具清單，開始像地圖了","2026-03-27T01:46:50.521945+00:00"]