[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-claude-code-source-leak-hidden-internals-zh":3,"tags-claude-code-source-leak-hidden-internals-zh":34,"related-lang-claude-code-source-leak-hidden-internals-zh":51,"related-posts-claude-code-source-leak-hidden-internals-zh":55,"series-ai-agent-4266cc05-b3ce-4977-8764-d574c2dd1f98":92},{"id":4,"title":5,"content":6,"summary":7,"source":8,"source_url":9,"author":10,"image_url":11,"keywords":12,"language":22,"translated_content":10,"views":23,"is_premium":24,"created_at":25,"updated_at":25,"cover_image":11,"published_at":26,"rewrite_status":27,"rewrite_error":10,"rewritten_from_id":28,"slug":29,"category":30,"related_article_id":31,"status":32,"google_indexed_at":33,"x_posted_at":10,"tweet_text":10,"title_rewritten_at":10,"title_original":10,"key_takeaways":10,"topic_cluster_id":10,"embedding":10,"is_canonical_seed":24},"4266cc05-b3ce-4977-8764-d574c2dd1f98","Claude Code 洩漏揭露內部架構","\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fclaude-code\" target=\"_blank\" rel=\"noopener\">Claude Code\u003C\u002Fa> 這陣子很常被開發者提到。原因很直接，它跑在終端機裡，速度快，手感也很像真的在跟工具合作。外流的程式碼拆解顯示，它用了 \u003Ca href=\"https:\u002F\u002Freact.dev\" target=\"_blank\" rel=\"noopener\">React\u003C\u002Fa> 和 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvadimdemedes\u002Fink\" target=\"_blank\" rel=\"noopener\">Ink\u003C\u002Fa>，還有一條分層的 AsyncGenerator 流程。\u003C\u002Fp>\u003Cp>更猛的是，它還內建 30 多個工具。這代表它不是單純聊天。它是把模型、終端機、檔案操作，綁成一個工作流。\u003C\u002Fp>\u003Cp>講白了，這種設計很有意思。因為它直接回答一個問題：AI 寫程式，到底是聊天，還是執行任務？\u003C\u002Fp>\u003Ch2>終端機介面不是裝酷\u003C\u002Fh2>\u003Cp>先看介面。\u003Ca href=\"\u002Fnews\u002Fclaude-code-source-analysis-agentic-loop-zh\">Clau\u003C\u002Fa>de Code 走的是終端機路線。這不是為了耍帥，而是為了貼近開發者日常。你平常就在 shell、git、log 裡工作，AI 也放進來，摩擦就少很多。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775113220583-3vyd.png\" alt=\"Claude Code 洩漏揭露內部架構\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvadimdemedes\u002Fink\" target=\"_blank\" rel=\"noopener\">Ink\u003C\u002Fa> 的價值在這裡很明顯。它讓 React 可以直接畫在 terminal。結果就是，畫面還是文字為主，但互動感不差。\u003C\u002Fp>\u003Cp>這種 UI 也很符合 coding agent 的需求。因為它要顯示串流輸出、工具呼叫、錯誤重試，還要讓使用者知道現在跑到哪一步。\u003C\u002Fp>\u003Cul>\u003Cli>終端機原生，不用切到網頁\u003C\u002Fli>\u003Cli>串流輸出，回應比較即時\u003C\u002Fli>\u003Cli>靠近 repo，編輯檔案更自然\u003C\u002Fli>\u003Cli>工具狀態清楚，適合長任務\u003C\u002Fli>\u003C\u002Ful>\u003Cp>我覺得這點很實際。很多 AI 工具看起來很炫，但一進到真實專案就卡住。\u003Ca href=\"\u002Fnews\u002Fclaude-code-source-code-analysis-510k-lines-zh\">Clau\u003C\u002Fa>de Code 的方向比較像是先把工作環境做好，再來談模型表現。\u003C\u002Fp>\u003Ch2>AsyncGenerator 才是骨架\u003C\u002Fh2>\u003Cp>外流拆解裡，最有料的是流程。它大致是 REPL → QueryEngine → queryLoop → API stream → retry。這不是單一函式硬幹，而是分層控制。\u003C\u002Fp>\u003Cp>這種架構很適合 LLM。因為模型回應是串流的，工具呼叫也常常不是一次成功。你需要一層層處理狀態，才不會整個 session 爆掉。\u003C\u002Fp>\u003Cp>AsyncGenerator 的好處，就是可以一邊產出結果，一邊維持 UI 反應。這對終端機工具很重要。你不會想看著畫面卡死 20 秒，然後才一次吐結果。\u003C\u002Fp>\u003Cblockquote>“The best way to predict the future is to invent it.” — Alan Kay\u003C\u002Fblockquote>\u003Cp>這句話放在這裡很剛好。因為 \u003Ca href=\"\u002Fnews\u002Fopenclaw-1299-repos-eight-weeks-analysis-zh\">Cla\u003C\u002Fa>ude Code 看起來不是在做一個聊天框，而是在做一個可執行的工作流程。\u003C\u002Fp>\u003Cp>說白了，這種設計更像任務編排器。模型負責想，工具負責做，流程負責控場。\u003C\u002Fp>\u003Ch2>30 多個工具，代表什麼\u003C\u002Fh2>\u003Cp>外流資料提到，它有 30 多個內建工具。這數字不小。它代表 Anthropic 想讓模型直接動手，而不是只會講。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775113237171-hopn.png\" alt=\"Claude Code 洩漏揭露內部架構\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>工具多，不一定就好。工具太多，反而會讓系統變得難管。但如果設計得好，它可以把很多重複動作收掉。\u003C\u002Fp>\u003Cp>像是看檔案、改檔案、跑命令、查狀態、驗證結果，這些都可以在同一個回合裡完成。這比一直複製貼上方便太多。\u003C\u002Fp>\u003Cul>\u003Cli>聊天型 AI：主要產生文字\u003C\u002Fli>\u003Cli>終端型 agent：能看檔、改檔、跑命令\u003C\u002Fli>\u003Cli>工具型 agent：能串起多步驟流程\u003C\u002Fli>\u003Cli>防護型 agent：會限制危險操作\u003C\u002Fli>\u003C\u002Ful>\u003Cp>這裡的重點是安全。工具越多，誤操作的風險就越高。你不會想讓模型隨便刪資料夾，或亂跑破壞性的指令。\u003C\u002Fp>\u003Cp>所以工具層不是只有能力，還有權限控制。這點我覺得比功能數量更重要。\u003C\u002Fp>\u003Ch2>它跟其他工具差在哪\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\u002Fgithub.com\u002Faider-ai\u002Faider\" target=\"_blank\" rel=\"noopener\">Aider\u003C\u002Fa>，還有 \u003Ca href=\"https:\u002F\u002Fopenai.com\u002Findex\u002Fintroducing-codex\u002F\" target=\"_blank\" rel=\"noopener\">OpenAI Codex\u003C\u002Fa> 比。\u003C\u002Fp>\u003Cp>差異其實很清楚。Copilot 強在 editor 裡補字。Aider 強在命令列改檔。Claude Code 則比較像把終端機、工具鏈、模型控制整合起來。\u003C\u002Fp>\u003Cp>如果你在看產品定位，這三者的味道不一樣：\u003C\u002Fp>\u003Cul>\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ffeatures\u002Fcopilot\" target=\"_blank\" rel=\"noopener\">GitHub Copilot\u003C\u002Fa>：偏補全，適合寫 code 時順手用\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Faider-ai\u002Faider\" target=\"_blank\" rel=\"noopener\">Aider\u003C\u002Fa>：偏 repo 操作，適合直接改檔\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fclaude-code\" target=\"_blank\" rel=\"noopener\">Claude Code\u003C\u002Fa>：偏流程編排，適合長任務\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Fopenai.com\u002Findex\u002Fintroducing-codex\u002F\" target=\"_blank\" rel=\"noopener\">OpenAI Codex\u003C\u002Fa>：偏廣義 coding 助手，整合方式不同\u003C\u002Fli>\u003C\u002Ful>\u003Cp>這種差異很現實。你如果只是想補一行 code，Copilot 很順。你如果要它幫你跑一整段修 bug 流程，Claude Code 這種 agent 會更像樣。\u003C\u002Fp>\u003Cp>我自己的看法是，下一波競爭不只看模型準不準。更重要的是，誰能把「做事」這件事做順。\u003C\u002Fp>\u003Ch2>這個外流透露了什麼產業訊號\u003C\u002Fh2>\u003Cp>先講背景。LLM 工具已經從聊天，走到執行任務。這件事在 2023 到 2025 之間變得很明顯。開發者不想只問答案，還想直接叫 AI 幫忙改 repo。\u003C\u002Fp>\u003Cp>這也是為什麼 terminal 產品開始回來。終端機本來就擅長串流程。對 AI 來說，它很像一個天然的控制台。\u003C\u002Fp>\u003Cp>外流內容讓人看到一個趨勢。未來的 coding assistant，重點不是會不會講，而是能不能穩定做完一整串動作。這包括讀檔、改檔、執行、驗證、失敗後重試。\u003C\u002Fp>\u003Cp>如果你把這些能力拆開看，就會發現很多產品都還在補課。模型很強，不代表工作流就順。這中間差很多。\u003C\u002Fp>\u003Cp>所以這次外流的價值，不在八卦。它比較像一張結構圖，讓大家看到一個成熟 coding agent 的骨架。\u003C\u002Fp>\u003Ch2>我會怎麼看接下來的走向\u003C\u002Fh2>\u003Cp>我覺得接下來 6 到 12 個月，這類工具會更重視控制感。不是只把回答寫得漂亮，而是把確認、差異比對、失敗回復做得更清楚。\u003C\u002Fp>\u003Cp>對台灣開發者來說，這件事很實際。因為很多團隊已經在用 AI 寫 code。真正的問題不是要不要用，而是怎麼用得穩。\u003C\u002Fp>\u003Cp>如果你在做自己的 AI 工具，我會建議先想三件事：串流怎麼顯示、工具怎麼分層、失敗怎麼回退。這三個做好，產品就不會太飄。\u003C\u002Fp>\u003Cp>Claude Code 這次外流，剛好把這些東西攤開來看。你會發現，真正有價值的不是某個神秘功能，而是整個架構怎麼把模型變成可用的工作夥伴。\u003C\u002Fp>\u003Cp>接下來可以觀察一件事：終端機會不會變成 AI coding 的主戰場。如果會，那 Claude Code 這種設計就不是特例，而是範本。\u003C\u002Fp>","Claude Code 洩漏內容揭露 React 與 Ink 終端介面、30+ 工具、以及 AsyncGenerator 分層流程。這篇拆解它怎麼運作，也比較 Copilot、Aider、Codex 的差異。","zhuanlan.zhihu.com","https:\u002F\u002Fzhuanlan.zhihu.com\u002Fp\u002F2022394472621699477",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775113220583-3vyd.png",[13,14,15,16,17,18,19,20,21],"Claude Code","Anthropic","AI coding","終端機 AI","React","Ink","AsyncGenerator","LLM 工具","coding agent","zh",0,false,"2026-04-02T05:12:31.755303+00:00","2026-04-02T05:12:31.664+00:00","done","006e40be-850f-4dd6-a3fc-f71d80cbcf0c","claude-code-source-leak-hidden-internals-zh","ai-agent","44c78609-c684-4804-9e2f-cd8863e67c33","published","2026-04-09T09:00:51.996+00:00",[35,37,39,41,43,45,47,49],{"name":16,"slug":36},"終端機-ai",{"name":18,"slug":38},"ink",{"name":21,"slug":40},"coding-agent",{"name":13,"slug":42},"claude-code",{"name":19,"slug":44},"asyncgenerator",{"name":14,"slug":46},"anthropic",{"name":20,"slug":48},"llm-工具",{"name":15,"slug":50},"ai-coding",{"id":31,"slug":52,"title":53,"language":54},"claude-code-source-leak-hidden-internals-en","Claude Code Source Leak Exposes Hidden Internals","en",[56,62,68,74,80,86],{"id":57,"slug":58,"title":59,"cover_image":60,"image_url":60,"created_at":61,"category":30},"e7874ed9-592f-4e06-b7b7-ab733fe779db","claude-agent-dreaming-outcomes-multiagent-zh","Claude 幫 Agent 加了做夢功能","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1778868642412-7woy.png","2026-05-15T18:10:24.427608+00:00",{"id":63,"slug":64,"title":65,"cover_image":66,"image_url":66,"created_at":67,"category":30},"38406a12-f833-4c69-ae22-99c31f03dd52","switch-ai-outputs-markdown-to-html-zh","怎麼把 AI 輸出改成 HTML","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1778743243861-8901.png","2026-05-14T07:20:21.545364+00:00",{"id":69,"slug":70,"title":71,"cover_image":72,"image_url":72,"created_at":73,"category":30},"c7c69fe4-97e3-4edf-a9d6-a79d0c4495b4","anthropic-cat-wu-proactive-ai-assistants-zh","Cat Wu 談 Claude 的主動式 AI","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1778735455993-gnw7.png","2026-05-14T05:10:30.453046+00:00",{"id":75,"slug":76,"title":77,"cover_image":78,"image_url":78,"created_at":79,"category":30},"e1d6acda-fa49-4514-aa75-709504be9f93","how-to-run-hermes-agent-on-discord-zh","如何在 Discord 執行 Hermes Agent","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1778724655796-cjul.png","2026-05-14T02:10:34.362605+00:00",{"id":81,"slug":82,"title":83,"cover_image":84,"image_url":84,"created_at":85,"category":30},"4104fa5f-d95f-45c5-9032-99416cf0365c","why-ragflow-is-the-right-open-source-rag-engine-to-self-host-zh","為什麼 RAGFlow 是最適合自架的開源 RAG 引擎","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1778674262278-1630.png","2026-05-13T12:10:23.762632+00:00",{"id":87,"slug":88,"title":89,"cover_image":90,"image_url":90,"created_at":91,"category":30},"7095f05c-34f5-469f-a044-2525d2010ce9","how-to-add-temporal-rag-in-production-zh","如何在正式環境加入 Temporal RAG","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1778667053844-osvs.png","2026-05-13T10:10:30.930982+00:00",[93,98,103,108,113,118,123,128,133,138],{"id":94,"slug":95,"title":96,"created_at":97},"4ae1e197-1d3d-4233-8733-eafe9cb6438b","claude-now-uses-your-pc-to-finish-tasks-zh","Claude 開始幫你操作電腦","2026-03-26T07:20:48.457387+00:00",{"id":99,"slug":100,"title":101,"created_at":102},"5bede67f-e21c-413d-9ab8-54a3c3d26227","googles-2026-ai-agent-report-decoded-zh","Google 2026 AI Agent 報告解讀","2026-03-26T11:15:22.651956+00:00",{"id":104,"slug":105,"title":106,"created_at":107},"2987d097-563f-46c7-b76f-b558d8ef7c2b","kimi-k25-review-stronger-still-not-legend-zh","Kimi K2.5 評測：更強，但還不是神作","2026-03-27T07:15:55.277513+00:00",{"id":109,"slug":110,"title":111,"created_at":112},"95c9053b-e3f4-4cb5-aace-5c54f4c9e044","claude-code-controls-mac-desktop-zh","Claude Code 也能操控 Mac 了","2026-03-28T03:01:58.58121+00:00",{"id":114,"slug":115,"title":116,"created_at":117},"dc58e153-e3a8-4c06-9b96-1aa64eabbf5f","cloudflare-100x-faster-ai-agent-sandbox-zh","Cloudflare 的 AI 沙箱跑超快","2026-03-28T03:09:44.142236+00:00",{"id":119,"slug":120,"title":121,"created_at":122},"1c8afc56-253f-47a2-979f-1065ff072f2a","openai-backs-isara-agent-swarm-bet-zh","OpenAI 挺 Isara 的 agent swarm …","2026-03-28T03:15:27.513155+00:00",{"id":124,"slug":125,"title":126,"created_at":127},"7379b422-576e-45df-ad5a-d57a0d9dd467","openai-plan-automated-ai-researcher-zh","OpenAI 想做自動化 AI 研究員","2026-03-28T03:17:42.090548+00:00",{"id":129,"slug":130,"title":131,"created_at":132},"48c9889e-86df-450b-a356-e4a4b7c83c5b","harness-engineering-ai-agent-reliability-2026-zh","駕馭工程：從「馬具」到「作業系統」，AI Agent 可靠性的終極密碼","2026-03-31T06:42:53.556721+00:00",{"id":134,"slug":135,"title":136,"created_at":137},"e41546b8-ba9e-455f-9159-88d4614ad711","openai-codex-plugin-claude-code-zh","OpenAI 把 Codex 放進 Claude Code","2026-04-01T09:21:54.687617+00:00",{"id":139,"slug":140,"title":141,"created_at":142},"96d8e8c8-1edd-475d-9145-b1e7a1b02b65","mcp-explained-from-prompts-to-production-zh","MCP 怎麼把提示詞變工作流","2026-04-01T09:24:39.321274+00:00"]