拆解 Hugo Santos 與 Madison Faulkner 在 AI Engineer Europe 的演講:為什麼「人類節奏」的 CI/CD 撐不住 agent 規模,以及 Continuous Compute 的解法
開場一句話:「今天不是來教大家換工具,而是來拆一個觀念——我們每天在用的 CI/CD pipeline,它的設計前提正在崩解。」
先講清楚這場演講的份量:講者是 Namespace 創辦人 Hugo Santos(前 Google 九年、做過 Boq 微服務平台)與投資人 Madison Faulkner(NEA,前 Facebook 資料科學)。這不是行銷話術,是基礎設施第一線的觀察。提醒聽眾:標題雖然聳動,我們會用批判角度看,最後也會講反方意見。
傳統 CI/CD 是為「人一週推一兩個 diff」設計的,本質是一條靜態、循序的檢查清單
當數千個 agent 同時、不停地開 PR,這條清單成為瓶頸——這不是調快就能解的問題
agent 真正需要的不是 pipeline,而是一台能自己 build/test/deploy 的電腦。講者稱之為 Continuous Compute
Source — Namespace Labs, "CI/CD is Dead, Agents Need Computers" (AI Engineer Europe)
原理:CI/CD 的「CI(持續整合)」假設是——變更是稀疏的、可預期的,所以用一條固定流水線一關一關跑很合理。這個假設在 agent 時代被打破:變更變成高頻、平行、機器產生。
給聽眾一個記憶錨點:把 CI/CD 想成銀行只開一個櫃台——客人一天來十個沒問題;現在一秒鐘湧進一千個,問題不是櫃台員手腳不夠快,而是「單櫃台 + 排隊」這個模型本身錯了。後面每一段都會回到這個比喻。
Source — NEA Blog;namespace.so;講者公開資料
為什麼要花一頁講背景?因為「CI/CD 已死」這種話誰都能喊,關鍵是誰在喊。Hugo 是真的在 Google 維運過數百個內部團隊共用的開發平台——他講瓶頸是有傷疤的。
提醒聽眾一個立場:這同時是一家公司(Namespace)的產品論述,後面看到他們的解法時,要分清楚哪些是「行業趨勢」、哪些是「他們家賣的東西」。我們會兩者都標出來。
主線貫穿全程:從「為人設計的流水線」走向「為機器與人共用的運算環境」
給聽眾一張地圖:我們不會只停在「CI/CD 死了」這種口號,而是一路走到「那我下週上班可以改什麼」。第五段是給大家帶走的東西。
互動提示:可以先問現場——「你們的 CI 跑一次平均幾分鐘?最近有沒有因為排隊等過 build?」把痛點先勾出來,後面講瓶頸時更有共鳴。
能自主寫碼、測試、開 PR 的 AI 程式(如 coding agent),不是只回答問題的聊天機器人
實際執行 CI 工作(build/test)的機器或容器。數量有限,會排隊
合併佇列:多個 PR 在進主線前,依正確順序排隊驗證再合入
秒級開出的隔離雲端開發環境,讓 agent/人有一台可獨立運作的「電腦」
遠端快取:把已 build 過的結果存起來,重複的部分不重做
本演講提出的新典範:用「隨需運算環境」取代「循序流水線」
這頁是保險:團隊裡資深、資淺都有,先把六個詞講清楚,後面不會有人卡住。
特別強調 Runner 與 Premerge Queue,因為瓶頸與解法都圍著這兩個轉。Devbox 是 Namespace 的具體產品名,先點到,第三段會展開。
先看清楚被打破的那個設計前提,再談解法才有意義
過場:「在談新東西之前,先誠實面對舊東西為什麼會壞。」這一段全部在講機制(為什麼),不是抱怨。工程師要的是因果,不是口號。
CI/CD 誕生於一個假設:人類一週推送一兩個變更。所以把流程設計成一條固定、循序、人觸發的流水線——push → build → test → deploy,一關過才到下一關,完全合理
就像工廠的單一輸送帶:產品量穩定時,循序檢查最可靠。但輸送帶的吞吐量是固定的——它假設上游的投入速度也是固定的
關鍵詞:靜態、循序、人觸發、人配速(human-paced)。這四個詞後面全部會被推翻
重點是讓聽眾「同意舊設計在當年是對的」。不要把 CI/CD 講成笨——它在人類節奏下是優雅的工程。問題出在前提變了,不是當初做錯。
舉例延伸:可問現場「你們 pipeline 是不是大多 push 才觸發、一步一步跑?」幾乎都會點頭——那就是 human-paced 的活證據。
同樣一條 pipeline,輸入端從「細水」變成「洪流」。問題不在某一步慢,而在整個模型假設的輸入速率錯了
原理:這是一個數量級(order of magnitude)問題,不是百分比問題。從 1–2 到數千,不是「忙一點」,是「換了一個物理世界」。
數字誠實聲明:演講用「一週一兩個 diff」對比「數千 agent 同時開 PR」來描述量級對比,這是定性的規模描述,不是某一家公司的精確統計,講的時候要這樣說,不要假裝是實測數據。
「每一分鐘的 build 時間,都會被乘上多出來的 PR 數量」——這是 Namespace 反覆強調的放大效應
原理(給工程師的精確版):這是排隊理論。當到達率逼近服務率,等待時間不是線性增加,而是趨近無限。runner 數固定(服務率固定),agent 把到達率推高,佇列就爆掉。
舉例:高速公路。車流量到某個臨界點,再多一台車不是慢一點,是整段直接堵死。CI 佇列也是同一條曲線。這也解釋了為什麼「加幾台 runner」常常只是把臨界點往後挪一點點。
Source — Namespace Labs / NEA Blog
原理:這頁把技術問題翻譯成財務問題。對工程師:你等 build 的時間是隱性成本;對主管:那是真金白銀的雲端帳單,而且成長最快、最沒人優化。
政府/資安場景的對應:把「成本」換成「可維運性與資源治理」。同樣的道理——當自動化產出暴增,支撐它的運算資源若不治理,會變成最大的隱性負債。措辭用「改善治理、提升可維運性」,不要誇大。
把同一條循序流水線調快,只是提高了固定模型的吞吐量上限。模型本身仍假設循序、人觸發、有限 runner——量級再翻倍,又卡回原點
「答案不是更快的流水線,而是一個根本不同的底層典範。」agent 與開發者要的是隨需、高效能的運算環境,不是一排為少量 PR 設計的循序步驟
這就是從「優化舊東西」轉向「換掉抽象層」的分水嶺——下一段進入解法
這是全場的轉折點,要停頓一下。原理:當你發現「再怎麼優化都會撞同一面牆」,代表問題出在抽象層(abstraction),不是參數。
舉例:當年從「手動部署腳本」跳到「CI/CD」也是換抽象層,不是把腳本寫快一點。現在輪到 CI/CD 自己被換。用這個歷史類比,聽眾比較不會覺得是在唱衰,而是看到一條演進線。
不是 pipeline,是一台能讓 agent 自己 build、test、deploy 的電腦
過場:「如果舊抽象是『流水線』,新抽象是什麼?」講者的答案非常具體——一台電腦。接下來四頁是這個概念的四根支柱。
把「我們知道的 CI/CD——一張為人類節奏設計的靜態、循序檢查清單」宣告為過去式;取而代之的是一個讓 agent 以自己的速度自主運作的運算環境
這是整場最該被記住的一句話,刻意用深色頁做視覺斷點(NICS 的 dark emphasis,全場僅用一兩次)。唸的時候放慢。
原理:「電腦」這個比喻的精髓是——電腦不會叫你排隊一步一步來,你想做什麼就做什麼、平行做。把「環境」交給 agent,等於把控制權與配速權從流水線交回給執行者。下一頁拆成四根可操作的支柱。
四者共同把「事後、循序、人觸發」改成 「即時、平行、自動觸發」
先給全景,再逐根拆。提醒聽眾抓一條主軸:每一根支柱都在做同一件事——把驗證從「流程後段、靠人推」往前移到「過程之中、自動發生」。
這四項是演講列出的 Continuous Compute 構成要素,接下來四頁每根都配一個工程師日常的例子。
變更不再從一行 diff 起步,而是從高層目標與規格起步。agent 先理解「要達成什麼」,再展開成具體改動——機器才有依據去平行嘗試
你給 agent 的不是「改第 42 行」,而是「把登入改成支援 SSO,並維持既有測試通過」。agent 依這份意圖自己拆解、實作、驗證
對應到實務:這正是 plan-first(先計畫再動手) 的工作法——意圖是 agent 的 checkpoint
原理:意圖/計畫是 agent 能平行探索的前提。沒有清楚的目標,機器只能照單改一行;有了目標,它可以同時試三種實作。這也呼應大家熟悉的「Research → Plan → Build」工作法。
舉例可換成你們團隊真實情境,例如「把這支 API 加上分頁,且回應格式維持一致」。重點讓聽眾感覺:我給的是意圖,不是逐行指令。
把驗證左移到寫碼當下,而不是等 commit、push、進 pipeline 才知道壞了。回饋迴圈越短,agent 修正越快、浪費越少
像 IDE 的紅線即時報錯——只是對象換成 agent:它一邊改、一邊跑型別檢查與單元測試,錯誤在進佇列前就被攔下
效果:把「壞掉的 build」擋在源頭,佇列裡跑的大多是已經很可能會過的東西
原理:這是「shift-left(左移)」的極致版。對 agent 特別重要——agent 速度快,如果回饋慢,它會在錯誤方向上跑很遠。短迴圈是讓 agent 不暴衝的韁繩。
連結回前面排隊理論:即時驗證等於降低進入佇列的到達率(壞東西不進來),從源頭緩解飽和,而不是事後加 runner。
安全、效能、整合等需要外部環境的檢查,自動觸發、自動完成,不再卡在「等某個人按下執行」
PR 一出現,安全掃描、效能基準、整合測試自己排上去跑完。人只在有結果、需要判斷時才介入——人留在迴圈裡,但不是瓶頸
關鍵分寸:自動化的是「執行」,不是「判斷」——human-in-the-loop 仍在,只是不再卡流程
原理:瓶頸常常不是機器慢,是「等人觸發」。把觸發自動化,把人留在「需要決策」的節點。這對資安治理尤其重要——可追溯、可稽核的自動檢查,比靠人記得按按鈕可靠。
務必強調分寸(呼應 AI 治理原則):自動跑檢查 ≠ 自動放行。最終是否合併、是否上線,仍應有人類監督。措辭用「強化監測、提升可驗證性」,避免講成「全自動、零人工」。
當數千個變更同時想併入主線,順序會互相影響。Premerge 佇列讓變更依正確順序、由 agent 編排後再合入,避免「各自過了、合起來壞了」
A、B 兩 PR 各自測試都過,但同時併會衝突。佇列會以合併後的狀態重新驗證、排序,確保主線隨時是綠的
這是「平行開發」能成立的安全閥——高頻變更下,主線不再三天兩頭爆掉
原理:這解的是「合併時的組合爆炸」。每個 PR 單獨綠不代表合起來綠;變更越多,互相干擾的組合越多。佇列負責用「合併後狀態」來驗證並排序。
舉例可用大家踩過的坑:「main 昨天好好的,今天兩個人各自 merge 完就壞了。」Premerge 佇列就是把這件事系統化、交給 agent 編排,而不是靠運氣與 rebase。
基礎設施快到足以跟上「不斷移動的 repo tip」——當變更高頻流動,環境本身要能即時供給運算,平行嘗試才不會變成空談
這是講者描繪的終局,要說清楚這是願景/方向,不是現成功能,避免聽眾以為明天就有。
原理:當開環境像開分頁一樣便宜,agent 就能「同時走三條路、留最好的一條」。這是「電腦」比喻的最終形態——運算不再是稀缺的、要排隊的資源,而是隨需平行的。也順勢帶出:要支撐這個,底層必須是隨需、高效能的運算環境,進入第三段。
概念要能跑,靠的是幾個具體的基礎設施能力
過場:「概念講完了,那它具體長什麼樣?」這一段是 Namespace 的產品能力——提醒聽眾這裡開始有「廠商色彩」,但這些能力是通用的,可對照任何同類方案。
「agent 需要電腦」最直接的實作:秒級開出、可重現、隔離的雲端開發環境。agent 在裡面獨立 build、test,不卡你本機,也不互相干擾
官方說法:「給你的 coding agent 自己的隔離雲端環境,幾秒內開一個 Devbox,讓它自己跑,不占用你的電腦。」支援 SSH/VNC 進去除錯
示意:每個 agent 一台隔離 Devbox,可重現、互不干擾
Source — namespace.so(產品說明)
原理:Devbox 是「電腦」比喻的物理載體。可重現+隔離+秒級,三個特性缺一不可——可重現才不會「在我這台會過」、隔離才能平行、秒級才談得上 multiverse。
舉例給工程師最有感:「agent 跑測試時,你的筆電不會被吃滿、不用等它。」這是大家當下就痛的點。SSH/VNC 進去除錯也很關鍵——agent 環境不是黑盒,人可以進去看。
用增量建置(incremental)+ 遠端快取:已經 build 過的部分不重做,跨機器共用快取。重複工作被消掉,同樣的 workflow 就明顯變快
Fal.ai 工程師:快取帶來「預設 runner 比不上的速度」,還能互動式 debug。重點是——不用改既有 workflow 就見效
Source — Namespace 客戶引述(Christian Mladenov, Fal.ai)
原理:快取與增量是「不重做重複工作」。在高頻變更下,重複的部分佔比極高(同一份依賴被 build 上千次),所以省掉它的效益被放大——又一次的「乘上 PR 數」效應,只是這次是往好的方向。
引述要誠實標來源:這是 Namespace 客戶的公開好評,屬於正面證言,不是中立 benchmark。講的時候說「客戶的說法是…」,把性質講清楚。
附帶生產級維運:可觀測性、私有容器登錄、SSH/VNC 存取——讓 agent 環境是「能看、能進、能管」的,而非黑盒
原理:你無法優化你看不見的東西。前面講「CI/CD 是最沒被優化的支出」,原因之一就是缺乏可觀測性。Analytics 把 duration/flakiness/resource 攤開,才談得上治理。
對資安/政府場景特別點題:可觀測 = 可稽核。私有登錄與存取控制是治理要求,不只是方便。這頁可以橋接到「治理」語彙。
Source — Namespace Labs / NEA Blog
原理:再好的新典範,如果要全員 re-platform,落地率就趨近零。能對接 GitHub Actions/k8s,意味著漸進採用——這也是給聽眾的安心點:不是叫你明天廢掉現有 CI。
策略提醒:對團隊而言,最務實的第一步往往是「在現有 pipeline 上加快取/加隔離環境」,而不是換平台。這頁替第五段的行動建議鋪路。
服務數百個工程組織,包含:
A 輪由 NEA 領投
Source — NEA Blog / namespace.so(客戶公開證言,屬正面評價非中立評測)
用途:證明這不只是 PPT 概念,已有真實採用。但要誠實——這些是客戶好評,不是獨立 benchmark。我刻意在來源行標註了性質。
對工程師有感的點:Zed、LiveKit、Framer 都是大家認得、CI 壓力很大的團隊。Hashimoto 用兩年這種「時間長度」比任何百分比都有說服力。
一張對比表看清差異,再聽一次反方的聲音——保持工程師的懷疑
過場:「我們不當信徒。」這一段刻意放反方意見,讓整場分享是平衡的——這也是對工程團隊該有的態度。
| 面向 | 傳統 CI/CD(為人設計) | Continuous Compute(為人+agent) |
|---|---|---|
| 核心抽象 | 靜態、循序的流水線 | 隨需、隔離的運算環境(電腦) |
| 觸發方式 | 人 push 後觸發 | 自動、過程中即時觸發 |
| 驗證時機 | commit 之後(事後) | 寫的當下(內聯)+ 自動外部驗證 |
| 擴展模型 | 有限 runner,量大就排隊 | 隨變更量自然擴展 |
| 合併方式 | 人工協調、容易互相衝突 | agent 編排的 premerge 佇列 |
這頁是全場的「一圖總結」。建議放慢,逐列唸,每一列都對應前面講過的支柱/能力,幫聽眾把點連成線。
強調最後一列「擴展模型」:這才是分水嶺。前者是「固定容量+排隊」,後者是「隨量擴展」。其餘差異都是從這一條長出來的。
務實的讀法:「CI/CD 已死」是修辭。真正在發生的是抽象層升級——確定性的關卡(測試、掃描)不會消失,而是被 agent 編排、加速、隨需供給
Source — jasonrowe.com(第三方評論)
這頁很重要——它讓你的分享有公信力。原理:「死」是行銷詞,工程上更準確的說法是「典範轉移/抽象層升級」。確定性檢查(你要的測試、資安掃描)不會消失,反而更該保留。
給結論定錨:不要二選一(全押 agent 或全守舊)。確定性自動化 + AI 編排 的混合,才是落地時的真實樣貌。這也呼應 AI 治理:保留可驗證、可追溯的關卡,由 AI 增強而非取代。
不必換平台,也能從今天開始往這個方向移動
過場:「講了這麼多,下週上班能改什麼?」這一段是給大家帶走的,全是可立即動手的小步。
原理:每一條都對應前面一根支柱/能力,且都是「在現有體系內」就能做的小步,不需要 re-platform。鼓勵聽眾挑一條本週就試。
第 4 條最常被跳過卻最關鍵——沒有數據,所有優化都是猜。建議當作起手式:先量一週,再決定先動哪裡。
差別不在「agent 更聰明」,而在它有沒有一台能自己跑的電腦
這是全場最「有感」的一頁,刻意放在收尾前。用大家天天遇到的場景——等 CI、本機被吃滿——讓抽象概念落到肌肉記憶。
收束金句:「差別不在 agent 更聰明,而在它有沒有一台能自己跑的電腦。」這句把標題「agent 需要的是電腦」收回來。可停頓,讓它沉下去。注意:左欄的「12 分鐘」是示意情境,不是統計值,講時說「假設」。
讓聽眾拍這一頁。五點剛好對應五段。唸的時候每點配一句前面的例子,幫記憶。
最後一點再次強調「保留人類監督」——這是把技術趨勢扣回治理原則的收尾,對工程與政府場景都成立。
真正的轉變不是換工具,而是把「為人類節奏設計的流水線」升級成「人與 agent 共用的運算環境」。從一台隔離環境、一次左移驗證開始
收尾把問題從「CI/CD 死沒死」這個會吵架的命題,轉成一個更有用的問題:「你的 agent 有沒有電腦可用?」這是可行動的。
Q&A 預備:若被問「那我們現在該不該換平台?」——答案是不必,先在現有 CI 上做四件小事(前一頁)。若被問「資安怎麼辦?」——強調可觀測、可稽核、人類監督仍在。來源都已列出,歡迎自行查證。