這一站 15 場,你看完 0 場

Codex 內部怎麼運作

098Dominik Kundel(OpenAI)20:542026-08-10 上架

Codex, Behind the Harness — Dominik Kundel, OpenAI

Codex 內部怎麼運作的演講縮圖

Dominik 順著一則訊息送出後的路徑,講 Codex harness 如何組脈絡、跑動作、管沙盒與自動審查,再到 WebSocket、/goal 與壓縮。

這場講了什麼

  • 兩條協定撐起整個 harness:UI 到 harness 走 App Server 協定,harness 到推論走 Responses API。Dominik 說兩者都為開放生態設計,harness 本身是 Apache 2 授權、用 Rust 寫成。
  • 脈絡建構看大小、彈性與快取:Codex 把部分工具標成 deferred,要用時才靠 tool search 找;可用 skills 清單的長度上限是最大脈絡視窗的 2%。
  • 動作靠幾組工具完成:子 agent 有 spawn 與 send input 之類的工具,背景終端機同理;瀏覽器操作改成在持續存在的 node repl 裡寫 JavaScript;改檔用 apply patch。
  • 沙盒之上再加自動審查:為了減輕核准疲勞,escalation 時會啟動一個只有讀取權限的 auto-review 子 agent,依使用者授權程度與影響來判斷。
  • 瓶頸從推論換成網路:GPT-5.3 Codex Spark 跑到每秒 1,000 個 token 後,Responses API 推出 WebSocket 模式,只傳有變動的內容。
  • 迴圈與壓縮讓 agent 跑得久:/goal 會一直注入 continuation prompt,直到模型呼叫 update goal;server-side compaction 則把舊脈絡換成帶有必要資訊的新視窗。

影片從哪一段開始看14 段

  1. 00:12開場與範圍Dominik 先舉手問誰在做自己的 agent,說明這 20 分鐘只談 Codex harness 裡值得借用的功能,從訊息送出後發生什麼切入。
  2. 01:50兩條協定訊息從 UI 到 harness 走 App Server,harness 到推論走 Responses API;App Server 也被 Codex app 與第三方專案拿去用,Dominik 還拿它把 Codex 放進 Claude Code 與 Doom。
  3. 03:14開放的 Responses 生態Responses API 去年推出,重新設計 chat completions,並加入 Web Search、Image Gen 等 agent 需要的能力;也與 Ollama、LM Studio、NVIDIA 等夥伴訂出開放的 responses schema、設治理組織,任何相容的模型供應商都能接進 Codex harness。
  4. 04:20脈絡建構的三個考量第一步脈絡建構在乎大小、彈性與可快取性;Dominik 用自己改寫成 TypeScript 的 nano codex 示範組出哪些部分。
  5. 05:54Deferred tools 與 skills 上限工具可標成 deferred、之後靠 tool search 載入;skills 清單上限為脈絡視窗的 2%,超過就逐步縮短描述。
  6. 07:01非同步動作子 agent 靠 spawn agent、send input、wait 與關閉的工具來委派;背景終端機也是同一套概念。
  7. 08:02Computer use 的演進去年的 computer use 一次只能一個動作,現在改成讓 agent 用程式碼自己寫操作;瀏覽器使用就是在持續的 node repl 裡寫 Playwright 風格的 JavaScript。
  8. 10:07檔案系統與工具習慣GPT-5 之後的模型都訓練過 apply patch 改檔,其餘走 shell;模型慣用 ripgrep,所以 harness 一併附上,在 Windows 上則訓練成直接寫 PowerShell。
  9. 11:14沙盒所有檔案操作都過沙盒層:macOS 用 Seatbelt、Linux 用 Bubblewrap,Windows 則自己做了開源的沙盒,原因寫在 David 的一篇文章裡。
  10. 12:05核准疲勞與 auto review為了不讓人為了省事一律開 full access,做了自動核准:escalation 時啟動只讀的審查子 agent,依授權程度與影響判斷,同時擋住資料外洩。
  11. 15:32速度與 WebSocketGPT-5.3 Codex Spark 在 Cerebras 上每秒 1,000 個 token,瓶頸變成網路,於是改用持久的 WebSocket 連線,只送變動的項目。
  12. 17:25/goal 迴圈目標沒達成前,harness 會一直注入 continuation prompt,直到模型呼叫 update goal 工具;所以目標要寫得具體、可驗證。
  13. 18:48自動壓縮去年底推出的 auto compaction 在 server 端觸發,把舊脈絡換成含 compaction item 的新視窗,模型也針對它訓練過。
  14. 19:37三點收尾App Server 與 harness 開源可當藍圖或直接使用;多數功能其實在 Responses API 裡;隨模型演進留意 API 與 Codex 的變化。

值得記的話5 句

  • It's Apache 2 license, and the harness is written in Rust.授權是 Apache 2,harness 是用 Rust 寫的01:15
  • Like in some cases you want the agent to actually delete a file, in other cases you don't.有些情況你真的要 agent 刪檔,有些情況不要14:24
  • inference was no longer the bottleneck. It was actually the network.推論不再是瓶頸,真正的瓶頸是網路15:48
  • instead have very concrete and verifiable prompts改成寫很具體、可驗證的提示18:32
  • most of the features that are standout for Codex are actually features that are exposed in the responses API.Codex 多數亮眼的功能,其實都是 Responses API 公開的功能19:54

名詞與人物9 個

Codex harness
Codex 的 agent 外殼,負責組脈絡、呼叫工具、管沙盒;開源、用 Rust 寫
App Server
UI 與 harness 之間的協定,Codex app 與第三方專案都靠它接上 harness
Responses API
harness 與推論之間的 API,內建 Web Search、Image Gen 等 agent 需要的能力
Tool search / deferred loading
工具標成 deferred 後不進脈絡,改由模型用 tool search 找;Dominik 說自 GPT-5.4 起可用
apply patch
模型訓練時學會的改檔工具,用 diff 修改或建立檔案
auto review
取代 full access 的自動核准機制,由只讀的子 agent 審查 escalation
WebSocket mode
Responses API 的持久連線模式,帶狀態、只送變動的資料
/goal
讓 harness 反覆注入 continuation prompt、直到目標達成的迴圈功能
compaction
把過長的脈絡視窗換成帶必要資訊的新視窗,可手動或自動觸發

提到但沒有展開

  • auto review 要防的情境:被要求「高能動性」的模型發現郵件附不上檔案,就改傳到檔案分享空間;或跳脫字元弄錯,刪掉太多資料。判斷看情境:你叫它刪 .git 資料夾就沒問題,沒叫就不該碰;curl Google 測網路可以,上傳檔案就不一定。
  • WebSocket 模式的示範裡,一般模式一次送回九個項目,WebSocket 模式只送一個。

Agent開發工具OpenAI開源

在 YouTube 看原片 ↗

同一站:AI Agents15 場

  1. 從 fork 到 microVM 的沙盒設計009 · Abhishek Bhardwaj(OpenAI) · 45 分
  2. 背景執行的 computer use 三件套016 · Francesco Bonacci(Cua) · 17 分
  3. Loops 到底是炒作還是真能用023 · Dex Horthy, Geoff Huntley, Ian Livingstone & Greg Pstrucha · 60 分
  4. 每個 harness 終將長成 claw028 · Sam Bhagwat(Mastra) · 16 分
  5. 把執行層獨立出來,換模型不用重寫032 · Dan Farrelly(CTO, Inngest) · 19 分
  6. 長時程 agent 的四個設計主題033 · Lance Martin(Anthropic) · 25 分
  7. 讓 agent 看見你所見的畫面034 · Antje Barth(Amazon AGI Lab) · 22 分
  8. 把 Codex 養成一整個團隊038 · Jason Liu(OpenAI Codex) · 75 分
  9. agent 走進群組與眼鏡061 · Sai Krishna Rallabandi · 19 分
  10. agent 出事,多半是 harness 的錯063 · Vinoth Govindarajan(OpenAI) · 18 分
  11. 把 AI agent 接進事件溯源的詐欺偵測066 · Divakar Kumar(FlyersSoft) · 22 分
  12. 給每個人自己改的個人應用平台086 · Kenton Varda(Cloudflare) · 19 分
  13. 用 CCA 考試當 agent 工程的地圖091 · Frank Coyle(UC Berkeley) · 20 分
  14. 讓背景 agent 接手營運雜務094 · Justin Smith(Resolve AI) · 25 分
  15. Codex 內部怎麼運作你在這裡