OpenAI 在開發者文檔里正式上線了 Agents API,把 Codex 的 harness 通過一個 OpenAI 託管的 REST API 暴露出來。核心端點只有一個:POST https://api.openai.com/v1/agents/sessions,需帶 OpenAI-Beta: agents=v1 頭。語義很直白——OpenAI 負責會話、編排、上下文壓縮和恢復,應用負責提供工具、決定執行環境。

四個核心概念與一套託管能力

文檔把概念拆成四個:Agent(模型 + 指令 + 工具 + MCP 服務器)、Environment(可選沙箱或計算機,agent 在其中讀寫文件、加載 skills、跑命令)、Session(一個持久的 agent 實例,處理任務並響應輸入),以及 Events 和 items(會話期間的輸入輸出)。工作流即創建會話 → 分配任務 → 流式或 webhook 跟進 → 繼續或干預。

託管的 harness 能力包括在沙箱裏運行命令和代碼、應用 skills 和指令、通過工具或 MCP 連接外部數據、工作過程中隨時干預、壓縮之前的上下文、把子任務委派給 subagent,以及斷點續跑。多智能體通過 agent.multi_agent 開啓,可設置 max_concurrent_subagents;工具支持 programmatic_tool_callingmcp(HTTP transport)、web_search 三類,環境可選 self_hosted 或 OpenAI 託管沙箱。

數據僅限美國、不支持 ZDR,社區質疑廠商鎖定

定價跟隨模型走:模型用量按所選模型計費,OpenAI 工具按標準價,託管沙箱按容器價。但有兩個數據層面的限制值得注意——數據駐留目前僅限美國,且不支持 Zero Data Retention(ZDR),即便選擇自託管沙箱也不會因此變成 ZDR 合規。SDK 覆蓋 Python、TS/JS、Go、Java、Ruby,統一爲 client.beta.agents.sessions.create(...)

社區討論主要圍繞兩點:是否值得把會話交給 OpenAI 託管,以及定價的模糊。有用戶測試沙箱網絡訪問配置,發現 enabled / disabled / restricted 三種模式,受限網絡下訪問外部域名會返回“Domain forbidden”;他同時質疑計費方式——每次執行 agent session 是否都新建環境、環境是否至少按一小時計費、能否主動關閉以省錢。

關於爲什麼用這個 API 而不是自己跑 SDK,社區分兩派:質疑方認爲“這更像是加強 vendor lock-in”;支持者則很實際——“爲了省掉自己維護一個沙箱 VM 的麻煩”。從架構角度看,Agents API 的實質是把 Codex 客戶端那套 harness 服務端化,讓長期運行、能讀寫文件、能拆子任務的 agent 成爲任何後端程序都能調用的一等公民 API,代價則是把會話狀態和執行環境交給 OpenAI。