Future-Proof Coding Agents — 打造不怕模型更新的程式代理

OpenAI 的 Bill Chen 與 Brian Fioca 在 AI Engineer Code Summit 分享了如何打造經得起模型迭代考驗的 Coding Agent。他們深入解析了 Coding Agent 的三大組成要素——使用者介面、模型與 Harness(執行框架),並以自家的 Codex 為例,說明模型的「智慧」與「習慣」如何影響 Agent 的表現。演講也介紹了 Codex 作為 SDK 的多種整合模式,以及未來 AI 程式代理的發展方向。


原影片連結:https://www.youtube.com/watch?v=wVl6ZjELpBk

影片重點

  • Coding Agent 由三個部分組成:使用者介面(UI)、模型(Model)和 Harness(執行框架)
  • Harness 是 Coding Agent 中最關鍵且最複雜的部分,負責與模型的互動介面
  • 模型具有「智慧(Intelligence)」和「習慣(Habit)」兩個面向,理解習慣是成為好的 Prompt 工程師的關鍵
  • 不要過度提示(overprompt)模型,讓模型使用它熟悉的行為模式反而表現更好
  • Codex 不只是 Coding Agent,本質上是一個終端機的電腦使用代理(Computer Use Agent)
  • Harness 正在成為新的抽象層,讓開發者可以專注於產品差異化
  • Codex SDK 支援 TypeScript、Python、GitHub Action 等多種整合方式
  • 未來模型將能處理更長期的無人監督任務,信任上限將持續提高

詳細內容

[00:21] 開場:為什麼要談 Coding Agent

Bill Chen 和 Brian Fioca 來自 OpenAI 的 Applied AI Startups 團隊,專門協助新創公司打造 Coding Agent。他們指出 Coding Agent 在過去一年爆發式成長,這個趨勢之所以重要,是因為它反映了我們距離 AGI 有多近——軟體工程可以被視為一種通用的問題解決媒介。

然而,由於底層模型不斷更新,開發者必須持續在新模型上重建 Agent,這是一個很大的痛點。這次演講的目標就是分享如何解決這個問題。

[01:44] Coding Agent 的三大組成要素

一個 Coding Agent 的架構其實很簡單,由三個部分組成:

  1. 使用者介面(User Interface):可以是 CLI 工具、IDE 整合,或是雲端背景 Agent
  2. 模型(Model):如 GPT-5.1、Codex Max 等最新模型
  3. Harness(執行框架):這是最核心的部分,直接與模型互動。可以簡化理解為一組 Prompt 和工具的集合,組成一個核心的 Agent 迴圈,負責處理模型的輸入和輸出

其中 Harness 是今天的重點。由於模型持續更新,開發者必須不斷調整 Agent 以適應新模型,Harness 的設計至關重要。

[03:22] Harness 的挑戰

打造一個好的 Harness 面臨多重挑戰:

  • 工具適配(Tool Adaptation):自訂工具可能不在模型的訓練分佈內,模型可能從未見過你設計的工具
  • Prompt 調校:每個模型都有不同的偏好,需要花時間調校 Prompt
  • 延遲管理(Latency):思考型模型的等待時間如何處理?是否讓模型在思考時與使用者溝通?
  • Context Window 管理與壓縮(Compaction):這是一個極其困難的工程問題
  • API 變更:從 Completions 到 Responses API,介面不斷演進

[05:44] 模型的智慧與習慣

Brian 提出了一個重要觀點:模型訓練會產生副作用,可以用「智慧 + 習慣(Intelligence + Habit)」來理解。

智慧(Intelligence)是指模型擅長什麼語言、什麼框架。習慣(Habit)是指模型被訓練出的解題方式——例如先規劃方案、環顧上下文、蒐集資訊,然後才動手寫程式碼,最後測試成果。

培養對模型習慣的直覺,就是成為好的 Prompt 工程師的方法。如果你用模型不熟悉的方式去指示它,就會出問題。

[07:02] GPT-5 的實際教訓:不要過度提示

Brian 分享了 GPT-5 發布時的一個有趣故事:許多從其他模型遷移過來的使用者,把原本為其他模型設計的 Prompt 套用到 GPT-5 上,要求模型在每次修改前仔細檢查所有檔案。但 OpenAI 已經訓練模型具備這種能力,所以模型會非常徹底地執行這些指令,導致速度極慢。

Brian 直接問模型:「我喜歡你的解法,但花了太長時間,我的指令要怎麼改才能讓你更快?」模型回答:「你要我去看所有東西,但我其實不需要這樣做,這才是花時間的原因。」

這個故事說明了同時打造模型和 Harness 的優勢——你對模型的習慣瞭若指掌,這也是為什麼 Codex 同時包含模型和 Harness。

[08:28] Codex 的功能概覽

Codex 被設計為一個無處不在的程式代理:VS Code 外掛、CLI 工具、雲端服務(可從 VS Code 或手機上的 ChatGPT 呼叫)。它能將規格轉為可執行程式碼、導覽程式碼庫編輯檔案、執行命令和任務、從 Slack 呼叫、以及在 GitHub 上審查 PR。

Codex 的 Harness 需要處理非常複雜的工作:平行工具呼叫與執行緒合併、沙箱安全性、Prompt 轉發與權限管理、Compaction 觸發時機與快取最佳化、MCP 支援,以及圖片壓縮解析度等。這些都是從零打造並持續維護的龐大工程。

[10:22] Codex 不只是 Coding Agent

Bill 提出一個有趣的觀點:Codex 本質上是一個終端機的電腦使用代理(Computer Use Agent for the Terminal)。在瀏覽器和圖形介面出現之前,人類就是透過寫程式和串接命令列來操作電腦的。因此,只要你的任務可以用命令列和檔案來表達,Codex 都能處理。

例如,Bill 用 Codex 整理桌面上的照片到資料夾,也可以分析大量 CSV 檔案做資料分析——這些並不是傳統意義上的「程式開發」任務。

[11:27] 用 Codex 打造你自己的 Agent

這一段介紹了如何將 Codex 作為 Agent 嵌入你自己的 Agent 中。Brian 分享了與 Cursor、VS Code 等頂級客戶合作的經驗,歸納出一個關鍵模式:Harness 正在成為新的抽象層

這種模式的好處是,你不再需要每次模型升級時都重新最佳化 Prompt 和工具。有人可能會說這只是在做「Wrapper」,但 Brian 不同意——將精力集中在產品差異化上才是真正的價值所在。

[12:52] Codex SDK 的整合模式

Codex 提供了多種 SDK 整合方式:

  • TypeScript Library:程式化呼叫
  • Python exec:程式化執行
  • GitHub Action:自動處理 PR 合併衝突
  • Agents SDK + MCP:將 Codex 作為工具嵌入其他 Agent

Brian 描述了 Agent 的演進歷程:從聊天機器人 → 給聊天機器人工具 → 給工具一個能製造新工具的能力。現在你可以打造企業軟體,讓它為每個客戶即時寫出 API 連接器——這原本需要專業服務團隊才能完成。

實際案例包括:Zed 編輯器將 Codex 包裝成 IDE 內的代理介面,讓他們專注於打造最好的程式碼編輯器;GitHub 也直接透過 SDK 整合了 Codex。

[14:56] Cursor 的客製化案例

對於想要完全客製化 Agent 層的團隊,Cursor 是一個很好的範例。他們與 OpenAI 密切合作,將工具對齊到模型訓練時的分佈(in-distribution),並參考 Codex CLI 的開源實作來調整自己的 Harness。所有原始碼都是公開的,任何人都可以 fork 使用。

[15:34] Codex 的未來展望

Codex 推出不到一年,發展非常迅速。隨著 Codex Max 的推出,它已成為用量成長最快的模型,每週處理數十兆的 Token,自 Dev Day 以來已翻倍。

Bill 的建議是:朝著模型發展的方向去建構(Build where the models are going)。可以安全地假設模型會持續變好,未來將能處理更長期的無人監督任務。新模型會提高信任上限——現在他能信任模型完成比六個月前困難得多的工作。

未來的重點方向包括:處理大型程式碼庫、非標準函式庫、閉源環境、以及匹配現有的模板和實踐。SDK 會持續演進,讓模型在工作中學習、不重複犯錯,並提供更多介面讓 Agent 透過寫程式和使用終端機來解決各種問題。

[16:56] 總結

Harness 非常複雜且需要大量維護工作,尤其是面對不斷推出的新模型。OpenAI 已經在 Codex 中為開發者打造好了這一切——你可以直接使用,也可以查看原始碼。你可以用它來打造程式開發以外的新應用,讓 OpenAI 負責確保你擁有最強大的電腦代理。

我的想法

這場演講最有啟發性的觀點是「不要過度提示(Don’t Overprompt)」。很多開發者(包括我自己)在使用新模型時,往往習慣性地在 Prompt 中加入大量指令,要求模型做各種檢查和驗證。但 Brian 的經驗告訴我們,新一代模型已經內建了很多好的「習慣」——過多的指令反而會拖慢速度,甚至影響品質。這很像是管理一個有經驗的工程師:你不需要告訴他們每一步該怎麼做,只需要說清楚目標。

Harness 作為新抽象層的概念也很值得關注。這基本上是在說:未來的 AI 開發工具競爭不會只是在模型層面,而是在誰能提供最好的「Agent 基礎設施」。Codex SDK 的定位就像是給 Coding Agent 的 AWS——你不需要自己管理底層的複雜性。

不過要注意的是,這畢竟是 OpenAI 員工在 AI Engineer Code Summit 的演講,整體論述帶有明顯的產品推廣立場。將 Harness 完全交給平台方也意味著對其產生依賴。對於需要深度客製化的場景,理解 Harness 的內部運作仍然很重要,Codex CLI 的開源碼是很好的學習資源。

進階測驗:Future-Proof Coding Agents

測驗目標:驗證你是否能在實際情境中應用 Coding Agent 的架構設計原則。
共 5 題,包含情境題與錯誤診斷題。

1. 你正在將 Coding Agent 從舊模型遷移到 GPT-5 情境題

你的團隊一直使用另一家的 LLM 來驅動你們的 Coding Agent。 現在要切換到 GPT-5,你發現現有的 System Prompt 中包含了大量 「在修改前,請逐一檢查所有相關檔案」之類的詳細指令。 切換後,Agent 的回應品質不錯,但速度比預期慢了三倍。
  • A. 增加更多詳細指令,讓模型更清楚每一步該做什麼
  • B. 移除過度詳細的步驟指令,讓模型使用它自身被訓練出的習慣
  • C. 降低模型的 temperature 參數來加快回應速度
  • D. 將任務拆分成更小的子任務,分多次呼叫模型

2. 你的新創公司想打造一個 IDE 內建的 AI 程式助手 情境題

你的團隊正在打造一個類似 Cursor 的程式碼編輯器,需要整合 AI Coding Agent 功能。你們的核心競爭力在於獨特的 UI/UX 設計 和程式碼編輯體驗,但你們沒有太多資源去維護 Harness 層的 複雜工程(如 Compaction、平行工具呼叫、沙箱安全性等)。 你應該採取什麼策略?
  • A. 從零開始自建完整的 Harness,這樣才能完全掌控所有細節
  • B. 直接使用 Chat Completions API,自己處理所有的工具呼叫邏輯
  • C. 像 Zed 一樣,將 Codex 作為 Harness 層整合進來,專注於打造最佳編輯器體驗
  • D. 放棄 AI 功能,專注於傳統程式碼編輯器的功能開發

3. 你想讓企業軟體自動為每個客戶建立 API 連接器 情境題

你的 SaaS 產品需要與每個企業客戶的內部系統整合。 以前這需要專業服務團隊為每個客戶手動開發 API 連接器, 耗時數週。你想用 AI Agent 自動化這個流程。 根據影片中介紹的 Codex SDK 整合模式,最佳做法是什麼?
  • A. 訓練一個專門的模型來生成 API 連接器程式碼
  • B. 透過 Agents SDK 整合 Codex 並搭配 MCP,讓 Agent 能寫出自己不具備的工具
  • C. 使用 GitHub Action 在每次有新客戶時自動觸發連接器生成
  • D. 直接用 Chat Completions API 讓模型生成程式碼片段,再由工程師手動整合

4. 為什麼這個 Coding Agent 的表現不如預期? 錯誤診斷

小王打造了一個 Coding Agent,使用 OpenAI 最新模型。 他的 System Prompt 如下: “”” 你是一個程式碼助手。在進行任何修改前,你必須: 1. 列出專案中所有檔案 2. 逐一讀取每個檔案的完整內容 3. 分析每個檔案之間的依賴關係 4. 畫出完整的依賴關係圖 5. 確認所有可能受影響的檔案 6. 才能開始修改程式碼 “”” 結果:Agent 能正確完成任務,但每次都需要 5-10 分鐘, 使用者抱怨速度太慢。 最可能的問題是什麼?
  • A. 模型的推理能力不足,需要切換到更強的模型
  • B. Context Window 太小,模型無法一次處理所有檔案
  • C. 過度提示(Overprompt)——模型本身已被訓練會主動蒐集上下文,強制要求逐一檢查所有檔案是多餘的
  • D. 沒有啟用平行工具呼叫,導致檔案只能逐一讀取

5. 這個 Agent 架構設計有什麼根本問題? 錯誤診斷

某團隊自建了一套 Coding Agent 架構: – 自己實作了 Context Window 壓縮(Compaction)邏輯 – 自己處理平行工具呼叫與執行緒合併 – 自己打造了沙箱安全機制 – 為特定模型深度最佳化了所有 Prompt 每當新模型發布時,他們需要花 2-3 週重新調校整個系統。 團隊成員抱怨:「我們把 80% 的時間花在維護 Harness, 只有 20% 在做產品功能。」 根據影片的觀點,這個架構的根本問題是什麼?
  • A. 團隊人力不足,應該招聘更多工程師來維護 Harness
  • B. 沒有採用 Harness 作為抽象層的模式,應該使用像 Codex 這樣的現成 Harness,將精力專注於產品差異化
  • C. Prompt 最佳化做得不夠深入,應該投入更多時間在 Prompt Engineering 上
  • D. 應該減少工具數量,簡化 Agent 的功能來降低維護成本
0

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *