把執行層獨立出來,換模型不用重寫
Your agent architecture has a half-life of 6 months — Dan Farrelly, CTO, Inngest

Dan Farrelly 把 agent 架構切成執行、context、compute 三層,主張壽命最長的執行層要先做穩,其他兩層才換得動。
這場講了什麼
- 架構有半衰期:Dan 認為 prompt 只撐幾週,模型撐幾個月,執行層做對了可以撐好幾年。多數團隊把三層綁在一起,壽命短的那層會拖垮其他層,變成換個名字的技術債。
- 三層心智模型:執行層是大腦,管流程、狀態、持久性與重試;context 層是知識,包含模型、prompt、tool、memory;compute 層是手,包含 sandbox、runtime 與被自動化的瀏覽器。
- 執行層的三項要求:失敗後能從中斷處續跑、能組合 cron、事件、API、human in the loop、sub-agent 等多種呼叫方式,以及涵蓋整個 session 的完整 trace。
- sandbox 不該扛狀態:sandbox 本來就是短暫、無狀態的,拿它加 snapshot 來做持久性是 anti-pattern。sandbox 的 context、執行順序與持久性,應該由獨立的執行層提供。
- 背景 agent 與 loop 都靠執行層:接下來的架構都是長時間、非同步、委派式的,必須能被人與 agent 檢視。Dan 用健康檢查、triage、reviewer 三個函式示範一個會自我改進的 loop。
- 評分可以掛在執行層:使用者輸入、回饋與結果都會經過這一層,適合在這裡做事後評分,並以「有沒有開 PR」這類實際結果取代按讚。
影片從哪一段開始看16 段
- 00:17開場與半年重寫Dan 自我介紹,指出做 agent 超過六個月的人幾乎都重寫過東西,並問哪些部分是刻意設計才留下來的。
- 02:33三層概念模型與其畫元件圖,不如想三個層:執行是大腦,context 是知識,compute 是手。
- 03:42各層的半衰期prompt、模型、執行層壽命差很多;全部綁在一起,短命的那層會往外漏,把其他層拖下水。
- 04:38各層混在一起用 framework、拿前沿實驗室現成的 harness,或整套自己刻,抽象常常不存在、太高層,或各層混成一團:編排埋在 framework 裡、狀態放在 sandbox、重試跟 prompt 邏輯纏在一起,換哪一塊都得幾乎全部重寫。
- 05:43執行層是穩定層把執行層定義成負責可靠地跑程式、管理每件工作如何完成,且與底下的基礎設施無關;換模型、context、sandbox 它都不用變。
- 06:37要求一:可續跑長任務在第 38 步失敗,應該從那裡重試,而不是從頭來;狀態必須持久而且放在外部。
- 07:59要求二:多種呼叫方式需要 cron、事件、API、human in the loop、sub-agent,同步非同步都要行;少了它,harness 會吸進 queue、worker、backoff 等雜事。
- 08:48要求三:全程可觀測不只 LLM 與 tool call,連資料庫錯誤、權限問題、觸發來源都要在同一條 trace 裡。
- 09:39Sandbox 與執行層分家agent 需要 sandbox,但它短暫無狀態;用 snapshot 當持久層是 anti-pattern,執行層才是給它順序與持久性的那一層。
- 10:29接下來六個月的架構動態 workflow、自主 loop、agent factory 都是長時間、非同步、委派式的,必須可被人與 agent 檢視,也要能混用。
- 11:38背景 agent 的例子背景 agent 不是 request-response,可能跑幾分鐘到幾小時,像 200 次 tool call 這種規模,幾乎保證至少失敗一次,沒有基礎設施就沒法除錯。
- 12:30Loop 與三函式範例Loop 持續或定時對照目標評估系統狀態,三個月前的 framework 都不是為此設計的;範例是每 30 分鐘的健康檢查,不健康就叫起 triage agent,開 sandbox、看 commit 找根因。
- 14:24reviewer 要看得懂執行每週跑一次的 reviewer 函式檢討 triage 的表現,所以得讀得到執行紀錄:跑了什麼、分出哪些 sub-agent、呼叫了哪些 workflow,再自己改或回報怎麼改進。
- 15:49在執行層做評分使用者輸入、回饋與結果都流經執行層,是 observability 的樞紐,可以帶著完整 trace 延後評分。
- 16:40Inngest 的定位Inngest 定位成 AI agent 的 durable execution,可接任何 context 層與 compute 層,提供持久 step、事件觸發、排程、agent 間協調與完整 trace。
- 18:17結論把執行層與它的 primitives 做對,其他部分就能圍著它快速演進。
值得記的話5 句
prompts last weeks if you're lucky, maybe a single week.
prompt 運氣好撐幾週,也可能只撐一週03:42a three-hour run cannot hold state in memory or in disk.
跑三小時的任務不能把狀態放在記憶體或磁碟裡07:28But a sandbox is ephemeral and stateless by design.
但 sandbox 天生就是短暫又無狀態的09:55I think of the sandbox as the hands and execution as the brain.
我把 sandbox 當成手,執行層當成大腦10:12So the frameworks of three months ago were not designed to handle this, right?
三個月前的 framework 並不是為了應付這種情況而設計的,對吧13:00
名詞與人物8 個
- Inngest
- Dan Farrelly 擔任 CTO 兼共同創辦人的公司,產品是 AI agent 用的 durable execution
- execution layer
- 三層裡的大腦,負責流程、狀態、持久性、重試,並與底層基礎設施無關
- context layer
- 三層裡的知識,包含模型、prompt、tool、memory,變動最大的一層
- compute layer
- 三層裡的手,包含 sandbox、runtime 與被自動化的瀏覽器
- half-life(半衰期)
- Dan 借科學名詞,形容架構各層能撐多久不必重寫
- durable execution
- 狀態存在外部、失敗後可從中斷處續跑的執行方式
- background agent
- 沒有人在等回應、可能跑數分鐘到數小時的非同步 agent
- loop
- 持續或定時對照目標評估系統狀態、決定下一步的系統
提到但沒有展開
- Dan 把按讚與倒讚換成實際結果當評分依據:triage 有沒有促成工程團隊動作、有沒有開 PR、研究 agent 的報告有沒有被存下來。
- 執行層可以在 agent 執行中延後評分,帶著完整 trace 與輸入輸出,也可以等後續事件附加到 session 上。
同一站:AI Agents15 場
- 從 fork 到 microVM 的沙盒設計009 · Abhishek Bhardwaj(OpenAI) · 45 分
- 背景執行的 computer use 三件套016 · Francesco Bonacci(Cua) · 17 分
- Loops 到底是炒作還是真能用023 · Dex Horthy, Geoff Huntley, Ian Livingstone & Greg Pstrucha · 60 分
- 每個 harness 終將長成 claw028 · Sam Bhagwat(Mastra) · 16 分
- 把執行層獨立出來,換模型不用重寫你在這裡
- 長時程 agent 的四個設計主題033 · Lance Martin(Anthropic) · 25 分
- 讓 agent 看見你所見的畫面034 · Antje Barth(Amazon AGI Lab) · 22 分
- 把 Codex 養成一整個團隊038 · Jason Liu(OpenAI Codex) · 75 分
- agent 走進群組與眼鏡061 · Sai Krishna Rallabandi · 19 分
- agent 出事,多半是 harness 的錯063 · Vinoth Govindarajan(OpenAI) · 18 分
- 把 AI agent 接進事件溯源的詐欺偵測066 · Divakar Kumar(FlyersSoft) · 22 分
- 給每個人自己改的個人應用平台086 · Kenton Varda(Cloudflare) · 19 分
- 用 CCA 考試當 agent 工程的地圖091 · Frank Coyle(UC Berkeley) · 20 分
- 讓背景 agent 接手營運雜務094 · Justin Smith(Resolve AI) · 25 分
- Codex 內部怎麼運作098 · Dominik Kundel(OpenAI) · 21 分