analysis architecture

500 行哲學:為什麼 NanoClaw 押注更少的程式碼,而不是更多

NanoClaws.io

NanoClaws.io

@nanoclaws

2026年2月26日

8 分鐘閱讀

500 行哲學:為什麼 NanoClaw 押注更少的程式碼,而不是更多

如果你放任不管,每個軟體專案都會走上同一條曲線。程式碼行數上升。依賴數量上升。建構時間上升。能理解整個系統的人數下降。在某個時間點,專案跨過一個門檻,沒有任何一個人能把整個東西裝在腦子裡,從那個時間點開始,每次修改都是在與你無法完全看見的複雜度進行協商。

大多數 AI agent 框架在幾年前就跨過了那個門檻。LangChain 有數萬行核心程式碼。OpenClaw 的 node_modules 包含 1,200 多個套件。即使是「精簡」的框架,一旦你算上工具執行引擎、供應商抽象層、外掛系統和設定檔解析器,通常也有數千行。

NanoClaw 的核心大約 500 行 TypeScript。這不是因為它做得更少——它支援 WhatsApp 訊息、容器隔離、持久化記憶、排程任務、agent swarm 和網頁瀏覽。而是因為它對複雜度應該存在於何處做了不同的押注。 ## 複雜度總得存在於某處

「更少程式碼」這個論點的誠實版本不是說 NanoClaw 消除了複雜度。而是 NanoClaw 把複雜度移到了更好管理的地方。

Agent 迴圈——接收訊息、決定使用什麼工具、執行工具、處理錯誤、管理多輪對話——是複雜的。在大多數框架中,這個複雜度存在於框架維護者寫的應用程式碼中,你必須信任、除錯和更新它。在 NanoClaw 中,這個複雜度存在於 Claude Agent SDK 中,由 Anthropic 的工程團隊維護,針對 Claude 的實際行為進行測試,並與模型同步更新。

工具執行——網頁瀏覽、檔案存取、shell 命令——是複雜的。在大多數框架中,每個工具都是一個自訂實作,有自己的錯誤處理、自己的重試邏輯和自己的安全模型。在 NanoClaw 中,工具由容器內的 Claude Code 提供。工具實作由 Anthropic 維護,而且是數千名開發者每天透過 Claude Code 的 CLI 使用的同一套工具。

安全模型——沙箱、權限強制執行、機密管理——是複雜的。在大多數框架中,安全性是可能有 bug 的應用層程式碼。在 NanoClaw 中,安全性是由作業系統強制執行的容器隔離。Apple Container 和 Docker 已經被數千名工程師強化了很多年。NanoClaw 的 80 行容器編排程式碼利用了那些投資,而不是試圖複製它。

模式是一致的:NanoClaw 的 500 行是連接維護良好、測試充分的元件的編排層。複雜度存在,但它存在於由擁有更多資源和更多專業知識的團隊維護的元件中,這是任何單一開源專案都無法匹敵的。

500 行能做什麼

500 行能實現的功能比大多數人預期的更廣泛,因為功能來自元件,而不是來自 NanoClaw 的程式碼。

網頁瀏覽能用是因為容器映像包含 Chromium 和 agent-browser。NanoClaw 沒有實作瀏覽器——它把一個掛載到容器中。檔案存取能用是因為容器有掛載的檔案系統。NanoClaw 沒有實作檔案 I/O——它設定哪些路徑可用。Agent swarm 能用是因為 Claude Code 原生支援 agent 委派。NanoClaw 沒有實作多 agent 編排——它啟動容器然後讓 Claude 處理協調。

這 500 行處理的是 NanoClaw 使用場景特有的事情:透過 Baileys 接收 WhatsApp 訊息、在 SQLite 中查詢群組狀態、用正確的掛載啟動正確的容器、透過 stdin 傳遞機密、透過 IPC 收集回應,然後把它們送回 WhatsApp。這些是定義 NanoClaw 作為產品的決策——關於如何安全且方便地將使用者連接到 AI agent 的選擇。

其他一切都委派給做得更好的元件。這不是偷懶。這是認知到最好的程式碼是你不需要寫的程式碼,因為你不寫的程式碼沒有 bug、不需要維護,也不會產生安全漏洞。 ## 維護紅利

小型程式碼庫的實際好處會隨著時間以不明顯的方式複利累積。

當 Anthropic 發布新版 Claude Agent SDK 並改進了工具使用時,NanoClaw 只需更新一個依賴就能獲得改進。不需要更新抽象層、不需要重寫轉接器、不需要檢查相容性矩陣。SDK 是直接使用的,所以 SDK 的改進會立即流通。

當容器執行環境發現安全漏洞時,修復方法是更新 Docker 或 Apple Container——而不是修補 NanoClaw 的程式碼。安全邊界由 Apple 和 Docker 的基礎設施團隊維護,而不是由一個小型開源專案。

當新的貢獻者想要理解程式碼庫時,他們可以在一小時內讀完全部 500 行。他們不需要理解外掛系統、供應商抽象或工具執行框架。整個架構可以用一個心智模型概括:訊息從 WhatsApp 進來,容器用 Claude 處理它們,回應送回 WhatsApp。

這就是最少程式碼的維護紅利。你不寫的每一行,就是你不需要除錯、不需要寫文件、不需要向新貢獻者解釋、也不需要在世界變化時修補的一行。

當少即是多

500 行哲學不是放諸四海皆準的。如果你在建構一個有特定商業邏輯的自訂 AI 應用,你需要一個能讓你表達那些邏輯的框架——LangChain、CrewAI 或類似的工具。如果你需要支援 Claude Agent SDK 沒有涵蓋的 AI 供應商,你需要一個供應商抽象層。如果你需要一個給非技術使用者的外掛生態系統,你需要一個外掛系統。

NanoClaw 的押注更窄:對於一個連接聊天頻道、在容器中安全運行、並透過官方 SDK 利用 Claude 能力的個人 AI 助理來說,500 行不只是夠用——而是最佳的。超過這個數字的每一行都是不服務使用者的複雜度、不改善產品的維護負擔,以及不需要存在的攻擊面。

軟體產業有一種根深蒂固的偏見,偏向更多。更多功能、更多抽象、更多設定選項、更多程式碼行數。假設是更多程式碼意味著更多能力。NanoClaw 是一個反例——一個能力來自它連接的元件而非它包含的程式碼的專案。這 500 行不是產品本身。它們是使用者和 AI 之間的最小橋樑,被設計得盡可能薄,讓什麼都不會擋在中間。

掌握最新動態

取得新版本發布、整合功能與 NanoClaw 開發的最新消息。不發垃圾郵件,隨時可取消訂閱。