部署前先確認自託管的是 Codex 智能體執行環境,不是 OpenAI 模型:本週應先畫出工作負載、檔案和憑據的隔離邊界,再準備遠端 executor。這適合需要自控程式碼執行環境的團隊;如果只是想讓 Codex CLI 在遠端主機持續執行,應先確認那是另一種使用方式。
計畫把程式碼執行環境移至遠端伺服器的 AI 開發者,可依本文核對官方架構與連線方式。
需要智能體存取內部程式碼或工具的小型團隊,可用本文規劃隔離與憑據權限。
正在比較本機、容器與遠端環境的技術負責人,可據此判斷自託管是否符合控制需求。
最後更新於 2026 年 11 月 2 日;架構與安全資訊核對自 OpenAI 自託管環境文件及官方 Codex 安全實踐。
部署前:確認自託管的範圍
Agents API 自託管沙箱不是在自己的伺服器上執行 OpenAI 模型。官方架構由 OpenAI 執行 agent harness,負責協調工作;使用者管理的環境則執行 executor,依要求在工作目錄內執行命令、讀寫檔案。官方架構說明和自託管連線流程應作為部署依據。
因此,部署目標是控制程式碼執行位置、工作目錄與可用資源,不是把模型推理搬到伺服器。需要訓練模型或自行承載模型推理的團隊,必須另外規劃模型服務;此處的 Codex 執行環境不會提供 GPU 或模型推理能力。
| 使用方式 | 工作如何執行 | 適合的情況 | 容易混淆之處 |
|---|---|---|---|
| Agents API 自託管沙箱 | OpenAI 端的 agent harness 派發工作,使用者環境中的 executor 執行 | 希望自行管理程式碼執行環境,並按工作負載規劃隔離的團隊 | 自託管的是 executor 環境,不是模型 |
| 遠端主機執行 Codex CLI | CLI 在遠端主機上依該使用方式執行 | 需要直接管理遠端主機上的 CLI 工作流程 | 不能直接套用 Agents API 自託管沙箱的連線與註冊步驟 |
| 本機執行環境 | executor 或 CLI 在開發者本機執行 | 測試環境、個人工作站或本機開發流程 | 本機檔案與憑據可能位於相同使用者環境 |
自託管環境可設於筆記型電腦、容器或遠端沙箱;選擇依據應是隔離與維運方式,而非單看「遠端」或「本機」。若團隊的目標是長期運作 executor,還要先評估誰能登入主機、誰能讀取工作目錄,以及工作完成後如何清除暫存資料。
工作負載與隔離邊界
開始安裝前,先列出智能體需要的程式碼、依賴套件、內部工具和本機 MCP 服務。不要把團隊共用的工作目錄當成預設值。官方安全說明提醒,共享執行環境可能讓不同智能體接觸相同檔案、憑據或其他資源;應依使用者、程式碼庫或工作負載劃分邊界,並以官方環境安全建議確認設計。
| 資源 | 部署前要確認的範圍 | 建議的控制方式 |
|---|---|---|
| 程式碼與工作目錄 | 智能體需要讀取哪些程式碼,是否包含未公開分支或敏感檔案 | 只掛載工作所需目錄,避免共用不相關專案的檔案 |
| 依賴與建置工具 | 是否需要安裝套件、執行建置或呼叫內部工具 | 使用可重建的環境設定,限制不必要的系統層級修改 |
| MCP 服務與其他資源 | 工作是否需要連接內部服務、資料庫或檔案來源 | 逐項判斷是否必要,再限制可用資源與存取權限 |
| 高風險命令 | 是否可能刪除資料、改動重要分支或觸發部署 | 先規定人工審核點,並保留可追查的執行紀錄 |
隔離不能只看容器邊界。若不同工作仍共用同一組憑據、掛載目錄或可寫入的服務,分開建立容器也未必能達到預期控制。對涉及客戶資料或內部程式碼的工作,先確認資料能否進入執行環境,再決定是否接入智能體。
環境準備與 executor 啟動
準備環境時,依寫作與部署當下的官方設定文件核對 Codex CLI 安裝方式、工作目錄要求、executor 啟動參數和適用版本。文件與介面可能更新;範例命令不應直接視為長期有效的正式環境設定,因此這裡不固定版本號或環境變數。
建議按以下流程逐項執行:
- 確認使用的是 Agents API 自託管沙箱流程,而不是把遠端 CLI 工作方式套進來。
- 建立專用的執行環境,設定工作目錄、必要依賴和執行身分。
- 依官方現行安裝說明安裝並啟動 executor,記錄使用的版本、設定來源與啟動方式。
- 準備環境識別資訊和連線參數;敏感值透過受控的機密管理方式提供,不寫入原始碼或映像。
- 確認主機或容器只具備完成任務所需的檔案與權限,並限制非必要的網路存取。
- 在測試工作目錄完成連線驗證後,再決定是否接入真實程式碼庫或內部工具。
如果採用容器,應另外檢查主機目錄掛載、容器執行身分及映像更新方式。採用遠端伺服器時,則要確認登入權限、工作目錄的擁有者與清理流程。兩者都需要把 executor 視為會執行外部指令的工作程序,而不是一般只讀服務。
出站連線與密鑰管理
官方自託管流程使用出站 WebSocket 連線。應依官方連線文件核對註冊與連線目標,再配置出站規則;不要自行推斷需要開放入站連接埠。若環境採取嚴格網路控管,先確認防火牆或代理設定是否允許文件要求的連線,再測試 executor 狀態。
| 憑據或連線 | 用途 | 管理方式 |
|---|---|---|
| executor 環境密鑰 | 讓自託管環境完成註冊或連線 | 專供 executor 使用,限制可讀取該密鑰的使用者與程序 |
| 應用程式 API 密鑰 | 代表應用程式存取其他服務的權限 | 留在沙箱之外;任務確有需要時,才另行設計受限的授權方式 |
| 出站 WebSocket | 讓 executor 與官方服務依文件要求建立連線 | 以官方文件所列目標設定出站規則,不因遠端部署而額外假設入站需求 |
| 執行紀錄 | 協助追查連線、命令與失敗原因 | 避免將密鑰或敏感資料寫入紀錄,並限制紀錄的存取與保存 |
環境密鑰與應用程式 API 密鑰用途不同,不應因為兩者都出現在部署設定中就共用。若密鑰被寫進程式碼、容器映像或日誌,刪除文字本身並不足以確認憑據已安全;還要依組織流程撤銷或輪換受影響的密鑰。
上線驗收與持續維護
測試環境連通,不代表程式碼執行風險已消失。正式導入前,使用不含敏感資料的測試程式碼庫,逐項確認權限、檔案邊界、網路限制與失敗處理。OpenAI 於 2026 年 5 月 8 日發布的Codex 安全實踐文章亦討論沙箱、審批和審計思路;這些控制應納入團隊流程,而不只是部署設定。
- [ ] executor 能成功註冊並連線,環境狀態可依官方事件或狀態資訊判讀。
- [ ] 測試任務只能讀寫預期的工作目錄,無法藉由多餘掛載存取其他專案資料。
- [ ] 工作程序無法讀取不需要的應用程式 API 密鑰或主機憑據。
- [ ] 出站連線只符合實際工作需求;不需要的網路存取已限制。
- [ ] 中斷連線後,能從狀態資訊與 executor 紀錄辨識失敗原因,並依官方生命週期說明處理環境。
- [ ] 已定義密鑰輪換、依賴更新、權限複查、工作目錄清理和環境回收的負責人與流程。
長期運作還要按實際程式碼庫大小、依賴建置方式、並行工作量和紀錄保留需求評估 CPU、記憶體、硬碟與網路。沒有通用的最低配置可以取代這些測量;先用代表性工作負載觀察建置時間、資源使用和磁碟增長,再調整環境。若工作會保存產物,依官方檔案與產物說明確認存取方式,並自行安排適合敏感程度的保存與清理政策。
若需要長期維持執行環境,可先從 NodeKVM 的伺服器系統與連線說明確認實際支援內容,再按工作負載核對目前的伺服器方案。選擇之前,應把自有維運能力、資料邊界和實際資源用量一併納入評估。
常見問題
Codex CLI 放在遠端主機執行,等於自託管沙箱嗎?
不等於。Agents API 自託管環境由 OpenAI 端的 agent harness 派發工作,使用者管理的環境則運行 executor。遠端主機上直接安裝 Codex CLI,屬於另一種操作方式;兩者的連線架構、工作流程與權限邊界不同,部署文件和安全檢查也不應混用。
Codex exec-server 應放在容器還是遠端伺服器?
依隔離需求和維運方式決定。容器適合依工作負載建立可回收的執行環境,但仍須管理掛載目錄、網路與憑據;遠端伺服器適合需要長期維持自有環境的團隊,卻要自行負責主機權限、更新和回收。官方支援的環境類型與啟動方式,應以部署時的文件為準。
Codex 自託管執行環境要開放哪些出站連線?
依官方自託管環境文件核對環境註冊與 executor 的 WebSocket 連線目標,並按實際目的地設定出站規則。不要因為 executor 遠端執行就自行假設必須開放入站連接埠;若網路政策有限制,先在測試環境驗證連線,再將必要目的地交由網路管理者審核。
環境密鑰和應用 API 密鑰要怎麼分開?
環境密鑰用於讓 executor 註冊或連線,應用 API 密鑰則代表應用程式對服務的存取權。兩者分開建立、分開授權,應用密鑰留在沙箱之外;不要把任何密鑰寫入原始碼、容器映像或日誌。若工作需要特定憑據,先確認該工作負載是否真的需要取得它。
是否適合長期放在獨享伺服器
若目前是在共享 VPS 或雲端執行環境中部署,需留意共享 CPU 資源可能受鄰近工作負載影響、方案資源上限可能限制建置尖峰,而服務商提供的系統與檔案配置選項也未必符合團隊的隔離需求。另一方面,若只是短暫測試、負載很輕,或需要依需求快速彈性增減資源,獨享伺服器未必是合適選擇。
若團隊需要長期在線的 executor、自行管理 Linux 執行環境,且能承擔系統更新、密鑰輪換與安全驗收,NodeKVM 的 AMD 獨享實體伺服器可作為遠端執行環境的候選方案。請先核對當前方案的系統、儲存、頻寬與計費內容,再以實際工作負載測試;這能協助判斷環境是否合用,但不代表 Codex 效能或相容性保證。若評估結果符合需求,可進一步查看伺服器方案與訂購資訊。
常見問題
-
Q
Codex CLI 放在遠端主機執行,等於自託管沙箱嗎?
不等於。Agents API 自託管環境由 OpenAI 端的 agent harness 派發工作,使用者管理的環境則運行 executor。遠端主機上直接安裝 Codex CLI,屬於另一種操作方式;兩者的連線架構、工作流程與權限邊界不同,部署文件和安全檢查也不應混用。
-
Q
Codex exec-server 應放在容器還是遠端伺服器?
依隔離需求和維運方式決定。容器適合依工作負載建立可回收的執行環境,但仍須管理掛載目錄、網路與憑據;遠端伺服器適合需要長期維持自有環境的團隊,卻要自行負責主機權限、更新和回收。官方支援的環境類型與啟動方式,應以部署時的文件為準。
-
Q
Codex 自託管執行環境要開放哪些出站連線?
依官方自託管環境文件核對環境註冊與 executor 的 WebSocket 連線目標,並按實際目的地設定出站規則。不要因為 executor 遠端執行就自行假設必須開放入站連接埠;若網路政策有限制,先在測試環境驗證連線,再將必要目的地交由網路管理者審核。
-
Q
環境密鑰和應用 API 密鑰要怎麼分開?
環境密鑰用於讓 executor 註冊或連線,應用 API 密鑰則代表應用程式對服務的存取權。兩者分開建立、分開授權,應用密鑰留在沙箱之外;不要把任何密鑰寫入原始碼、容器映像或日誌。若工作需要特定憑據,先確認該工作負載是否真的需要取得它。