Codex CLI:權威技術參考指南
# Codex CLI:權威技術參考指南
Codex CLI:權威技術參考指南
重點摘要: Codex 是一款多介面程式碼代理工具,能讀取您的程式碼庫、在作業系統級別的沙箱中執行指令、修補檔案,並將任務委派至雲端。掌握五大核心系統(config.toml、沙箱/審批模型、AGENTS.md、MCP、以及 skills),Codex 便能成為生產力倍增器。透過 profiles 切換工作情境、使用
/compact管理上下文配額,並以 AGENTS.md 建立跨工具的專案指引——適用於 Codex、Cursor、Amp 等多種工具。GPT-5.4 為建議使用的模型,擁有 1M 上下文窗口;GPT-5.4 mini 則以 30% 的配額處理子代理任務。78
Codex 的運作方式是多介面程式碼代理,而非單純撰寫程式碼的聊天機器人。CLI 會讀取您的程式碼庫、在沙箱中執行指令、修補檔案、透過 MCP 連接外部服務,並將長時間執行的任務委派至雲端。它在本機運行,卻具備全域思維——同樣的智慧驅動四種不同的操作介面,依您的工作方式彈性切換。
隨意使用與高效運用 Codex 的差異,取決於五大核心系統。 精通這些系統,Codex 便能成為您的生產力倍增器:
- 設定系統:透過
config.toml控制行為 - 沙箱與審批模型:管控 Codex 可執行的操作範圍
- AGENTS.md:定義專案層級的運作規範
- MCP 協定:將功能擴展至外部服務
- Skills 系統:封裝可重用的領域專業知識
我花了數月時間,在正式環境的程式碼庫、CI/CD 流程及團隊工作流中同步使用 Codex 與 Claude Code。本指南將這些經驗提煉為一份完整的技術參考——正是我當初起步時希望能擁有的那份文件。每項功能皆包含實際語法、真實的設定範例,以及容易讓資深使用者踩坑的邊界情境。
穩定性說明:標註
[EXPERIMENTAL]的功能可能在版本更新時有所變動。截至 v0.118.0,Codex Cloud、MCP 指令群組、code mode 及 hooks 引擎均為實驗性質。核心的 CLI、沙箱、AGENTS.md、config.toml、Skills 及外掛系統則已穩定。
重點摘要
- 四種介面,同一顆大腦:CLI、桌面應用程式、IDE 擴充套件與雲端任務皆共享相同的 GPT-5.x-Codex 智慧核心,依據工作流程選擇最適合的介面即可。
- 作業系統層級沙箱:Codex 在核心層級強制執行檔案系統與網路限制(macOS 使用 Seatbelt,Linux 使用 Landlock + seccomp),而非依賴容器。
- AGENTS.md 跨工具通用:專案指令可在 Codex、Cursor、Copilot、Amp、Jules、Gemini CLI、Windsurf、Cline、Aider、Zed 以及超過 60,000 個開源專案中使用。一次撰寫,處處適用。
- 設定檔省去切換成本:定義具名設定預設(
fast、careful、auto),透過--profile即可快速切換。 - 上下文管理至關重要:GPT-5.4 提供 1M 上下文;GPT-5.4 mini 為子代理工作提供 400K;GPT-5.3-Codex 提供 272K 輸入。善用
/compact、精確提示與@file引用來主動管理 token 預算。
如何使用本指南
本指南超過 2,500 行——依照您的經驗程度選擇起點:
| 經驗程度 | 從這裡開始 | 接著探索 |
|---|---|---|
| Codex 新手 | 安裝 → 快速入門 → 心智模型 | 設定、沙箱 |
| 日常使用者 | AGENTS.md、Skills、Plan Mode | MCP、Hooks |
| 團隊主管/企業 | 企業部署 → 最佳實務 | 決策框架、工作流程範例 |
| 從其他工具遷移 | 遷移指南 | 決策框架 |
末尾的快速參考卡提供所有主要指令的速覽摘要。
Codex 運作原理:心智模型
在深入功能之前,先瞭解 Codex 的架構如何影響您的一切操作。系統透過四種介面運作,背後共享同一智慧層:
┌─────────────────────────────────────────────────────────┐
│ CODEX SURFACES │
├─────────────────────────────────────────────────────────┤
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌────────┐ │
│ │ CLI │ │ Desktop │ │ IDE │ │ Cloud │ │
│ │ Terminal │ │ App │ │Extension │ │ Tasks │ │
│ └──────────┘ └──────────┘ └──────────┘ └────────┘ │
│ Local exec Multi-task Editor-native Async │
│ + scripting + worktrees + inline edits detached │
├─────────────────────────────────────────────────────────┤
│ EXTENSION LAYER │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ MCP │ │ Skills │ │ Apps │ │ Search │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ External tools, reusable expertise, ChatGPT │
│ connectors, web search (cached + live) │
├─────────────────────────────────────────────────────────┤
│ SECURITY LAYER │
│ ┌─────────────────────────────────────────────────┐ │
│ │ Sandbox (Seatbelt / Landlock / seccomp) │ │
│ │ + Approval Policy (untrusted → never) │ │
│ └─────────────────────────────────────────────────┘ │
│ OS-level filesystem + network restrictions │
├─────────────────────────────────────────────────────────┤
│ CORE LAYER │
│ ┌─────────────────────────────────────────────────┐ │
│ │ GPT-5.x-Codex Intelligence │ │
│ │ Tools: Shell, Patch, Read, Web Search │ │
│ │ (legacy artifact, read_file, grep_files │ │
│ │ removed in v0.117.0) │ │
│ └─────────────────────────────────────────────────┘ │
│ Shared model across all surfaces; costs tokens │
└─────────────────────────────────────────────────────────┘
核心層:GPT-5.x-Codex 模型家族驅動一切。自 v0.111.0 起,gpt-5.4 為推薦模型——OpenAI 的旗艦前沿模型,結合 GPT-5.3-Codex 的程式撰寫能力與更強的推理、原生電腦操控及 1M 上下文視窗。66 它能讀取檔案、撰寫修補、執行 shell 指令,並對您的程式碼庫進行推理。當上下文額度用盡時,Codex 會壓縮對話以釋放空間。此層消耗 token。
安全層:Codex 執行的每個指令都經過作業系統層級的沙箱。macOS 上,Apple 的 Seatbelt 框架在核心層級施加限制;Linux 上,Landlock + seccomp 過濾檔案系統與系統呼叫存取。沙箱運作於核心層級,而非容器內部。接著由核准政策決定何時需要人工確認。
擴充層:MCP 連接外部服務(GitHub、Figma、Sentry)。Skills 將可重複使用的工作流程打包,供 Codex 依需求載入。Apps 連接 ChatGPT 連接器。網路搜尋則為即時上下文提供來自網際網路的資訊。
介面層:CLI 適合終端機進階使用者與自動化。桌面應用程式適合多執行緒專案管理。IDE 擴充套件適合編輯-編譯-測試的緊密迴圈。雲端適合獨立執行的非同步任務。
關鍵洞見:多數使用者只用一種介面。進階使用者四種並用:雲端處理長時間任務、CLI 執行確定性的儲存庫操作、IDE 擴充套件進行緊湊的編碼迴圈、桌面應用程式負責規劃與協調。
目錄
- 如何安裝 Codex?
- 快速入門:您的第一次工作階段
- 核心互動介面
- 設定系統深入探討
- 該選擇哪個模型?
- Codex 費用多少?
- 決策框架
- 沙箱與核准系統如何運作?
- AGENTS.md 如何運作?
- Hooks
- 什麼是 MCP(Model Context Protocol)?
- Code Mode
- JavaScript REPL 執行環境
- 什麼是 Skills?
- Plugins
- Plan Mode 與協作
- 記憶系統
- 工作階段管理
- 非互動模式(codex exec)
- Codex 雲端與背景任務
- Codex 桌面應用程式
- GitHub Action 與 CI/CD
- Codex SDK
- 效能最佳化
- 如何除錯問題?
- 企業部署
- 最佳實務與反面模式
- 工作流程範例
- 遷移指南
- 快速參考卡
- 變更日誌
- 參考資料
如何安裝 Codex?
套件管理器
# npm (recommended)
npm install -g @openai/codex
# Homebrew (macOS)
brew install --cask codex
# winget (Windows)
winget install OpenAI.Codex
# Upgrade to latest
npm install -g @openai/codex@latest
直接安裝腳本(v0.106.0+)
macOS 與 Linux 可使用單行安裝腳本,以 GitHub 發佈資產形式提供:62
curl -fsSL https://github.com/openai/codex/releases/latest/download/install.sh | sh
此腳本會自動偵測您的平台與架構,下載對應的二進位檔案,並放置於 PATH 中。
二進位檔案下載
若環境中沒有 npm 或 Homebrew,可從 GitHub Releases 下載對應平台的二進位檔案:1
| 平台 | 二進位檔案 |
|---|---|
| macOS Apple Silicon | codex-aarch64-apple-darwin.tar.gz |
| macOS x86_64 | codex-x86_64-apple-darwin.tar.gz |
| Linux x86_64 | codex-x86_64-unknown-linux-musl.tar.gz |
| Linux arm64 | codex-aarch64-unknown-linux-musl.tar.gz |
系統需求
- macOS:Apple Silicon 或 Intel(透過 Seatbelt 提供完整沙箱支援)
- Linux:x86_64 或 arm64(透過 Landlock + seccomp 提供沙箱支援)
- Windows:使用受限權杖的原生沙箱(於 v0.100.0 從實驗性功能正式升級)。亦支援 WSL2
身份驗證
codex login # Interactive OAuth (recommended)
codex login --device-auth # OAuth device code flow (headless)
codex login --with-api-key # API key from stdin
codex login status # Check auth state (exit 0 = logged in)
codex logout # Clear stored credentials
提供兩種驗證方式:
- ChatGPT 帳號(建議使用):使用現有的 Plus、Pro、Team、Business、Edu 或 Enterprise 訂閱登入。可完整存取所有功能,包括雲端任務。
- API Key:透過
CODEX_API_KEY環境變數或codex login --with-api-key設定。部分功能(雲端對話串)可能無法使用。
進階技巧:憑證儲存方式可透過
config.toml中的cli_auth_credentials_store設定。選項包括:file(預設)、keyring(作業系統鑰匙圈)或auto(優先使用 keyring,退而使用 file)。
Shell 自動補全
# Generate completions for your shell
codex completion bash > /etc/bash_completion.d/codex
codex completion zsh > ~/.zsh/completions/_codex
codex completion fish > ~/.config/fish/completions/codex.fish
驗證安裝
codex --version
# Codex CLI v0.104.0
快速入門:您的第一次使用
5 分鐘內從零開始上手。
1. 安裝並驗證身份:
npm i -g @openai/codex # Install
codex login # Log in with your OpenAI account
2. 切換至專案目錄:
cd ~/my-project # Any git repo works
3. 啟動 Codex:
codex
您會看到互動式 TUI 介面。Codex 會自動讀取您的專案結構。
4. 提出問題:
> What does this project do? Summarize the architecture.
Codex 會讀取關鍵檔案並解說程式碼架構。在預設的 suggest 模式下不會進行任何修改。
5. 進行修改:
> Add input validation to the login endpoint
Codex 會以 diff 形式提出編輯建議。按 y 核准,或按 n 拒絕。
6. 使用 slash 指令:
> /plan Refactor the database layer to use connection pooling
Codex 會建立計畫但不執行。檢視計畫後核准即可開始執行。
7. 檢查成果:
> /diff
查看本次工作階段中 Codex 所做的所有變更。
後續步驟:
- 設定 AGENTS.md 撰寫專案指引(請參閱 AGENTS.md 如何運作?)
- 為您的工作流程設定個人檔案(請參閱 Profiles)
- 試用 codex exec 進行非互動式自動化(請參閱 非互動模式:codex exec)
核心互動介面
Codex 提供四種不同的介面,背後共享同一套智慧引擎。每種介面針對不同的工作流程模式進行最佳化。
1. 互動式 CLI(終端機 UI)
codex # Launch TUI
codex "fix the failing tests" # Launch with initial prompt
codex -m gpt-5.3-codex # Specify model
codex --full-auto # Workspace-write sandbox + on-request approval
終端機 UI 是全螢幕應用程式,包含:
- Composer:輸入提示詞、以
@附加檔案、以!前綴執行 shell 指令 - 輸出面板:串流模型回應、工具呼叫與指令輸出
- 狀態列:模型、token 用量、git 分支、沙箱模式
TUI 常用快捷鍵:
| 快捷鍵 | 動作 |
|---|---|
@ |
模糊搜尋檔案(附加至上下文) |
!command |
直接執行 shell 指令 |
Ctrl+G |
開啟外部編輯器($VISUAL / $EDITOR) |
Enter(執行中) |
在回應過程中插入新指令 |
Esc 兩次 |
編輯先前的訊息 |
| 方向鍵 | 瀏覽草稿歷史紀錄 |
TUI 中可使用的 slash 指令:
| 指令 | 說明 |
|---|---|
/quit 或 /exit |
離開 CLI |
/new |
在同一工作階段中開啟新對話 |
/resume |
恢復已儲存的對話 |
/fork |
將目前對話分支為新對話串 |
/model |
切換模型與推理強度 |
/compact |
摘要對話以釋放 token |
/diff |
顯示 git diff,包含未追蹤檔案 |
/review |
對工作目錄進行程式碼審查 |
/plan |
進入計畫模式 |
/mention |
將檔案附加至對話 |
/init |
產生 AGENTS.md 範本 |
/status |
工作階段設定與 token 用量 |
/permissions |
設定核准策略 |
/personality |
溝通風格(friendly/pragmatic/none) |
/mcp |
列出已設定的 MCP 工具 |
/apps |
瀏覽 ChatGPT 連接器 |
/ps |
顯示背景終端機 |
/skills |
存取與呼叫 skills |
/plugins |
瀏覽與管理已安裝的外掛程式(v0.117.0+) |
/title |
設定終端機視窗標題(v0.117.0+) |
/config |
印出目前生效的設定值與來源 |
/statusline |
設定 TUI 底部狀態列 |
/feedback |
傳送紀錄給 Codex 維護者 |
/logout |
登出 |
2. Codex Desktop App(macOS + Windows)
codex app # Launch desktop app (auto-installs if missing)
桌面應用程式提供 CLI 所沒有的功能:
- 多工處理:同時在不同專案中平行執行多個代理
- Git worktree 隔離:每個對話串在獨立的儲存庫副本上運作
- 內嵌 diff 審查:無需離開應用程式即可暫存、還原與提交變更
- 整合式終端機:每個對話串皆有獨立終端機可執行指令
- 對話分支:分支對話以探索不同方案
- 浮動彈出視窗:將對話拆離為可移動的獨立視窗
- 自動化排程:排定定期任務(issue 分類、CI 監控、警報回應)
何時使用桌面應用程式 vs CLI:當需要協調多個工作流程或視覺化 diff 審查時,使用桌面應用程式。當需要終端機的可組合性、腳本整合或 CI/CD 整合時,使用 CLI。
3. IDE 擴充套件(VS Code、Cursor、Windsurf)
Codex IDE 擴充套件直接整合於您的編輯器中:
- 預設為代理模式:可讀取檔案、編輯程式碼、執行指令
- 行內編輯:依據上下文在作用中的檔案提供智慧建議
- 共享工作階段:CLI 與 IDE 擴充套件之間同步工作階段
- 相同身份驗證:使用 ChatGPT 帳號或 API key 登入
可從 VS Code Marketplace 或 Cursor/Windsurf 擴充套件商店安裝。3
4. Codex Cloud [實驗性功能]
雲端任務在 OpenAI 管理的環境中以非同步方式執行:
- 發送即忘:排入佇列的任務獨立於本機執行
- 平行執行:可同時執行多個雲端任務
- 建立 PR:Codex 會從完成的工作中建立 pull request
- 本機套用:使用
codex apply <TASK_ID>將雲端結果拉取至本機儲存庫
codex cloud list # List recent cloud tasks
codex apply <TASK_ID> # Apply diff from a specific cloud task
亦可透過 chatgpt.com/codex 存取雲端任務。4
設定系統深入探討
Codex 使用 TOML 進行設定。理解優先順序層級至關重要,因為它決定了當設定發生衝突時,哪些設定會優先生效。
優先順序(由高至低)
- 工作階段覆蓋(最高):CLI旗標(
--model、--sandbox、--ask-for-approval、--search、--enable/--disable、--profile)以及-c key=value覆蓋 - 專案設定(
.codex/config.toml,從目前工作目錄向上搜尋至專案根目錄;最近的目錄優先) - 使用者設定(
$CODEX_HOME/config.toml,預設為~/.codex/config.toml) - 系統設定(Unix 上為
/etc/codex/config.toml) - 內建預設值(最低)
requirements.toml作為策略限制層,在一般設定合併後限制使用者可選擇的值。請參閱企業部署。
設定檔位置
| 範圍 | 路徑 | 用途 |
|---|---|---|
| 使用者 | ~/.codex/config.toml |
個人預設值 |
| 專案 | .codex/config.toml |
個別儲存庫覆蓋 |
| 系統 | /etc/codex/config.toml |
整機預設值 |
| 受管理 | /etc/codex/requirements.toml |
管理員強制執行的策略限制 |
進階提示:
CODEX_HOME環境變數會覆蓋預設的~/.codex目錄。適用於 CI/CD 或多帳號設定。
完整設定參考
# ~/.codex/config.toml — annotated reference
# ─── Model Selection ───────────────────────────────────
model = "gpt-5.3-codex" # Default model (272K input context)
model_provider = "openai" # Provider (openai, oss, or custom provider id)
model_context_window = 272000 # Token count available to active model (override)
model_auto_compact_token_limit = 200000 # Threshold triggering automatic history compaction
model_reasoning_effort = "medium" # minimal|low|medium|high|xhigh (model-dependent)
model_reasoning_summary = "auto" # auto|concise|detailed|none
model_verbosity = "medium" # low|medium|high
personality = "pragmatic" # none|friendly|pragmatic
review_model = "gpt-5.2-codex" # Model for /review command
oss_provider = "lmstudio" # lmstudio|ollama (used with --oss)
# ─── Sandbox & Approval ───────────────────────────────
sandbox_mode = "workspace-write" # read-only|workspace-write|danger-full-access
approval_policy = "on-request" # untrusted|on-failure|on-request|never
[sandbox_workspace_write]
writable_roots = [] # Additional writable paths
network_access = false # Allow outbound network
exclude_tmpdir_env_var = false # Exclude $TMPDIR from sandbox
exclude_slash_tmp = false # Exclude /tmp from sandbox
# ─── Web Search ────────────────────────────────────────
web_search = "live" # Web search mode (constrained by allowed modes)
# ─── Instructions ──────────────────────────────────────
developer_instructions = "" # Additional injected instructions
model_instructions_file = "" # Custom instructions file path
compact_prompt = "" # Custom history compaction prompt
# ─── Shell Environment ─────────────────────────────────
allow_login_shell = false # Allow login shell semantics (loads .profile/.zprofile)
[shell_environment_policy]
inherit = "all" # all|core|none
ignore_default_excludes = false # Set true to keep KEY/SECRET/TOKEN vars
exclude = [] # Glob patterns to exclude
set = {} # Explicit overrides
include_only = [] # Whitelist patterns
# ─── Authentication ────────────────────────────────────
cli_auth_credentials_store = "file" # file|keyring|auto
forced_login_method = "chatgpt" # chatgpt|api
mcp_oauth_callback_port = 0 # Fixed port for MCP OAuth callback (0 = random)
mcp_oauth_credentials_store = "auto" # auto|file|keyring
# ─── History & Storage ─────────────────────────────────
[history]
persistence = "save-all" # save-all|none
max_bytes = 0 # Cap size (0 = unlimited)
tool_output_token_limit = 10000 # Max tokens per tool output
log_dir = "" # Custom log directory
# ─── UI & Display ──────────────────────────────────────
file_opener = "vscode" # vscode|vscode-insiders|windsurf|cursor|none
hide_agent_reasoning = false
show_raw_agent_reasoning = false
check_for_update_on_startup = true
[tui]
notifications = false # Enable notifications
notification_method = "auto" # auto|osc9|bel
animations = true
show_tooltips = true
alternate_screen = "auto" # auto|always|never
status_line = ["model", "context-remaining", "git-branch"]
# ─── Project Trust ─────────────────────────────────────
project_doc_max_bytes = 32768 # Max AGENTS.md size (32 KiB)
project_doc_fallback_filenames = [] # Alternative instruction filenames
project_root_markers = [".git"] # Project root detection
# ─── Feature Flags ─────────────────────────────────────
# Use `codex features list` for current names/stages/defaults.
[features]
shell_tool = true # Shell command execution (stable)
collaboration_modes = true # Plan mode (stable)
personality = true # Personality selection (stable)
request_rule = true # Smart approvals (stable)
unified_exec = true # PTY-backed exec (stable)
shell_snapshot = true # Shell env snapshots (stable)
command_attribution = true # Codex co-author in commits (v0.103.0+)
request_user_input = true # Allow agent to ask clarifying questions in Default mode (v0.106.0+)
multi_agent = false # Enable multi-agent collaboration tools (v0.102.0+)
apply_patch_freeform = false # Expose freeform apply_patch tool
apps = false # ChatGPT Apps/connectors (experimental)
child_agents_md = false # AGENTS.md guidance (experimental)
runtime_metrics = false # Runtime summary in turns
search_tool = false # Enable search_tool_bm25 for Apps discovery
# ─── Multi-Agent Roles (v0.102.0+) ───────────────────
[agents]
max_threads = 4 # Maximum concurrent agent threads
[agents.explorer]
description = "Read-only codebase navigator"
config_file = "~/.codex/profiles/explorer.toml"
# ─── Notifications ────────────────────────────────────
notify = ["terminal-notifier", "-title", "Codex"] # Command for notifications
# ─── Per-Project Overrides ────────────────────────────
[projects."/absolute/path/to/repo"]
trust_level = "trusted" # Per-project trust override
設定檔
針對不同工作模式的命名設定預設組合:
# Define profiles in ~/.codex/config.toml
[profiles.fast]
model = "gpt-5.1-codex-mini"
model_reasoning_effort = "low"
approval_policy = "on-request"
sandbox_mode = "workspace-write"
personality = "pragmatic"
[profiles.careful]
model = "gpt-5.4"
model_reasoning_effort = "xhigh"
approval_policy = "untrusted"
sandbox_mode = "read-only"
[profiles.auto]
model = "gpt-5.4"
model_reasoning_effort = "medium"
approval_policy = "never"
sandbox_mode = "workspace-write"
啟用設定檔:
codex --profile fast "quick refactor"
codex --profile careful "security audit"
codex -p auto "fix CI"
進階提示:在設定檔頂層設定
profile = "fast"即可設定預設設定檔。可透過--profile在每個工作階段中覆蓋。
自訂模型提供者
連接 Azure、本機模型或代理服務:
[model_providers.azure]
name = "Azure OpenAI"
base_url = "https://YOUR_PROJECT.openai.azure.com/openai"
wire_api = "responses"
query_params = { api-version = "2025-04-01-preview" }
env_key = "AZURE_OPENAI_API_KEY"
[model_providers.ollama]
name = "Ollama (Local)"
base_url = "http://localhost:11434/v1"
wire_api = "chat"
警告:
chat/completionswire API(wire_api = "chat")已針對 OpenAI 託管模型棄用,OpenAI 宣布將於2026年2月移除。36 本機提供者(Ollama、LM Studio)可能仍接受此格式。對於 OpenAI 端點,請改用wire_api = "responses"。
使用 --oss 旗標搭配本機模型:
codex --oss "explain this function" # Uses default OSS provider
codex --oss --local-provider lmstudio "explain" # Explicit LM Studio
codex --oss --local-provider ollama "explain" # Explicit Ollama
或在設定中指定:
model_provider = "oss"
oss_provider = "lmstudio" # or "ollama"
行內設定覆蓋
從命令列覆蓋任何設定值:
codex -c model="gpt-5.2-codex" "refactor the API"
codex -c 'sandbox_workspace_write.network_access=true' "install dependencies"
codex -c model_reasoning_effort="xhigh" "debug the race condition"
該選擇哪個模型?
可用模型(2026年3月)
| 模型 | 輸入 / 總上下文 | 預設推理等級 | 最適用途 |
|---|---|---|---|
| gpt-5.4 | 1M / 1M | medium |
推薦旗艦款:程式撰寫+推理+原生電腦操作 |
| gpt-5.4-mini | 400K / 400K | medium |
子代理任務、較簡單的工作——僅消耗 GPT-5.4 配額的 30%,速度快 2 倍78 |
| gpt-5.3-codex | 272K / 400K | medium |
程式撰寫專家:複雜軟體工程 |
| gpt-5.3-codex-spark | 128K / 128K | high |
近乎即時的迭代,純文字模式(Pro 使用者,Cerebras 合作)69 |
| gpt-5.2-codex | 272K / 400K | medium |
長週期重構、遷移、舊有程式碼 |
| gpt-5.1-codex-mini | 272K / 400K | medium |
快速任務、成本敏感型工作、大量 CI |
GPT-5.4 可在所有 Codex 介面使用(CLI、應用程式、IDE 擴充套件、雲端)。66 確切的模型清單因帳號與發佈進度而異。可查看本機快取:
~/.codex/models_cache.json。淘汰公告(2026年3月11日):GPT-5.1 模型已不再於 ChatGPT 中提供。現有對話將自動轉移至 GPT-5.3 Instant、GPT-5.4 Thinking 或 GPT-5.4 Pro。GPT-5.1-Codex-Mini 仍可透過 API 與 CLI 供成本敏感型工作使用。73
GPT-5.4 mini(2026年3月17日):GPT-5.4 的精簡高速版本,具備 400K 上下文,定價為每百萬 Token $0.75/$4.50——僅消耗 GPT-5.4 配額的 30%。非常適合子代理委派:讓 GPT-5.4 負責規劃與協調,同時讓 GPT-5.4 mini 子代理平行處理較細緻的子任務(程式庫搜尋、檔案審查、文件處理)。78
模型選擇流程圖
Is this a quick fix or simple question?
├─ Yes → gpt-5.1-codex-mini (fastest, cheapest)
└─ No
├─ Do you need real-time pairing speed?
│ ├─ Yes → gpt-5.3-codex-spark (near-instant, Pro only)
│ └─ No
│ ├─ Subagent or parallel subtask (search, review, processing)?
│ │ ├─ Yes → gpt-5.4-mini (30% of GPT-5.4 quota, 2x faster)
│ │ └─ No
│ │ ├─ Pure coding task (refactor, migration, feature build)?
│ │ │ ├─ Yes → gpt-5.3-codex (coding specialist, 272K context)
│ │ │ └─ No → gpt-5.4 (recommended: coding + reasoning + computer use, 1M context)
└─ Still unsure? → gpt-5.4
推理等級
控制模型在回應前「思考」的深度:
| 等級 | 行為 | 適用時機 |
|---|---|---|
minimal |
最低限度推理(僅限 GPT-5 模型) | 瑣碎任務、快速查詢 |
low |
簡短推理 | 一般程式撰寫、格式調整 |
medium |
平衡模式(預設) | 大多數開發工作 |
high |
延伸推理 | 複雜除錯、架構設計 |
xhigh |
最高推理 | 安全稽核、深度分析 |
支援的等級因模型而異。
minimal僅適用於 GPT-5 模型,並非所有模型都支援每個等級。
codex -c model_reasoning_effort="xhigh" "find the race condition"
進階技巧:
xhigh推理對同一提示可能消耗比medium多 3 至 5 倍的 Token。建議僅在真正困難的問題上使用,讓額外的思考時間物有所值。
模型切換
在工作階段中途可使用 /model 斜線指令切換模型,也可透過 --model / -m 在每次執行時指定:
codex -m gpt-5.3-codex-spark "pair with me on this component"
Codex 的費用是多少?
另請參閱模型選擇了解各模型功能,以及決策框架了解如何為不同任務選擇合適的模型。
透過 ChatGPT 方案取得存取權
Codex 的可用性取決於您的 ChatGPT 方案與組織設定:53
| 方案 | 價格 | Codex 存取權 | 速率限制(5 小時窗口) |
|---|---|---|---|
| Free / Go | $0 / $5 | 限時推廣存取 | 低 |
| Plus | $20/月 | 本機 CLI +雲端任務(2 倍速率限制) | 45-225 則本機訊息,10-60 個雲端任務 |
| Pro | $200/月 | 優先處理,GPT-5.3-Codex-Spark(2 倍速率限制) | 300-1500 則本機訊息,50-400 個雲端任務 |
| Business | $30/使用者/月 | 團隊配額、更大的雲端虛擬機、SAML SSO(2 倍速率限制) | 45-225 則本機訊息,10-60 個雲端任務 |
| Enterprise / Edu | 聯繫業務團隊 | 自訂配額、管理員控制、稽核日誌 | 依積分彈性調整 |
| API Key | 依用量計費 | CLI、SDK、僅限 IDE(無雲端功能) | 依 Token 計費 |
推廣費率:Free/Go 的存取權限及付費方案的 2 倍速率限制,是配合 Codex Desktop App 發佈(2026年2月)同步推出。這些較高的限制適用於所有介面——應用程式、CLI、IDE 及雲端。OpenAI 尚未公告結束日期。17
積分消耗
Codex 操作會從您的方案配額中扣除積分:
| 操作 | 約略積分 | 備註 |
|---|---|---|
| 本機訊息(GPT-5.3-Codex) | ~5 | 標準旗艦模型 |
| 本機訊息(GPT-5.1-Codex-Mini) | ~1 | 每單位積分可發送 4 倍訊息 |
| 雲端任務 | ~25 | 在 OpenAI 託管環境中執行 |
| 程式碼審查(每個 PR) | ~25 | 透過 /review 或雲端審查 |
Enterprise 與 Edu 方案的積分依合約配額彈性調整。可在 TUI 中使用
/status查看目前用量。
API 計費
透過 API 使用 Codex 時,OpenAI 會依所選模型的標準 API 定價,按 Token 計費(另加適用的提示快取折扣)。請查看官方 API 定價頁面了解最新費率。21
成本最佳化策略
- 善用設定檔:建立一個使用
gpt-5.1-codex-mini且model_reasoning_effort = "low"的fast設定檔,用於日常例行任務 - 節制高推理等級:僅在真正困難的問題上使用
xhigh,因為它的 Token 消耗量是一般的 3 至 5 倍 - 使用
--ephemeral:在 CI/CD 中跳過工作階段持久化以減少開銷 - 減少推理摘要:不需要解釋時,將
model_reasoning_summary = "none"設為不產生摘要 - 批次使用 exec 模式:
codex exec可避免 TUI 額外開銷,適合自動化工作流程 - 監控用量:在 TUI 中查看
/status及組織的帳單儀表板
實際成本範例
以 gpt-5.3-codex 標準定價、medium 推理等級為基準的常見 API 任務費用:
| 任務 | 輸入 Token | 輸出 Token | 約略費用 |
|---|---|---|---|
| 解說一個 500 行的模組 | ~15K | ~2K | ~$0.25 |
| 修復一個失敗的測試(1-2 個檔案) | ~30K | ~5K | ~$0.50 |
| 新增一個含測試的 API 端點 | ~60K | ~15K | ~$1.10 |
| 重構驗證模組(10 個檔案) | ~120K | ~30K | ~$2.25 |
透過 codex exec 進行完整倉庫稽核 |
~200K | ~20K | ~$3.00 |
| 雲端任務:分流 20 個未解決的 issue | ~250K | ~40K | ~$4.50 |
費用會因推理等級、快取使用及對話長度而異。日常任務改用
gpt-5.1-codex-mini可減少約 40-60% 的成本。快取的輸入 Token 享有折扣計費。
隱藏的 Token 開銷
每次工具呼叫都會在您可見的提示之外產生額外 Token:
| 開銷來源 | 約略成本 |
|---|---|
| 系統提示 + AGENTS.md | 每輪約 2-5K Token(僅首次載入,後續使用快取) |
| 工具定義 | 每個已註冊工具約 500 Token |
檔案讀取(@file) |
完整檔案內容的 Token |
| MCP 工具定義 | 每個已連接伺服器約 200-500 Token |
| 推理軌跡 | 不定;xhigh 可增加 3 至 5 倍開銷 |
進階技巧:可在 TUI 中透過
/status監控實際用量。Token 計數包含所有開銷,不僅是您可見的訊息。若費用超出預期,請檢查連接了多少 MCP 伺服器——每個伺服器都會將工具定義加入每次 API 呼叫中。
團隊成本管理
| 團隊規模 | 建議組態 | 預估月費 |
|---|---|---|
| 個人開發者 | 預設模型,medium 推理 |
$20-80 |
| 小型團隊(3-5 人) | 設定檔(fast/careful),透過 codex exec 進行程式碼審查 |
$200-500 |
| 中型團隊(10-20 人) | Enterprise 方案,requirements.toml 限制,CI 整合 |
$1,000-3,000 |
| 大型組織(50+ 人) | Enterprise 搭配管理員控制、稽核日誌、配額分配 | 自訂定價 |
團隊成本控管策略:
- 設定 requirements.toml:在全組織層級強制規範模型與推理等級限制
- CI/CD 使用 gpt-5.1-codex-mini——自動化流程鮮少需要最高推理等級
- 以設定檔分配預算——定義 ci、review 與 dev 設定檔,分別設定適當的成本上限
- 透過 OpenTelemetry 監控——企業級部署可將用量遙測資料匯出至既有的可觀測性堆疊
決策框架
何時使用各介面
| 情境 | 最佳介面 | 原因 |
|---|---|---|
| 快速修復錯誤 | CLI | 快速、專注、可腳本化 |
| 多檔案重構 | CLI 或 App | CLI 適合確定性修補;App 適合視覺化差異審查 |
| 探索不熟悉的程式碼 | CLI | 終端可組合性,grep/find 整合 |
| 平行工作流 | Desktop App | Worktree 隔離,多工管理 |
| 即時檔案編輯 | IDE Extension | 行內編輯,緊密的編譯測試迴圈 |
| 長時間遷移作業 | Cloud | 獨立執行,完成後建立 PR |
| CI/CD 自動化 | codex exec |
非互動式,JSON 輸出,可腳本化 |
| 程式碼審查 | CLI 或 App | /review 指令搭配預設配置 |
| 團隊新人引導 | Desktop App | 視覺化、引導式,不需太多終端知識 |
何時使用各沙箱模式
| 情境 | 模式 | 核准方式 | 原因 |
|---|---|---|---|
| 探索未知程式碼 | read-only |
untrusted |
最高安全性,不會破壞任何東西 |
| 日常開發 | workspace-write |
on-request |
速度與安全性的良好平衡 |
| 受信任的自動化 | workspace-write |
never |
快速、不中斷、沙箱隔離 |
| 系統管理 | danger-full-access |
on-request |
需要完整存取權但經人工核准 |
| CI/CD 流水線 | workspace-write |
never |
自動化,沙箱限定於工作區 |
何時使用各推理層級
| 任務類型 | 推理層級 | 模型 | 設定檔 |
|---|---|---|---|
| 格式化、程式碼檢查 | low |
gpt-5.1-codex-mini |
fast |
| 標準程式開發 | low-medium |
gpt-5.3-codex |
預設 |
| 複雜除錯 | high |
gpt-5.3-codex |
careful |
| 安全性稽核 | xhigh |
gpt-5.3-codex |
careful |
| 快速原型開發 | low |
gpt-5.3-codex-spark |
fast |
| 遷移/重構 | medium-high |
gpt-5.2-codex |
預設 |
計畫模式與直接執行
Will Codex need to change more than 3 files?
│
├── YES → Use Plan Mode (/plan)
│ Codex designs the approach BEFORE making changes.
│ You review and approve the plan.
│ Best for: refactors, new features, migrations
│
└── NO → Is the change well-defined?
│
├── YES → Direct execution
│ Just describe the task. Codex executes immediately.
│ Best for: bug fixes, small features, test additions
│
└── NO → Use Plan Mode (/plan)
Let Codex explore and propose an approach first.
Best for: unfamiliar codebases, ambiguous requirements
引導模式:Enter 與 Tab
| 情境 | 使用 Enter | 使用 Tab |
|---|---|---|
| Codex 即將犯錯 | 立即傳送修正 | |
| 您有後續任務 | 排入佇列,等目前工作完成後執行 | |
| Codex 選錯了檔案 | 立即傳送重新導向 | |
| 您想擴大範圍 | 將新增內容排入佇列 | |
| 緊急優先順序變更 | 立即傳送新的優先順序 | |
| 非關鍵性的背景資訊 | 排入佇列——不急 |
經驗法則:Enter =「停下來,現在聽我說。」Tab =「等你完成後,也做這個。」
Desktop App 與 CLI
How do you prefer to work?
│
├── Terminal-first → Use CLI
│ │
│ ├── Single focused task → codex (interactive TUI)
│ ├── Scripted automation → codex exec (non-interactive)
│ └── Quick one-shot → codex exec "prompt" -o result.txt
│
└── Visual/multi-project → Use Desktop App
│
├── Multiple parallel tasks → Multi-thread with worktree isolation
├── Visual diff review → Built-in Git diff viewer
├── Scheduled automation → Automations tab
└── Voice-driven → Ctrl+M for voice dictation
| 功能 | CLI | Desktop App |
|---|---|---|
| 互動式工作階段 | 是 | 是 |
| 平行代理 | 手動(多個終端) | 內建(worktree 隔離) |
| 差異審查 | /diff(文字) |
視覺化行內差異 |
| 自動化 | Cron + codex exec |
GUI 排程器 |
| 語音輸入 | 否 | 是(Ctrl+M) |
| CI/CD 整合 | codex exec + GitHub Action |
否 |
| 工作階段同步 | 是 | 是(與 CLI 共享) |
選擇哪個設定檔?
根據您的任務選擇預先配置的設定檔:
| 任務類型 | 設定檔 | 關鍵設定 |
|---|---|---|
| 快速提問、格式化 | fast |
model = "gpt-5.1-codex-mini", model_reasoning_effort = "low" |
| 日常開發 | (預設) | model = "gpt-5.3-codex", model_reasoning_effort = "medium" |
| 架構設計、安全性 | careful |
model = "gpt-5.3-codex", model_reasoning_effort = "xhigh" |
| 即時配對程式設計 | pair |
model = "gpt-5.3-codex-spark", model_reasoning_effort = "high" |
| CI/CD 自動化 | ci |
model = "gpt-5.1-codex-mini", model_reasoning_effort = "low", sandbox_mode = "workspace-write" |
config.toml 設定:
# Default profile
profile = "default"
[profiles.fast]
model = "gpt-5.1-codex-mini"
model_reasoning_effort = "low"
[profiles.careful]
model = "gpt-5.3-codex"
model_reasoning_effort = "xhigh"
[profiles.pair]
model = "gpt-5.3-codex-spark"
model_reasoning_effort = "high"
[profiles.ci]
model = "gpt-5.1-codex-mini"
model_reasoning_effort = "low"
sandbox_mode = "workspace-write"
依工作階段切換設定檔:codex --profile careful
沙箱與審批系統的運作原理
Codex 採用雙層安全模型,將技術上可執行的操作與何時需要人工審批明確區分。此設計與 Claude Code 的權限系統有根本性差異——Codex 在作業系統核心層級強制執行限制。5 另請參閱企業部署章節,瞭解管理員如何透過 requirements.toml 在整個組織範圍內施加約束。
第一層:沙箱(可執行的操作範圍)
沙箱透過作業系統原生機制控制檔案系統與網路存取:
| 模式 | 檔案存取 | 網路 | 實作方式 |
|---|---|---|---|
read-only |
所有位置僅可讀取 | 封鎖 | 最嚴格;變更操作需明確審批 |
workspace-write |
工作區與 /tmp 可讀寫 |
預設封鎖 | 一般開發用途;安全的預設值 |
danger-full-access |
完整機器存取權 | 啟用 | 最大權限;請謹慎使用 |
各平台的強制執行機制:
- macOS:透過
sandbox-exec使用 Apple 的 Seatbelt 框架,在執行時期編譯模式專屬的設定檔,並由核心強制執行6 - Linux:使用 Landlock 進行檔案系統限制,搭配 seccomp 進行系統呼叫過濾。獨立的輔助程序(
codex-linux-sandbox)提供縱深防禦隔離。5 Bubblewrap(bwrap)已納入 Linux 建置中一併編譯(自 v0.100.0 起從選用升級為內建)7。v0.117.0 改善了在使用舊版核心組態的較舊發行版上的沙箱穩定性。77 - Windows:使用受限權杖的原生沙箱(自 v0.100.0 起從實驗性升級為正式功能)。同時支援 WSL(繼承 Linux 的 Landlock + seccomp)。v0.117.0 包含受限權杖沙箱改進,強化了程序隔離效果。77
重要性說明:與基於容器的沙箱機制(Docker)不同,作業系統層級的沙箱更快速、更輕量,也更難以突破。核心會在 Codex 接觸到系統呼叫之前就先行攔截。
安全性修正:
- zsh-fork 沙箱繞過漏洞(v0.106.0): 修正了透過 zsh 分支執行 shell 可繞過沙箱限制的漏洞。62 若您使用較早的版本,請立即升級。
- 輸入大小上限(v0.106.0): Codex 現在強制執行約 100 萬字元的輸入上限,防止過大的負載導致系統停滯。62
- Linux /dev 檔案系統(v0.105.0): Linux 上的沙箱指令現在會接收一個最小化的 /dev 檔案系統,改善了與需要裝置節點的工具之間的相容性。63
ReadOnlyAccess 策略(v0.100.0+): 一種可設定的策略形式,提供細粒度的讀取存取控制。即使在 workspace-write 模式下,也能限制 Codex 可讀取的目錄:
[sandbox_workspace_write]
read_only_access = ["/etc", "/usr/local/share"] # Only these paths readable outside workspace
第二層:審批策略(何時詢問)
審批策略決定 Codex 何時暫停並請求人工確認:
| 策略 | 行為 | 適用場景 |
|---|---|---|
untrusted |
自動執行安全的讀取操作;其餘一律提示 | 最高信任門檻;適用於不熟悉的儲存庫 |
on-failure |
自動執行直到出錯,再行詢問 | 半自動化;可攔截錯誤 |
on-request |
沙箱範圍內自動核准;越界時提示 | 預設值;兼顧安全與便利 |
never |
完全不提示 | CI/CD、受信任的自動化流程 |
獨立審批 ID(v0.104.0+)
Codex 現在會為多步驟 shell 執行中的每個指令分配獨立的審批 ID。這代表審批具備細粒度——核准序列中的某個指令,不會自動核准同一 shell 呼叫中的後續指令。51
彈性審批控制(v0.105.0+)
審批流程現在支援額外的沙箱權限與細粒度拒絕:63
- 額外沙箱權限:當指令需要超出目前沙箱模式的存取權限時,Codex 可以請求特定的額外權限,而非要求完整的模式切換
- 細粒度拒絕:可針對個別工具呼叫附帶回饋意見進行拒絕,讓 Codex 調整策略,而非單純重試相同的指令
執行時期權限請求(v0.113.0+)
Codex 現在內建 request_permissions 工具,允許模型在執行時期請求額外權限。71 當模型遇到需要提升存取權限的任務時,可透過 TUI 審批流程正式請求特定權限(檔案系統路徑、網路存取等),而非靜默失敗或要求使用者以不同參數重新啟動。
權限設定檔組態語言(v0.113.0+)
全新的權限設定檔組態語言將檔案系統與網路沙箱策略拆分為獨立、可組合的區段:71
[permission_profile.filesystem]
read = ["~/Projects", "/usr/local"]
write = ["~/Projects/my-app"]
[permission_profile.network]
allow = ["api.github.com", "registry.npmjs.org"]
deny = ["*"] # Global wildcard domains now rejected (hardened in v0.113.0)
此機制取代了單一式的沙箱模式,改為細粒度的逐資源策略。可執行的權限設定檔也與每回合沙箱策略整合,用於技能執行(v0.112.0)。70
--full-auto 旗標
--full-auto 是以下設定的便捷別名:
codex --sandbox workspace-write --ask-for-approval on-request
關鍵注意事項:--full-auto 會覆蓋任何明確指定的 --sandbox 值。若您傳入 --full-auto --sandbox read-only,實際生效的會是 workspace-write,因為 --full-auto 具有優先權。8
建議組態
日常開發(安全預設值):
sandbox_mode = "workspace-write"
approval_policy = "on-request"
進階使用者(完整存取權,搭配人工把關):
sandbox_mode = "danger-full-access"
approval_policy = "untrusted"
此組合是社群公認的「最佳平衡點」:最大化能力,但每個指令都需經過審批。9
CI/CD 自動化:
sandbox_mode = "workspace-write"
approval_policy = "never"
智慧審批與 Guardian 子代理(v0.115.0+)
智慧審批可將審查請求導向 guardian 子代理,無需每個操作都經過人工審批。guardian 工作階段會跨審批持續存在,以重複利用提示快取並避免啟動開銷。每次審查都使用全新的歷史紀錄(先前的決策不會洩漏至後續審查中)。75
在 config.toml 中設定審查者:
approvals_reviewer = "guardian_subagent" # "user" (default) or "guardian_subagent"
這對 CI/CD 工作流程特別實用——當您需要附帶推理的自動化審查,而非一律使用 approval_policy = "never" 時。
啟用網路存取
Codex 在 workspace-write 模式下預設封鎖網路存取。需要時可依下列方式啟用:
# Per-run
codex -c 'sandbox_workspace_write.network_access=true' "install the packages"
# In config.toml
[sandbox_workspace_write]
network_access = true
writable_roots = ["/path/to/extra/dir"] # Additional writable directories
exclude_slash_tmp = false # Prevent /tmp from being writable
exclude_tmpdir_env_var = false # Prevent $TMPDIR from being writable
WebSocket 代理伺服器支援(v0.104.0+)
對於透過代理伺服器轉送 WebSocket 流量的企業環境,Codex 現在支援 WS_PROXY 與 WSS_PROXY 環境變數:51
export WSS_PROXY="https://proxy.corp.example.com:8443"
codex "update the README"
這些設定與既有的 HTTPS_PROXY 及 SOCKS5 代理支援(v0.93.0+)互為補充,涵蓋所有傳輸層。
測試沙箱
在信任沙箱之前,先驗證其行為:
codex sandbox macos --full-auto -- ls /etc/passwd # macOS test
codex sandbox linux --full-auto -- cat /etc/shadow # Linux test
若沙箱運作正常,兩個指令都應因權限不足而失敗——即使在 --full-auto 模式下,沙箱也會阻止讀取敏感的系統檔案。若任一指令成功執行,則需進一步調查您的沙箱組態。
AGENTS.md 如何運作?
AGENTS.md 是 Codex 的專案指令系統——一套開放標準10,現由 Linux Foundation 的 Agentic AI Foundation 管理。Codex、Cursor、Copilot、Amp、Jules(Google)、Gemini CLI、Windsurf、Cline、Aider、Zed、Factory、RooCode 以及超過 60,000 個開源專案皆支援此標準。它定義了 Codex 在特定儲存庫或目錄中的行為方式。可搭配參閱 Skills 章節,了解與 AGENTS.md 互補的可重用專業知識套件。
探索層級
Codex 在工作階段啟動時,會沿目錄樹逐層建立指令鏈:
- 全域(
~/.codex/):AGENTS.override.md>AGENTS.md - 專案(從 git 根目錄到當前目錄):每一層依序檢查
AGENTS.override.md>AGENTS.md> 備用檔名 - 合併:檔案從根目錄向下串接;越接近當前目錄的檔案越晚出現在提示詞中,會覆蓋先前的指引
~/.codex/AGENTS.md ← Global defaults
└─ /repo/AGENTS.md ← Project-wide rules
└─ /repo/services/AGENTS.md ← Service-specific rules
└─ /repo/services/payments/
AGENTS.override.md ← Overrides everything above for this dir
優秀 AGENTS.md 的要素
以下根據 Codex 自身的指引及社群實踐經驗整理11:
建議做法:
- 具體明確:"Use rg --files for discovery" 遠優於 "search efficiently"
- 定義完成標準:「完成」代表什麼?(測試通過、lint 無誤等)
- 附上指令:建構、測試、lint、格式化(寫出完整的執行命令)
- 依任務分類:撰寫程式碼、程式碼審查、發佈、事件/除錯等段落
- 定義升級處理:遇到阻塞或非預期狀態時該如何處置
應避免: - 大量傾倒風格指南卻不附帶執行規則 - 使用模糊指令(「小心一點」、「做最佳化」) - 混雜互相矛盾的優先順序(要快速+要全面驗證+不給執行時間預算) - 撰寫散文式文件(AGENTS.md 是操作政策,不是 README)
範例:正式環境的 AGENTS.md
# Repository Guidelines
## Build, Test, and Development Commands
- Run API (dev): `python3 -m uvicorn main:app --reload`
- Install deps: `pip install -r requirements.txt`
- Lint: `python3 -m ruff check .` (auto-fix: `--fix`)
- Format: `python3 -m ruff format .`
- Tests: `python3 -m pytest -v`
- Coverage: `python3 -m pytest --cov=app --cov-report=term-missing`
## Coding Style & Naming Conventions
- Python 3.11+. Type hints on all functions.
- Ruff enforced: 88-char lines, double quotes, spaces for indent.
- Naming: modules `snake_case.py`, classes `PascalCase`, functions `snake_case`.
## Commit & Pull Request Guidelines
- Conventional Commits: `feat:`, `fix:`, `docs:`, `refactor:`, `chore:`, `test:`
- Commits should be small and focused.
- PRs must include: description, test plan, and screenshots for UI changes.
## Security
- Never commit secrets. Use `.env` for local config.
- Validate all external API calls with proper error handling.
覆寫機制
在任何目錄層級放置 AGENTS.override.md,即可取代該範圍內的一般 AGENTS.md。適用情境包括:
- 發佈凍結:「不接受新功能,僅限修復」
- 事件模式:「所有變更須經值班人員審查」
- 臨時強化:「本次衝刺期間不更新相依套件」
組態設定
# Custom fallback filenames (in addition to AGENTS.md)
project_doc_fallback_filenames = ["TEAM_GUIDE.md", ".agents.md"]
# Increase max size for large instruction files
project_doc_max_bytes = 65536 # 64 KiB (default: 32 KiB)
產生骨架檔案
codex # Launch TUI
/init # Generate AGENTS.md scaffold
或驗證您的指令鏈:
codex --ask-for-approval never "Summarize your current instructions"
Hooks
Codex 在 v0.99.0 引入 hooks(AfterAgent),v0.100.0 新增 AfterToolUse,接著在 v0.114.0 推出實驗性 hooks 引擎,支援 SessionStart 與 Stop 事件。72 目前系統已涵蓋工作階段生命週期及工具層級的自動化,逐步縮小與 Claude Code hook 模型之間的差距。
可用的 Hook 事件
| 事件 | 觸發時機 | 新增版本 |
|---|---|---|
SessionStart |
工作階段開始時觸發一次;hook 的標準輸出會在第一輪對話前注入為啟動上下文 | v0.114.0 [EXPERIMENTAL] |
Stop |
工作階段結束時觸發 | v0.114.0 [EXPERIMENTAL] |
AfterAgent |
代理完成一整輪回應後觸發 | v0.99.0 |
AfterToolUse |
每次工具呼叫完成後觸發 | v0.100.0 |
UserPromptSubmit |
使用者提示詞執行前觸發;可攔截或增補提示詞內容,在其進入歷史記錄之前生效 | v0.116.0 [EXPERIMENTAL] |
Hook 組態設定
Hooks 在 .codex/config.toml 中設定:
[[hooks]]
event = "AfterToolUse"
command = "echo 'Tool completed' >> /tmp/codex-log.txt"
[[hooks]]
event = "SessionStart"
command = "echo 'Current date: $(date +%Y-%m-%d)'"
SessionStart hook 的標準輸出會注入模型的上下文中,非常適合在工作階段啟動時注入動態資訊(日期、分支名稱、環境變數)。
複製 Claude Code 的 Hook 模式
若從 Claude Code 遷移而來,以下對照表說明如何達成類似的自動化:
| Claude Code 模式 | Codex 替代方案 |
|---|---|
PreToolUse 檔案攔截 |
AGENTS.md 指令 + sandbox read-only 模式 |
PostToolUse 執行 lint |
AfterToolUse hook 執行您的 linter |
SessionStart 上下文注入 |
SessionStart hook(v0.114.0)搭配標準輸出注入 |
Stop 通知 |
Stop hook(v0.114.0)搭配通知指令 |
SubagentStop 通知 |
AfterAgent hook 搭配通知腳本 |
| 非同步 hooks | 尚未支援;可使用 Cloud tasks 處理背景工作 |
進階提示: hooks 引擎目前仍為實驗性質,功能持續擴充中。建議定期查閱 Codex changelog,掌握每個版本新增的 hook 事件。
什麼是 MCP(Model Context Protocol)?[EXPERIMENTAL]
MCP 透過連接外部工具與服務來擴展 Codex 的功能。codex mcp 指令群組目前標記為實驗性質,指令與設定格式可能在不同版本間變動。Codex 支援兩種傳輸類型:STDIO(本地程序)與 Streamable HTTP(遠端伺服器)。12
設定 MCP 伺服器
STDIO 伺服器(本地程序):
# In ~/.codex/config.toml or .codex/config.toml
[mcp_servers.context7]
enabled = true
required = true # Fail startup if unavailable
command = "npx"
args = ["-y", "@upstash/context7-mcp"]
env = { "MY_VAR" = "value" } # Static env vars
env_vars = ["PATH", "HOME"] # Forward host env vars
cwd = "/path/to/project" # Optional working directory
startup_timeout_sec = 10
tool_timeout_sec = 60
enabled_tools = ["search", "summarize"] # Tool allowlist
disabled_tools = ["slow-tool"] # Tool denylist
HTTP 伺服器(遠端):
[mcp_servers.figma]
enabled = true
url = "https://mcp.figma.com/mcp"
bearer_token_env_var = "FIGMA_OAUTH_TOKEN"
http_headers = { "X-Figma-Region" = "us-east-1" }
env_http_headers = { "X-Org-Id" = "FIGMA_ORG_ID" } # Headers from env vars
startup_timeout_sec = 10
tool_timeout_sec = 60
CLI 管理
codex mcp add context7 -- npx -y @upstash/context7-mcp
codex mcp add context7 --env API_KEY=... -- npx -y @upstash/context7-mcp # With env vars
codex mcp add figma --url https://mcp.figma.com/mcp --bearer-token-env-var FIGMA_OAUTH_TOKEN
codex mcp list # List all configured servers
codex mcp list --json # JSON output
codex mcp get context7 # Show server config
codex mcp get context7 --json # JSON output
codex mcp login <server> # OAuth flow for HTTP servers
codex mcp logout <server> # Remove OAuth credentials
codex mcp remove <server> # Delete server definition
在工作階段中:/mcp 可顯示作用中的伺服器與可用工具。
將 Codex 作為 MCP 伺服器執行
Codex 可將自身作為 MCP 伺服器公開,實現多代理協作:13
codex mcp-server # Start as MCP server (stdio transport)
該伺服器提供兩個工具:
1. codex():以 prompt、sandbox、model 和 approval 參數啟動新工作階段
2. codex-reply():透過 threadId 和 prompt 延續現有工作階段
搭配 Agents SDK(Python)使用:
from agents import Agent, Runner
from agents.mcp import MCPServerStdio
async with MCPServerStdio(
name="Codex CLI",
params={"command": "npx", "args": ["-y", "codex", "mcp-server"]},
client_session_timeout_seconds=360000,
) as codex_mcp_server:
agent = Agent(name="Developer", mcp_servers=[codex_mcp_server])
result = await Runner.run(agent, "Fix the failing tests")
常見 MCP 伺服器
| 伺服器 | 用途 | 安裝方式 |
|---|---|---|
| Context7 | 最新函式庫文件 | npx -y @upstash/context7-mcp |
| Figma | 設計檔案存取 | HTTP: https://mcp.figma.com/mcp |
| Playwright | 瀏覽器自動化 | npx -y @anthropic/mcp-playwright |
| Sentry | 錯誤監控 | HTTP: https://mcp.sentry.dev/mcp |
| GitHub | 儲存庫操作 | npx -y @anthropic/mcp-github |
實用模式
模式 1:情境感知開發 — 將 Context7 與您的框架文件搭配使用,讓 Codex 始終擁有最新的 API 參考資料:
[mcp_servers.context7]
enabled = true
required = true
command = "npx"
args = ["-y", "@upstash/context7-mcp"]
模式 2:輸出限制 — MCP 工具回應預設會在約 25K 字元處截斷。對於回傳大量資料的工具(資料庫查詢、日誌擷取),可使用 enabled_tools 限制特定工具,保持回應精簡。
模式 2a:多模態工具輸出(v0.107.0) — 自訂工具現可在文字之外回傳多模態輸出(圖片、豐富內容)。這使產生視覺成果的工具——截圖、圖表、圖表渲染——能直接將內容傳遞給模型進行分析。64
模式 3:企業級 MCP 治理 — 透過 requirements.toml 管控開發者可使用的 MCP 伺服器:
# In /etc/codex/requirements.toml — only approved servers allowed
[mcp_servers.approved-internal]
identity = { command = "npx @company/internal-mcp" }
任何不符合 requirements.toml 中身分定義的伺服器,將在啟動時遭到封鎖。完整策略設定請參閱企業部署章節。
Code Mode [EXPERIMENTAL]
Code mode(v0.114.0)透過將代理範圍限縮至以程式碼為中心的操作,提供更獨立的編碼工作流程。72 啟用後,代理會專注於讀取、撰寫和測試程式碼,不進行更廣泛的系統互動。
此功能為實驗性質,請查閱版本發佈說明以取得最新資訊。
JavaScript REPL 執行環境 [EXPERIMENTAL]
Codex v0.100.0 新增了實驗性的 JavaScript REPL 執行環境(js_repl),可在多次工具呼叫間保持狀態。v0.106.0 將 REPL 升級至 /experimental 斜線指令,並加入啟動相容性檢查——需要 Node.js 22.22.0 或更新版本。62
啟用 JS REPL:
# In config.toml
[features]
js_repl = true
或在工作階段中透過 TUI 的 /experimental 啟用。
使用範例: 啟用後,Codex 可在工作階段中跨工具呼叫維持狀態:
// Codex can accumulate data across multiple tool calls
const results = await fetchTestResults();
const failures = results.filter(r => r.status === "failed");
console.log(`${failures.length} failures out of ${results.length} tests`);
// Variable 'failures' persists and is available in subsequent tool calls
系統需求: Node.js 22.22.0+(啟動時會驗證相容性)。v0.105.0 新增了 REPL 失敗時的改進錯誤回報與復原機制。63
此功能為實驗性質,介面可能在不同版本間變動。
什麼是 Skills?
Skills 是可重複使用、針對特定任務的功能套件,Codex 會依需求載入。它們遵循開放代理 skills 標準。14
Skill 結構
my-skill/
SKILL.md (required: instructions)
scripts/ (optional: executable scripts)
references/ (optional: reference docs)
assets/ (optional: images, icons)
agents/openai.yaml (optional: metadata, UI, dependencies)
探索位置
Codex 將使用者安裝的 skills 存放在 $CODEX_HOME/skills(預設:~/.codex/skills),包含 .system/ 下的內建系統 skills。Codex 支援以符號連結方式連結 skill 資料夾。
| 範圍 | 路徑 |
|---|---|
| 專案/團隊 | 儲存庫中的 skill 資料夾(版本不同,配置可能有異) |
| 使用者 | ~/.codex/skills/(或 $CODEX_HOME/skills/) |
| 管理員 | /etc/codex/skills/ |
| 系統 | 由 OpenAI 內建(位於 ~/.codex/skills/.system/) |
建立 Skill
SKILL.md 格式:
---
name: security-audit
description: Run a thorough security audit on the codebase.
---
## 安全稽核流程
1. 使用 `rg -i "(api_key|password|secret|token)\s*=" --type py` 掃描硬編碼的機密資訊
2. 檢查 SQL 注入風險:查找查詢中的字串插值
3. 驗證所有 API 端點的輸入驗證機制
4. 檢查相依套件漏洞:`pip audit` 或 `npm audit`
5. 審查身份驗證與授權模式
6. 依嚴重程度(Critical/High/Medium/Low)回報發現事項
中繼資料(agents/openai.yaml):
interface:
display_name: "Security Audit"
short_description: "Full codebase security review"
icon_small: "./assets/shield.svg"
brand_color: "#DC2626"
default_prompt: "Run a security audit on this repository"
policy:
allow_implicit_invocation: false # Require explicit $skill
dependencies:
tools:
- type: "mcp"
value: "snyk"
transport: "streamable_http"
url: "https://mcp.snyk.io/mcp"
叫用 Skills
- 明確叫用:透過
/skills選單或在提示中提及$skill-name - 隱式叫用:Codex 會自動從任務描述中偵測匹配的 skills(需設定
allow_implicit_invocation: true) - 建立工具:使用
$skill-creator以互動方式建立新的 skill - 安裝工具:使用
$skill-installer install <name>安裝社群 skills
啟用/停用
[[skills.config]]
path = "/path/to/skill/SKILL.md"
enabled = false
Skills 與 Slash Commands 比較
| Skills | Slash Commands | |
|---|---|---|
| 定義位置 | SKILL.md 檔案搭配選用的中繼資料 |
內建於 Codex CLI 二進位檔 |
| 適用範圍 | 專案、使用者或管理員層級 | 全域(隨時可用) |
| 叫用方式 | 在提示中使用 $skill-name、/skills 選單或隱式偵測 |
/command 語法 |
| 可自訂性 | 完全自訂——由您撰寫指示 | 固定行為 |
| 相依性 | 可宣告 MCP 伺服器需求 | 無 |
| 分享方式 | 將 skill 資料夾複製到團隊儲存庫或 ~/.codex/skills/ |
無法分享 |
Skills 除錯
若 skill 未正常啟動:
- 檢查探索:
/skills應在 TUI 中列出該 skill - 驗證路徑:確認 skill 資料夾位於可識別的位置(
~/.codex/skills/、專案根目錄或/etc/codex/skills/) - 檢查
enabled:在 config.toml 中設為enabled = false的 skills 不會載入 - 檢查隱式啟動:若依賴自動偵測,請確認
agents/openai.yaml中的allow_implicit_invocation: true - 善用關鍵字:在提示中加入 skill 的
description相關詞彙,以提升隱式匹配精準度
正式環境範例:部署 Skill
以下是一個完整的多檔案 skill 範例,展示參考資料與腳本如何協同運作:
deploy-skill/
SKILL.md
references/
runbook.md
rollback-checklist.md
scripts/
pre-deploy-check.sh
smoke-test.sh
agents/openai.yaml
SKILL.md:
---
name: deploy
description: Deploy the application to staging or production. Runs pre-flight checks, executes deployment, and verifies with smoke tests.
---
## Deployment Procedure
### Pre-flight
1. Run `scripts/pre-deploy-check.sh` to verify:
- All tests pass
- No uncommitted changes
- Branch is up to date with remote
2. Review the runbook at `references/runbook.md` for environment-specific steps.
### Deploy
3. Execute the deployment command for the target environment.
4. Monitor logs for errors during rollout.
### Verify
5. Run `scripts/smoke-test.sh <environment-url>` to confirm critical paths.
6. If smoke tests fail, follow `references/rollback-checklist.md`.
叫用方式:$deploy to staging 或 $deploy production with canary rollout
外掛程式
外掛程式將 skills、MCP 項目與應用程式連接器統一為單一可安裝套件(v0.110.0+)。67 自 v0.117.0 起,外掛程式已成為一等公民:產品層級的外掛程式在啟動時自動同步,/plugins 提供 TUI 內建的瀏覽器供探索與管理,且安裝/移除操作在 CLI 與 TUI 中皆可進行。77
外掛程式來源
| 來源 | 位置 | 說明 |
|---|---|---|
| 設定檔 | config.toml |
手動宣告的外掛程式 |
| 本機市集 | marketplace.json |
專案本地的外掛程式目錄 |
| 安裝端點 | App server v2 | 遠端外掛程式安裝 |
| 產品層級 | 啟動時同步 | 自動同步的外掛程式(v0.117.0+) |
外掛程式探索
Codex 會在工作階段開始時告知模型已啟用哪些外掛程式(v0.111.0),提升已安裝 MCP、應用程式與 skills 的可探索性。67 模型可根據任務情境建議相關外掛程式。自 v0.117.0 起,產品層級的外掛程式會在啟動時同步,確保無需手動操作即可取得最新的外掛程式目錄。77
@plugin 提及(v0.112.0+)
在聊天中直接以 @plugin-name 引用任何已安裝的外掛程式。70 提及外掛程式時,其內容(功能、工具、設定)會自動納入模型的上下文視窗——無需額外描述該外掛程式的用途。
@deploy push this branch to staging with canary rollout
@linter check for unused imports in src/
此功能適用於所有已安裝的外掛程式,包括自訂 skills、MCP 伺服器及應用程式連接器。
外掛程式市集(v0.113.0+)
外掛程式市集現已提供更豐富的探索功能,包含中繼資料、分類與評分。71 安裝時的驗證機制會確認需要 API 金鑰或 OAuth 的外掛程式具備有效憑證。解除安裝端點可乾淨地移除外掛程式及其相關設定。
管理外掛程式
codex plugin list # Show installed plugins
codex plugin install <name> # Install from marketplace
codex plugin uninstall <name> # Remove plugin and config (v0.113.0+)
在 TUI 中,使用 /plugins(v0.117.0+)即可互動式瀏覽、安裝與移除外掛程式,無需離開目前的工作階段。77
進階提示:外掛程式整合了過去需要分別設定 MCP 組態、安裝 skill 及設定應用程式連接器的工作。單一外掛程式即可涵蓋這三者——讓團隊導入更快速、設定更具可攜性。
Plan Mode 與協作
Plan mode 讓 Codex 在執行變更前先設計方案。此功能自 v0.94.0 起預設啟用。15 請參閱決策框架中的「Plan Mode vs Direct Execution」決策樹。
進入 Plan Mode
/plan # Switch to plan mode
/plan "redesign the API layer" # Plan mode with initial prompt
在 Plan mode 中,Codex 會: - 讀取檔案並分析程式碼庫 - 提出實作計畫 - 在您核准前不會進行任何變更 - 在專屬的 TUI 檢視中串流顯示計畫
Steer Mode
Steer mode(自 v0.98.0 起預設啟用)讓您在 Codex 作業期間注入新指示,而不中斷其當前任務。15
提供兩種注入方式:
| 輸入方式 | 行為 | 適用時機 |
|---|---|---|
| Enter | 立即送出指示;Codex 在當前回合中即可接收 | 緊急修正(「停——不要修改那個檔案」)、釐清事項(「設定檔在 /etc/app.conf,不是預設路徑」)或優先順序調整(「先專注在測試上」) |
| Tab | 將指示排入佇列等待下一回合;Codex 會先完成當前工作 | 後續任務(「做完之後也更新 changelog」)、範圍擴充(「完成後執行 linter」)或非緊急的補充資訊(「部署目標是 staging,不是 prod」) |
實際範例:
# Codex is refactoring the auth module...
[Enter] "Use bcrypt instead of argon2 — we already have it as a dependency"
→ Codex adjusts immediately, mid-turn
[Tab] "Once auth is done, update the migration script too"
→ Codex finishes auth refactor, then starts the migration
Steer mode 在 TUI 中隨時啟用。若您偏好等 Codex 完成後再給指示,只需在回合結束後正常輸入即可——不需要特殊模式。
TUI 增強功能(v0.105.0–v0.106.0)
語法高亮(v0.105.0): TUI 現可對程式碼區塊與差異比對進行即時語法高亮。使用 /theme 選擇配色方案。63
新增 TUI 指令(v0.105.0+):63
| 指令/按鍵 | 說明 |
|---|---|
/copy |
將最近一次回應複製到剪貼簿 |
/clear |
清除 TUI 畫面 |
Ctrl+L |
清除畫面(鍵盤快捷鍵) |
/theme |
切換語法高亮配色方案 |
/plugins |
瀏覽、安裝與移除外掛程式(v0.117.0+)77 |
/title |
設定終端機視窗標題;適用於 TUI 與 app-server TUI(v0.117.0+)77 |
語音轉錄(v0.105.0,實驗性功能): 按空白鍵即可透過語音轉錄輸入提示。此功能仍為實驗性質,可能需要麥克風權限。63 自 v0.107.0 起,即時語音工作階段支援麥克風與喇叭裝置選擇,讓您可以指定特定的音訊輸入/輸出硬體。64
其他改進:
- 長連結在 TUI 中換行時仍可正常點擊(v0.105.0)63
- 本機檔案連結以改良格式呈現(v0.106.0)62
- 修正子代理的 Ctrl+C 處理,可正確終止子行程(v0.106.0)62
記憶系統
Codex 具備持久化記憶系統(v0.100.0+),可跨工作階段儲存事實、偏好設定與專案脈絡。25
記憶指令
| 指令 | 說明 |
|---|---|
/m_update <fact> |
儲存一筆記憶(例如 /m_update always use pytest, never unittest) |
/m_drop <query> |
移除符合查詢條件的記憶 |
記憶以 markdown 檔案形式儲存於 ~/.codex/memory/ 目錄下。Codex 在工作階段啟動時載入這些記憶,並據此調整後續所有工作階段的行為。
適合儲存的內容
記憶最適合用於持久性偏好與專案事實:
- 專案慣例:「此專案使用 Tab 而非空格」或「API 回應一律包含
meta欄位」 - 工具偏好:「使用
pnpm而非npm」或「以pytest -x --tb=short執行測試」 - 架構決策:「認證模組位於
src/core/auth/,不在src/middleware/」 - 工作流程偏好:「在顯示 diff 之前一律先執行 linter」
在自動化流程中使用記憶
執行 codex exec 時,記憶會自動載入。這代表 CI/CD 流程與腳本能享有與互動式工作階段相同的脈絡——無需在每次呼叫時重複指示。
記憶功能改進(v0.101.0–v0.107.0)
- 機密資料過濾:記憶在寫入磁碟前會自動掃描是否含有機密資料
- 工作目錄感知:記憶檔案現已包含工作目錄脈絡,可針對特定專案進行回溯
- 開發者訊息排除:開發者/系統訊息已從第一階段記憶輸入中排除,透過聚焦於使用者互動來提升記憶品質
- 基於差異的遺忘機制(v0.106.0):記憶現採用基於差異的遺忘機制來移除過時事實,維持記憶庫的精簡與相關性62
- 使用頻率感知的選取(v0.106.0):記憶擷取現已具備使用頻率感知能力,優先提取常用且近期相關的記憶62
- 可設定的記憶管理(v0.107.0):記憶現已完全可設定。使用
codex debug clear-memories可重設所有已儲存的記憶,從頭開始——在切換不相關專案或記憶狀態已偏移時特別實用64
記憶與 AGENTS.md 的比較
| 使用情境 | 記憶(/m_update) |
AGENTS.md |
|---|---|---|
| 個人偏好 | 使用記憶(跨所有專案持久保存) | 不適用 |
| 專案慣例 | 皆可(記憶用於個人回顧,AGENTS.md 用於團隊共享) | AGENTS.md 適合團隊 |
| 架構決策 | AGENTS.md(共享脈絡) | 首選方案 |
| 工具指令 | 記憶(快速個人參考) | AGENTS.md 適合團隊 |
提示:使用
/m_update來儲存需要無限期保留的事實。若為工作階段專屬的脈絡,直接在對話中告訴 Codex 即可。若為團隊共享脈絡,請使用 AGENTS.md。
工作階段管理
Codex 將工作階段持久化於 ~/.codex/sessions/ 目錄,支援恢復、分支及多執行緒工作流程,橫跨 CLI 與桌面應用程式介面。
恢復
從上次中斷處繼續:
codex resume # Interactive picker (sorted by recency)
codex resume <SESSION_ID> # Resume a specific session
codex exec resume --last "continue" # Non-interactive: resume most recent
TUI 內的 /resume 斜線指令會開啟相同的互動式選取器,並支援搜尋。
分支
將對話分支出去以探索替代方案,同時不影響目前進度:
/fork # Fork current conversation
/fork "try a different approach" # Fork with new prompt
分支會建立獨立的執行緒,共享分支點之前的相同歷史紀錄。一個分支中的變更不會影響另一個分支。這在比較不同方案(例如「分支出去嘗試用 Redis 取代 Memcached」)或安全探索高風險變更時非常實用。
執行緒分支為子代理(v0.107.0): 執行緒現可分支為獨立的子代理,讓對話能衍生出自主執行的平行工作流。這是既有分支模型的延伸——不僅是分支對話,分支出去的執行緒會成為擁有獨立執行脈絡的子代理。64 自 v0.117.0 起,子代理採用基於路徑的定址方式(例如 /root/agent_a),搭配結構化的代理間訊息傳遞,使多代理協調更加明確且易於除錯。77
執行緒列表
檢視與管理進行中的工作階段:
/status # Current session info and token usage
/ps # Show background terminals in session
在桌面應用程式中,執行緒顯示於側邊欄,附有完整歷史紀錄與差異預覽。
工作階段生命週期
| 動作 | CLI | 桌面應用程式 |
|---|---|---|
| 開啟新工作階段 | codex 或 /new |
新執行緒按鈕 |
| 恢復 | codex resume 或 /resume |
點選側邊欄中的執行緒 |
| 分支 | /fork |
右鍵點選執行緒 → 分支 |
| 結束 | /quit 或 Ctrl+C |
關閉執行緒分頁 |
| 刪除 | 從 ~/.codex/sessions/ 移除 |
右鍵點選 → 刪除 |
工作階段可在 CLI 與桌面應用程式之間同步——在其中一個啟動,在另一個繼續。
非互動模式(codex exec)
codex exec 以非互動方式執行 Codex,適用於腳本撰寫、CI/CD 及自動化場景。16
基本用法
codex exec "summarize the repository structure"
codex exec --full-auto "fix the CI failure"
codex exec --json "triage open bugs" -o result.txt
預設情況下,codex exec 將進度/事件寫入 stderr,最終代理訊息寫入 stdout。此設計使其可與標準 Unix 管線無縫組合。
JSON Lines 輸出
搭配 --json 時,stdout 會成為 JSONL 事件串流:
codex exec --json "fix the tests" | jq
事件類型:thread.started、turn.started/completed/failed、item.started/completed、error
{"type":"thread.started","thread_id":"019c5c94-..."}
{"type":"turn.started"}
{"type":"item.started","item":{"id":"item_1","type":"command_execution","status":"in_progress"}}
{"type":"item.completed","item":{"id":"item_3","type":"agent_message","text":"..."}}
{"type":"turn.completed","usage":{"input_tokens":24763,"cached_input_tokens":24448,"output_tokens":122}}
結構化輸出
使用 JSON Schema 強制回應格式:
codex exec "Extract project metadata" \
--output-schema ./schema.json \
-o ./project-metadata.json
-o / --output-last-message 將最終訊息寫入檔案。
工作階段恢復與審查
codex exec resume --last "continue where you left off"
codex exec resume <SESSION_ID> "fix the remaining issues"
codex exec review --base main # Code review against a branch
主要旗標
| 旗標 | 說明 |
|---|---|
--full-auto |
workspace-write 沙箱 + on-request 核准模式 |
--json |
JSONL 事件串流輸出至 stdout |
-o, --output-last-message <file> |
將最終訊息儲存至檔案 |
--output-schema <file> |
依據 JSON Schema 驗證回應 |
--ephemeral |
不持久化工作階段檔案 |
-C, --cd <dir> |
設定工作目錄 |
--add-dir <dir> |
額外的可寫入目錄 |
--skip-git-repo-check |
允許在 git 儲存庫外執行 |
--dangerously-bypass-approvals-and-sandbox |
無沙箱、無核准(僅限 CI) |
CI 認證
codex exec 支援 CODEX_API_KEY,可在自動化環境中進行非互動式認證。
Codex Cloud 與背景任務 [實驗性功能]
狀態:Codex Cloud 是一項實驗性功能。介面、定價與可用性可能隨時變更。雲端環境由 OpenAI 管理,您無法控制基礎設施。
Codex Cloud 在 OpenAI 管理的環境中非同步執行任務。4 另請參閱 GitHub Action 與 CI/CD 以了解如何將 Codex 整合至您的 CI 流程。
運作方式
- 提交任務(透過 chatgpt.com/codex、Slack 整合或 CLI)
- Codex 將您的儲存庫複製到隔離的雲端沙箱中
- 代理獨立運作:讀取程式碼、執行測試、進行修改
- 完成後,Codex 建立 PR 或提供差異供審查
- 使用
codex apply <TASK_ID>將結果套用至本機
雲端網路存取
代理的網路存取預設為關閉,可依環境設定:
- 關閉:無代理網路存取(預設)
- 開啟:可選的網域許可清單 + HTTP 方法限制
Allowed domains: pypi.org, npmjs.com, github.com
Allowed methods: GET, HEAD, OPTIONS
即使代理網路存取關閉,安裝腳本仍可使用網路來安裝相依套件。
Slack 整合
在 Slack 頻道或討論串中提及 @Codex 即可啟動雲端任務。
前置條件: 1. 符合資格的 ChatGPT 方案(Plus、Pro、Business、Enterprise 或 Edu) 2. 已連結的 GitHub 帳號 3. 至少一個已設定的雲端環境 4. 已為您的工作區安裝 Slack 應用程式
Codex 會回覆任務連結,並在完成時發布結果。
雲端 CLI
codex cloud exec --env <ENV_ID> "Fix failing tests" # Start a cloud task
codex cloud status <TASK_ID> # Check task progress
codex cloud diff <TASK_ID> # View task diff
codex cloud list # List recent tasks
codex cloud list --json # JSON output
codex cloud apply <TASK_ID> # Apply from cloud subcommand
codex apply <TASK_ID> # Apply diff (top-level shortcut)
## Codex Desktop App
Codex 桌面應用程式(macOS 與 Windows)提供圖形化介面,專為多專案管理而最佳化。[^17] Windows 版本於 2026 年 3 月 4 日推出,支援原生 PowerShell 及原生 Windows 沙箱。[^68]
### 安裝
```bash
codex app # Auto-downloads and installs on first run
或直接下載:Codex.dmg(macOS)| 可於 Microsoft Store 取得(Windows)
主要功能
| 功能 | 說明 |
|---|---|
| 平行執行緒 | 跨專案同時執行多項任務 |
| 執行緒模式 | 以 Local、Worktree 或 Cloud 模式啟動執行緒 |
| 內建 Git 工具 | 檢視差異、新增註解、暫存/還原區塊、提交/推送、建立 PR |
| 整合式終端機 | 每個執行緒獨立終端機(Cmd+J) |
| 語音輸入 | 以語音輸入提示(Ctrl+M) |
| 自動化 | 排程定期執行任務 |
| 通知 | 應用程式於背景執行時,發送完成/核准通知 |
| 防止休眠 | 選擇性設定,讓機器在任務執行期間保持喚醒狀態 |
| Skills + MCP | 跨應用程式、CLI 及 IDE 擴充功能共享設定 |
| MCP 捷徑 | 在編輯器中快速存取 MCP 工具捷徑(App v26.226)65 |
| 審查 @mentions | 在程式碼審查註解中 @mention 協作者(App v26.226)65 |
| 自訂佈景主題 | 於設定中控制色彩與選擇字型(App v26.312)74 |
| App-server TUI | 預設啟用(v0.117.0+):! shell 指令、檔案系統監視、透過 bearer auth 進行遠端 WebSocket、跨工作階段的提示歷史回溯77 |
執行緒模式
每個執行緒在建立時可選擇以下三種模式之一執行:
| 模式 | 隔離方式 | 檔案存取 | 適用情境 |
|---|---|---|---|
| Local | 無隔離——直接在專案目錄中操作 | 完整讀寫 | 快速任務、探索、非破壞性作業 |
| Worktree | Git worktree——儲存庫的隔離分支副本 | 隔離副本 | 功能開發、高風險重構、平行實驗 |
| Cloud | 遠端伺服器——於 OpenAI 基礎架構上執行 | 無本機存取 | 長時間執行任務、類似 CI 的工作流程、非同步委派 |
Worktree 隔離機制:
啟動 Worktree 執行緒時,桌面應用程式會:
1. 在暫存目錄中建立新的 git worktree(git worktree add)
2. 從目前的 HEAD 簽出一個全新分支
3. 在 worktree 中執行代理程式——所有檔案變更均被隔離
4. 完成後呈現差異檢視——由您決定要合併哪些變更
這表示多個 Worktree 執行緒可在同一儲存庫上同時執行而不會衝突。每個執行緒擁有獨立的分支與工作目錄。
自動化
自動化任務在應用程式本機執行,因此應用程式必須處於執行狀態,且專案必須存在於磁碟上:
- 在 Git 儲存庫中,自動化使用專用的背景 worktree(與您的工作目錄隔離)
- 在非 Git 專案中,直接在專案目錄內執行
- 自動化使用您的預設沙箱設定
設定自動化: 1. 在桌面應用程式中開啟專案 2. 點擊側邊欄中的「Automations」分頁 3. 定義觸發條件(排程、webhook 或手動) 4. 撰寫提示並選擇執行模式(local 或 worktree) 5. 設定自動化執行的推理等級(App v26.312)74 6. 自動化按排程執行,並將結果排入佇列等待審查
範例使用情境: - Issue 分類:自動分類並排定新 issue 的優先順序 - CI 監控:監視建置失敗並建議修正方案 - 告警回應:對監控告警進行診斷分析 - 相依性更新:檢查並套用安全性修補
結果會出現在審查佇列中,等待人工核准。
Windows 支援
Codex Desktop App 於 2026 年 3 月 4 日(App v26.304)在 Windows 上推出,支援原生 PowerShell、原生 Windows 沙箱,並具備完整功能,包括 skills、自動化及 worktrees,無需 WSL。68
GitHub Action 與 CI/CD
官方 GitHub Action 可將 Codex 整合至您的 CI/CD 管線。19
基本用法
# .github/workflows/codex.yml
name: Codex
on:
pull_request:
types: [opened]
jobs:
codex:
runs-on: ubuntu-latest
outputs:
final_message: ${{ steps.run_codex.outputs.final-message }}
steps:
- uses: actions/checkout@v5
- name: Run Codex
id: run_codex
uses: openai/codex-action@v1
with:
openai-api-key: ${{ secrets.OPENAI_API_KEY }}
prompt-file: .github/codex/prompts/review.md
sandbox: workspace-write
safety-strategy: drop-sudo
設定選項
| 輸入 | 用途 |
|---|---|
openai-api-key |
用於代理/驗證設定的 API 金鑰 |
responses-api-endpoint |
覆寫端點(例如 Azure Responses URL) |
prompt / prompt-file |
任務指示(二擇一) |
working-directory |
傳遞給 codex exec --cd 的目錄 |
sandbox |
workspace-write / read-only / danger-full-access |
codex-args |
額外的 CLI 旗標(JSON 陣列或 shell 字串) |
output-schema / output-schema-file |
用於 --output-schema 的結構化輸出結構定義 |
model / effort |
代理程式設定 |
output-file |
將最終訊息儲存至磁碟 |
codex-version |
固定 CLI 版本 |
codex-home |
自訂 Codex 主目錄 |
allow-users / allow-bots |
觸發允許清單控制 |
safety-strategy / codex-user |
權限降低行為與使用者選擇 |
輸出:final-message,Codex 的最終回應文字,供下游步驟/工作使用。
安全策略
| 策略 | 說明 |
|---|---|
drop-sudo(預設) |
Linux/macOS;在 action 步驟後移除 sudo 權限 |
unprivileged-user |
以預先建立的低權限使用者身份執行 Codex |
read-only |
唯讀沙箱(仍有 runner/使用者權限風險) |
unsafe |
不進行權限降低;Windows runner 上必須使用 |
存取控制
with:
allow-users: "admin,maintainer" # Limit who can trigger
allow-bots: false # Block bot-triggered runs
預設:僅擁有寫入權限的協作者可觸發 Codex 工作流程。
Codex SDK
TypeScript SDK 可將 Codex 的代理程式能力嵌入自訂應用程式中。20
安裝
npm install @openai/codex-sdk
基本用法
import { Codex } from "@openai/codex-sdk";
const codex = new Codex();
const thread = codex.startThread();
// Multi-turn conversation
const turn1 = await thread.run("Diagnose CI failures and propose a fix");
console.log(turn1.finalResponse);
const turn2 = await thread.run("Implement the fix and add tests");
console.log(turn2.items);
// Resume a previous session
const resumed = codex.resumeThread("<thread-id>");
await resumed.run("Continue from previous work");
進階 SDK 功能
runStreamed(...):非同步事件串流,用於取得中間更新outputSchema:強制最終輸出符合 JSON 結構- 多模態輸入:傳入文字 + 本機影像(
{ type: "local_image", path: "..." }) - 影像工作流程(v0.117.0):
view_image回傳 URL,產生的影像可重新開啟,且影像歷程在工作階段恢復後仍保留77
執行緒與用戶端設定
// Custom working directory, skip git check
const thread = codex.startThread({
workingDirectory: "/path/to/project",
skipGitRepoCheck: true,
});
// Custom environment and config overrides
const codex = new Codex({
env: { CODEX_API_KEY: process.env.MY_KEY },
config: { model: "gpt-5.2-codex" },
});
工作階段持久化儲存於 ~/.codex/sessions。
執行環境:Node.js 18+。
效能最佳化
上下文管理
旗艦模型擁有 272K token 的輸入視窗(128K 輸出,400K 總預算),但填滿的速度仍然超乎預期。建議主動管理:
- 定期使用
/compact:摘要對話歷程以釋放 token - 提供本機文件:高品質的
AGENTS.md與本機文件可減少探索開銷(探索會消耗上下文) - 使用
@附加特定檔案:直接引用檔案,而非要求 Codex 自行搜尋 - 保持提示聚焦:指定確切檔案的範圍性提示,比開放式探索消耗更少的上下文
Token 效率
| 技巧 | 效果 |
|---|---|
設定 model_reasoning_summary = "none" |
減少約 20% 的輸出 token |
使用 model_verbosity = "low" |
更精簡的說明,更多實際操作 |
| 簡單任務使用 mini 模型 | 每則訊息的成本顯著降低 |
| 將複雜任務拆分為聚焦的工作階段 | 提升每個工作階段的 token 效率 |
| 使用 profiles 依任務切換設定 | 避免在例行工作上耗費高推理成本 |
速度最佳化
gpt-5.3-codex-spark:低延遲變體,適合互動式配對程式設計--profile fast:預先設定的 mini 模型,搭配低推理等級- 平行工具執行:Codex 會同時執行獨立的讀取/檢查操作,因此建議以利於平行化的方式撰寫提示
- 目標導向迴圈:使用「實作、測試、修正、測試通過即停止」的指令,取代逐步指示
如何除錯問題?
常見問題與解決方案
| 問題 | 原因 | 解決方案 |
|---|---|---|
| 「Re-connecting」迴圈 | 多個 Codex 實例同時執行 | 終止所有程序,等待 60 秒後重啟單一實例 |
| 401 驗證錯誤 | 憑證過期 | rm ~/.codex/auth.json && codex login |
| 沙箱中網路被封鎖 | 預設行為 | -c 'sandbox_workspace_write.network_access=true' |
| WSL2 斷線 | WSL 狀態損壞 | 在 PowerShell 執行 wsl --shutdown,等待 1 分鐘後重啟 |
| 補丁套用失敗 | 換行符號不一致 | 統一為 LF,提供精確的檔案內容 |
| 上下文壓縮失敗 | 上下文過多 | 降低推理強度,將任務拆分為較小的部分 |
| 模型意外切換 | config.toml 覆蓋設定 | 執行 /config 檢查生效的設定及來源 |
| Plan 模式允許寫入操作 | 已知錯誤 | Issue #11115 |
| 忘記 AGENTS.md 指令 | 上下文限制 | 保持指令簡潔;使用 skill 檔案存放詳細程序 |
| Read Only 模式停滯 | 已知問題 | Discussion #7380 |
錯誤訊息參考
| 錯誤訊息 | 含義 | 修復方式 |
|---|---|---|
Error: EACCES permission denied |
沙箱封鎖了檔案操作 | 檢查沙箱模式;若 Codex 需要編輯檔案,請使用 workspace-write |
Error: rate limit exceeded |
達到 API 速率限制 | 等待後重試;降低 model_reasoning_effort 或切換至較輕量的模型 |
Error: context length exceeded |
對話超過 272K 輸入 token 上限 | 使用 /compact 摘要內容,或以 /new 開啟新工作階段 |
Error: MCP server failed to start |
MCP 伺服器程序崩潰或逾時 | 執行 codex mcp get <name> 檢查設定;增加 startup_timeout_sec |
Error: authentication required |
缺少有效的 API 金鑰或工作階段 | 執行 codex login 或設定 CODEX_API_KEY |
Error: sandbox execution failed |
指令在沙箱中執行失敗 | 檢查指令語法;確認沙箱環境中所需工具已就緒 |
WARN: skill not found |
參照的 skill 在預期路徑不存在 | 檢查 /skills 清單;確認 skill 資料夾位置 |
Error: wire format mismatch |
提供者的 wire_api 設定錯誤 |
對 OpenAI 端點使用 wire_api = "responses"(參閱自訂模型提供者) |
診斷工具
codex --version # Check CLI version
codex login status # Verify authentication
codex mcp list # Check MCP server status
codex debug app-server --help # Debug app server issues
工作階段內的 TUI 診斷指令:
/status # Token/session overview
/config # Inspect effective config values and sources
/compact # Summarize history to reclaim context
注意:
codex --verbose並非有效的頂層旗標。請使用上述 debug 子指令與 TUI 診斷工具。
全新安裝
npm uninstall -g @openai/codex && npm install -g @openai/codex@latest
除錯模式
codex debug app-server send-message-v2 # Test app-server client
回報問題
/feedback # Send logs to Codex maintainers (in TUI)
也可至 github.com/openai/codex/issues 提交 issue。1
Codex Security〔預覽〕
Codex Security 於 2026 年 3 月 6 日進入研究預覽階段,為 Codex 技術堆疊引入具上下文感知能力的應用程式安全審查功能。79 ChatGPT Pro、Enterprise、Business 及 Edu 客戶可透過 Codex 網頁版使用。
運作方式:Codex Security 分析儲存庫以建立專案專屬的威脅模型,依據實際影響程度分類識別弱點,並在沙箱環境中對發現結果進行壓力測試以驗證其有效性。代理程式會呈現信心度較高的發現及修復建議,有效減少無關緊要的雜訊。
效能表現:研究預覽期間,Codex Security 掃描了 120 萬筆 commit,識別出 10,561 個高嚴重性弱點。精確度持續提升——雜訊降低 84%,過度標記的嚴重性減少 90% 以上,誤報率減半。該系統已在 OpenSSH、GnuTLS 及 Chromium 中發現真實弱點,共獲分配 14 個 CVE。79
注意:Codex Security 與 CLI 內建的沙箱安全模型是不同的機制。沙箱保護的是您的機器不受 Codex 影響;Codex Security 保護的是您的程式碼庫不受弱點侵害。
企業部署
管理員控制(requirements.toml)
管理員透過 requirements.toml 強制執行企業政策。這是一份管理員強制的設定檔,用於約束使用者無法覆寫的安全敏感設定:22
# /etc/codex/requirements.toml
# Restrict which approval policies users can select
allowed_approval_policies = ["untrusted", "on-request", "on-failure"]
# Limit available sandbox modes
allowed_sandbox_modes = ["read-only", "workspace-write"]
# Control web search capabilities
allowed_web_search_modes = ["cached"]
# Allowlist MCP servers by identity (both name and identity must match)
[mcp_servers.approved-server]
identity = { command = "npx approved-mcp-server" }
# Admin-enforced command restrictions
[[rules.prefix_rules]]
pattern = [{ token = "rm" }, { any_of = ["-rf", "-fr"] }]
decision = "forbidden"
justification = "Recursive force-delete is prohibited by IT policy"
[[rules.prefix_rules]]
pattern = [{ token = "sudo" }]
decision = "prompt"
justification = "Elevated commands require explicit approval"
與設定使用者偏好的
config.toml不同,requirements.toml是一個硬性約束層,限制使用者可選的值,且使用者無法覆寫。管理員需求規則僅能設為提示確認或禁止(絕不會靜默允許)。
macOS MDM 設定
透過 MDM 使用 com.openai.codex 偏好設定域名進行分發。22 Codex 支援標準的 macOS MDM 承載設定(Jamf Pro、Fleet、Kandji 等)。將 TOML 以 base64 編碼,不換行:
| 鍵名 | 用途 |
|---|---|
config_toml_base64 |
Base64 編碼的受管理預設值(使用者可變更的初始值) |
requirements_toml_base64 |
Base64 編碼的管理員強制需求(使用者無法覆寫) |
優先順序(由高至低):
- macOS 受管理偏好設定(MDM)
- 雲端擷取的需求(ChatGPT Business / Enterprise)
/etc/codex/requirements.toml(本機檔案系統)
雲端需求僅填補未設定的需求欄位,因此較高優先順序的受管理層級始終優先。雲端需求為盡力而為;若擷取失敗或逾時,Codex 將在不套用雲端層的情況下繼續運作。
OpenTelemetry 整合
Codex 支援 OpenTelemetry 追蹤上下文傳播,從標準 OTel 環境變數貫穿至 OpenAI API 呼叫。在啟動 Codex 前設定標準環境變數:
# Point Codex at your OTel collector
export OTEL_EXPORTER_OTLP_ENDPOINT="https://otel-collector.internal:4318"
export OTEL_SERVICE_NAME="codex-cli"
export OTEL_RESOURCE_ATTRIBUTES="team=platform,env=production"
# Launch Codex — trace context propagates to all OpenAI API calls
codex
- 標準
OTEL_*環境變數均受支援(端點、服務名稱、資源屬性) - 追蹤上下文從 Codex 傳播至 API 呼叫,實現端到端可觀測性
- 使用資源屬性依團隊、環境或專案標記追蹤
- 啟用提示詞/工具記錄時請留意隱私需求——追蹤可能包含程式碼片段
企業存取
- ChatGPT Business / Enterprise / Edu:由組織管理員控制存取,雲端擷取的需求自動套用。透過您的身分識別提供者(Okta、Entra ID 等)支援 SAML/OIDC 單一登入
- API:標準 API 驗證、計費及組織/專案控制。OpenAI 發布 SOC 2 Type II 與 SOC 3 報告;Enterprise 層級可簽署 HIPAA BAA
- Codex SDK:嵌入內部工具與工作流程
- 大規模政策執行:使用 MDM 分發的
requirements_toml_base64或檔案系統層級的/etc/codex/requirements.toml
資料處理與合規: - 根據 OpenAI 的 Business/Enterprise/API 條款,API 的輸入/輸出不會用於模型訓練 - 關於資料落地,OpenAI API 流量預設透過美國基礎設施路由;若有歐盟資料落地需求,請洽 OpenAI 企業銷售團隊 - 對話記錄儲存於本機;僅 API 呼叫會離開裝置 - ChatGPT Enterprise 支援的合規框架包括 SOC 2、GDPR 與 CCPA
推行策略
建議組織採用分階段推行:
- 試行期(第 1-2 週):部署給 3-5 位資深工程師,以
requirements.toml強制使用untrusted沙箱模式與cached網頁搜尋。收集關於 AGENTS.md 模式與 MCP 伺服器需求的回饋。 - 團隊擴展(第 3-4 週):推行至整個團隊。透過 MDM 或版本庫分發團隊標準
config.toml。對受信任的版本庫啟用workspace-write沙箱。 - CI 整合(第 5-6 週):將
codex-action加入 CI/CD 流水線,自動化 PR 審查與測試產生。使用--ephemeral控制成本。 - 全組織推行(第 2 個月起):透過 MDM 部署,以
requirements.toml強制核准的 MCP 伺服器、沙箱政策與模型白名單。
稽核模式
追蹤 Codex 使用狀況並確保合規:
- OpenTelemetry 追蹤:監控各團隊的 API 呼叫量、Token 使用量與延遲
- 工作階段持久化:稽核
~/.codex/sessions/以進行合規審查(在敏感情境下使用--ephemeral停用) - MCP 身分驗證強制:
requirements.toml記錄被封鎖的伺服器嘗試——審查是否有未授權的工具使用 - Git 稽核軌跡:所有 Codex 的檔案變更皆經由標準 git 流程——透過分支歷史與 PR 差異進行審查
最佳實踐與反模式
提示詞模式
- 限制條件導向的提示詞:以邊界條件開頭。「請勿更改API合約。僅重構內部實作。」
- 結構化重現步驟:編號步驟比含糊描述更能產出高品質的錯誤修復
- 驗證請求:結尾加上「執行 lint 和最小相關測試套件,回報指令與結果。」
- 檔案參照:使用
@filename將特定檔案附加至上下文 - 結果導向迴圈:「實作、執行測試、修復失敗、只有在所有測試通過後才停止。」Codex 會持續迭代直到完成
測試理念
社群在測試驅動的 AI 協作方式上已形成共識:23
- 預先定義測試作為完成訊號
- 讓 Codex 持續迭代直到測試通過(紅燈 → 綠燈 → 重構)
- 採用 Tiger Style 程式設計模式
- 請求修補時提供確切的檔案內容。Codex 使用嚴格比對,而非模糊的 AST 修補方式
上下文管理最佳實踐
- 提供高品質的本地文件,而非仰賴網路搜尋
- 維護結構化的 Markdown 文件,包含目錄和進度檔案(「漸進式揭露」)
- 統一追蹤檔案的換行符號(LF 與 CRLF),以避免修補失敗
- 保持
AGENTS.md簡潔,過長的指示會被推出上下文範圍
Git 工作流程
- 在不熟悉的儲存庫上執行 Codex 前,務必先建立新分支
- 使用基於修補的工作流程(
git diff/git apply),而非直接編輯 - 像審查 PR 一樣審查 Codex 的建議
- 提交前使用
/diff驗證變更
社群技能與提示詞
feiskyer/codex-settings 儲存庫提供社群維護的設定檔:24
可重複使用的提示詞(位於 ~/.codex/prompts/):
- deep-reflector:從開發過程中萃取經驗教訓
- github-issue-fixer [issue-number]:系統化的錯誤分析與 PR 建立
- github-pr-reviewer [pr-number]:程式碼審查工作流程
- ui-engineer [requirements]:產品級前端開發
社群技能:
- claude-skill:透過權限模式將任務交接給 Claude Code
- autonomous-skill:多工作階段任務自動化,附帶進度追蹤
- deep-research:平行子任務協調
- kiro-skill:需求 → 設計 → 任務 → 執行流水線
反模式
以下是常見的錯誤做法,會浪費 token、產出低品質結果,或造成令人挫折的工作流程。
成本反模式
| 反模式 | 失敗原因 | 修正方式 |
|---|---|---|
所有任務都使用 xhigh 推理 |
簡單任務的 token 成本增加 3-5 倍,收益遞減 | 預設使用 medium;僅在多檔案架構決策時使用 xhigh |
從不使用 /compact |
上下文填滿至 272K,回應品質下降 | 每完成重要里程碑後執行壓縮,或當 /status 顯示使用量超過 60% 時執行 |
| 在 CI 中使用旗艦模型 | 例行檢查成本過高 | 建立 ci 設定檔,使用 gpt-5.1-codex-mini 和 low 推理等級 |
上下文反模式
| 反模式 | 失敗原因 | 修正方式 |
|---|---|---|
| 開放式的「探索所有內容」提示詞 | Codex 會讀取數十個檔案,在無關程式碼上消耗上下文 | 指定具體檔案來限縮範圍:「審查 src/auth/login.py 和 tests/test_auth.py」 |
專案中沒有 AGENTS.md |
Codex 浪費回合探索專案結構 | 新增一份 20 行的 AGENTS.md,包含關鍵路徑、慣例和測試指令 |
| 附加整個目錄 | 無關檔案灌滿上下文 | 使用 @filename 僅附加 Codex 所需的檔案 |
工作流程反模式
| 反模式 | 失敗原因 | 修正方式 |
|---|---|---|
直接在 main 上作業 |
沒有安全網;高風險編輯難以還原 | 啟動 Codex 前務必建立功能分支 |
提交前跳過 /diff |
Codex 可能做了非預期的變更 | 每次任務完成後、提交前都審查 /diff |
| 忽略測試輸出 | 若不主動標記失敗,Codex 會跳過錯誤繼續迭代 | 在提示詞中加入「執行測試,只有在全部通過後才停止」 |
| 從不分叉對話 | 一次錯誤的方向會污染整個上下文 | 探索高風險方向前使用 /fork;捨棄不良分支 |
提示詞反模式
| 反模式 | 失敗原因 | 修正方式 |
|---|---|---|
| 「修復那個 bug」(無上下文) | Codex 猜測是哪個 bug,讀取所有內容 | 「修復 src/api/handler.py:42 中的 TypeError — 未驗證時 user.name 為 None」 |
| 單則訊息中包含多個任務 | Codex 混淆任務,遺漏部分內容 | 每則訊息一個任務;使用引導模式(Tab)排隊後續任務 |
| 每則訊息重複提供上下文 | 在重複資訊上浪費 token | 使用 /m_update 儲存持久性資訊;引用先前的上下文 |
工作流程範例
常見開發情境的端對端模式。
範例 1:新專案建置
mkdir my-app && cd my-app && git init
codex
> Create a FastAPI project with: main.py, requirements.txt, Dockerfile,
basic health endpoint, and a README. Use async throughout.
> /init
審查產生的 AGENTS.md,依照您的慣例進行編輯,然後:
> Run the health endpoint test and confirm it passes
範例 2:日常開發流程
cd ~/project && git checkout -b feature/user-auth
codex
> @src/models/user.py @src/api/auth.py
Add password reset functionality. Requirements:
1. POST /api/auth/reset-request (email → sends token)
2. POST /api/auth/reset-confirm (token + new password)
3. Tests for both endpoints
Run tests when done.
使用 /diff 審查後提交。
範例 3:使用計畫模式進行複雜重構
codex
> /plan Migrate the database layer from raw SQL to SQLAlchemy ORM.
Constraints: don't change any API contracts, keep all existing tests passing.
審查計畫,核准或引導:
[Tab] Also add a migration script using Alembic
Codex 執行完畢後進行驗證:
> Run the full test suite and report results
> /diff
範例 4:使用 codex exec 進行 PR 審查
codex exec --model gpt-5.1-codex-mini \
"Review the changes in this branch against main. \
Flag security issues, missed edge cases, and style violations. \
Format as a markdown checklist." \
-o review.md
範例 5:使用雲端任務進行除錯 [EXPERIMENTAL]
codex cloud exec --env my-env "Diagnose why the /api/orders endpoint returns 500 \
for orders with > 100 line items. Check the serializer, database query, \
and pagination logic. Propose a fix with tests."
稍後查看進度:
codex cloud status <TASK_ID>
codex cloud diff <TASK_ID>
完成後將修復套用至本地:
codex apply <TASK_ID>
遷移指南
從 Claude Code 遷移
| Claude Code 概念 | Codex 對應功能 |
|---|---|
CLAUDE.md |
AGENTS.md(開放標準) |
.claude/settings.json |
.codex/config.toml(TOML 格式) |
--print 旗標 |
codex exec 子命令 |
--dangerously-skip-permissions |
--dangerously-bypass-approvals-and-sandbox |
| Hooks(12+ 種事件) | Hooks(SessionStart、Stop、UserPromptSubmit、AfterAgent、AfterToolUse;v0.99.0–v0.116.0) |
| 子代理(Task 工具) | Sub-agents(內部使用,最多 6 個;無對應的使用者端 Task 工具) |
/compact |
/compact(完全相同) |
/cost |
/status(顯示 token 用量) |
| 模型:Opus/Sonnet/Haiku | 模型:gpt-5.3-codex / gpt-5.3-codex-spark / gpt-5.2-codex / gpt-5.1-codex-mini(Codex 專用 OpenAI 的 GPT-5.x 模型系列) |
claude --resume |
codex resume |
| 權限規則 | Sandbox 模式 + 核准策略 |
| MCP 設定於 settings.json | MCP 設定於 config.toml |
需要理解的關鍵差異:
- Sandbox 為作業系統層級:Codex 使用 Seatbelt/Landlock,而非容器。限制在核心層級運作,位於應用程式層之下。
- Hooks 持續擴展中:Codex 目前支援 5 種 hook 事件:
SessionStart、Stop和UserPromptSubmit(v0.114.0–v0.116.0,實驗性)以及AfterAgent(v0.99.0)和AfterToolUse(v0.100.0)。系統涵蓋工作階段生命週期、提示攔截及工具層級自動化,但 Claude Code 的 12+ 種生命週期事件仍提供更廣泛的覆蓋範圍。若需尚未支援的自動化模式,可透過 AGENTS.md 指令或 skills 實現。 - Sub-agents v2(v0.117.0):Sub-agents 現在使用路徑式定址(例如
/root/agent_a),支援結構化的代理間訊息傳遞及代理列表。77 這延伸了既有機制(最多 6 個並行,從 v0.91.0 的 12 個縮減)。多代理角色仍可透過設定自訂(v0.104.0+)。49 v0.105.0 新增spawn_agents_on_csv,可依 CSV 列扇出執行,並提供進度追蹤與預估完成時間。63 Codex 目前仍缺少 Claude Code 明確的 Task 工具使用者介面來進行使用者導向的委派——可使用雲端任務或 SDK 編排來實現委派模式。 - AGENTS.md 跨工具通用:您的 AGENTS.md 可在 Cursor、Copilot、Amp、Jules、Gemini CLI 及 60,000+ 個開源專案中使用。CLAUDE.md 僅限 Claude。
- 設定檔取代手動切換:無需每次執行時更改旗標,只要在 config.toml 中定義設定檔即可。
從 GitHub Copilot 遷移
| Copilot 概念 | Codex 對應功能 |
|---|---|
| Copilot CLI(代理式終端機) | 互動式 CLI 或桌面應用程式 |
| 專用代理(Explore、Plan) | Skills + 計畫模式 + 引導模式 |
copilot-instructions.md / AGENTS.md |
AGENTS.md(相同標準) |
| MCP 支援 | MCP 支援(STDIO + HTTP) |
| ACP(Agent Client Protocol) | Hooks(AfterAgent、AfterToolUse) |
| Copilot SDK | Codex SDK(TypeScript) |
| 程式碼代理工作流程 | Codex 代理搭配 sandbox/核准控制 + 雲端任務 |
遷移後的優勢:
- 作業系統層級沙箱(Seatbelt/Landlock——核心層級強制執行,有別於容器式方案)
- 透過 codex apply 進行雲端任務委派
- 設定檔讓工作流程切換一鍵完成
- 桌面應用程式支援 worktree 隔離
從 Cursor 遷移
| Cursor 概念 | Codex 對應功能 |
|---|---|
專案規則(.cursor/rules)/ AGENTS.md |
AGENTS.md + 設定檔/組態 |
| 代理對話/組合工作流程 | 互動式 CLI 或桌面應用程式 |
@ 檔案參照 |
@ 檔案參照(完全相同) |
| 套用/編輯 + 審查 | 內建修補與差異審查 |
快速參考卡
╔═══════════════════════════════════════════════════════════════╗
║ CODEX CLI QUICK REFERENCE ║
╠═══════════════════════════════════════════════════════════════╣
║ ║
║ LAUNCH ║
║ codex Interactive TUI ║
║ codex "prompt" TUI with initial prompt ║
║ codex exec "prompt" Non-interactive mode ║
║ codex app Desktop app ║
║ codex resume Resume previous session ║
║ codex fork Fork a session ║
║ ║
║ FLAGS ║
║ -m, --model <model> Select model ║
║ -p, --profile <name> Load config profile ║
║ -s, --sandbox <mode> Sandbox mode ║
║ -C, --cd <dir> Working directory ║
║ -i, --image <file> Attach image(s) ║
║ -c, --config <key=value> Override config ║
║ --full-auto workspace-write + on-request ║
║ --oss Use local models (Ollama) ║
║ --search Enable live web search ║
║ ║
║ SLASH COMMANDS (in TUI) ║
║ /compact Free tokens /diff Git diff ║
║ /review Code review /plan Plan mode ║
║ /model Switch model /status Session info ║
║ /fork Fork thread /init AGENTS.md scaffold ║
║ /mcp MCP tools /skills Invoke skills ║
║ /ps Background /personality Style ║
║ /permissions Approval mode /statusline Footer config ║
║ /fast Toggle fast mode (default: on) ║
║ /copy Copy last response to clipboard ║
║ /clear Clear screen /theme Syntax highlighting ║
║ /experimental Toggle experimental features (js_repl) ║
║ ║
║ TUI SHORTCUTS ║
║ @ Fuzzy file search ║
║ !command Run shell command ║
║ Ctrl+G External editor ║
║ Ctrl+L Clear screen ║
║ Enter Inject instructions (while running) ║
║ Esc Esc Edit previous messages ║
║ ║
║ EXEC MODE (CI/CD) ║
║ codex exec --full-auto "task" Sandboxed auto ║
║ codex exec --json -o out.txt "task" JSON + file output ║
║ codex exec --output-schema s.json Structured output ║
║ codex exec resume --last "continue" Resume session ║
║ ║
║ MCP MANAGEMENT [EXPERIMENTAL] ║
║ codex mcp add <name> -- <cmd> Add STDIO server ║
║ codex mcp add <name> --url <u> Add HTTP server ║
║ codex mcp list List servers ║
║ codex mcp login <name> OAuth flow ║
║ codex mcp remove <name> Delete server ║
║ ║
║ PLUGINS ║
║ codex plugin list List installed plugins ║
║ codex plugin install <name> Install from marketplace ║
║ ║
║ CLOUD [EXPERIMENTAL] ║
║ codex cloud exec --env <ID> Start cloud task ║
║ codex cloud status <ID> Check task progress ║
║ codex cloud diff <ID> View task diff ║
║ codex cloud list List tasks ║
║ codex apply <TASK_ID> Apply cloud diff locally ║
║ ║
║ CONFIG FILES ║
║ ~/.codex/config.toml User config ║
║ .codex/config.toml Project config ║
║ ~/.codex/AGENTS.md Global instructions ║
║ AGENTS.md Project instructions ║
║ requirements.toml Enterprise policy constraints ║
║ ║
║ SANDBOX MODES ║
║ read-only Read files only, no mutations ║
║ workspace-write Read/write in workspace + /tmp ║
║ danger-full-access Full machine access ║
║ ║
║ APPROVAL POLICIES ║
║ untrusted Prompt for all mutations ║
║ on-failure Auto-run until failure ║
║ on-request Prompt for boundary violations ║
║ never No prompts ║
║ ║
║ MODELS (March 2026, v0.118.0) ║
║ gpt-5.4 Recommended flagship (1M context) ║
║ gpt-5.4-mini Subagent work, 2x faster (400K) ║
║ gpt-5.3-codex Coding specialist (272K in / 400K) ║
║ gpt-5.3-codex-spark Interactive, lower latency (128K) ║
║ gpt-5.2-codex Long-horizon refactors (272K / 400K) ║
║ gpt-5.1-codex-mini Quick tasks, cost-efficient (272K/400K)║
║ ║
╚═══════════════════════════════════════════════════════════════╝
更新日誌
| 日期 | 版本 | 變更內容 | 來源 |
|---|---|---|---|
| 2026-04-01 | Guide v2.17 | 更新至 CLI v0.118.0:Windows 純代理沙箱網路(作業系統層級出口規則)、ChatGPT 裝置碼認證流程、codex exec 提示加標準輸入、自訂供應商動態 bearer token 重新整理。首次建立時的 .codex 檔案保護。Linux bwrap PATH 探索修正。TUI app-server 迴歸修正(hook 重播、/copy、/resume <name>、/agent、skills 選擇器捲動)。MCP 啟動穩健性改善(更長的啟動視窗、警告顯示)。Windows apply_patch ACL 修正。新增 GPT-5.4 mini 至模型表(400K 上下文、GPT-5.4 配額的 30%、速度提升 2 倍)。新增 Codex Security 章節(研究預覽、上下文感知漏洞偵測)。 |
80 78 79 |
| 2026-03-31 | CLI 0.118.0 | Windows 純代理沙箱網路(透過作業系統層級出口規則)、ChatGPT 裝置碼認證流程(app-server 用戶端)、codex exec 提示加標準輸入工作流程(管線輸入 + 獨立提示)、自訂模型供應商動態 bearer token 取得/重新整理。修正:首次建立時 .codex 檔案保護、Linux bwrap PATH 探索、TUI app-server 迴歸(hook 通知重播、/copy、/resume <name>、/agent 執行緒、skills 選擇器捲動)、MCP 啟動穩健性(更長的啟動視窗、失敗警告)、Windows apply_patch 多餘 writable-root ACL 異動。 |
80 |
| 2026-03-17 | – | GPT-5.4 mini 發布:400K 上下文、每百萬 token $0.75/$4.50、GPT-5.4 配額的 30%、速度提升 2 倍。可於 Codex 應用程式、CLI、IDE 擴充套件及網頁版使用。適合子代理/平行子任務委派。 | 78 |
| 2026-03-06 | – | Codex Security 研究預覽:針對 Pro/Enterprise/Business/Edu 使用者的上下文感知應用程式安全審查(透過 Codex 網頁版)。已掃描 120 萬次提交、發現 10,561 個高嚴重性問題、在 OpenSSH/GnuTLS/Chromium 中指派 14 個 CVE。 | 79 |
| 2026-03-30 | Guide v2.16 | 更新至 CLI v0.117.0:正式外掛(產品範圍啟動同步、/plugins 瀏覽器、安裝/移除)、子代理 v2(路徑式位址、結構化代理間訊息傳遞、代理列表)、/title 終端標題選擇器、app-server TUI 預設啟用(! shell 指令、檔案系統監看、bearer 認證遠端 WebSocket、跨工作階段提示歷史回溯)、影像工作流程改善(view_image 回傳 URL、產生的影像可重新開啟、歷史在恢復後保留)、移除舊版 artifact 工具(read_file 與 grep_files 退役)、舊版 Linux 發行版沙箱改善、Windows 受限 token 沙箱改善。 |
77 |
| 2026-03-28 | CLI 0.117.0 | 正式外掛支援(產品範圍啟動同步與 /plugins TUI 瀏覽器)。子代理 v2:路徑式位址(/root/agent_a)、結構化代理間訊息傳遞、代理列表。/title 終端標題選擇器(TUI 與 app-server TUI)。App-server 用戶端:! shell 指令、檔案系統監看、bearer 認證遠端 WebSocket。影像工作流程:view_image 回傳 URL、產生的影像可重新開啟、歷史在恢復後保留。App-server TUI 跨工作階段提示歷史回溯。App-server TUI 預設啟用。移除舊版 artifact 工具;舊 read_file 與 grep_files 退役。舊版 Linux 發行版沙箱改善。Windows 受限 token 沙箱改善。 |
77 |
| 2026-03-21 | Guide v2.15 | 更新至 CLI v0.116.0:UserPromptSubmit hook 事件(共 5 個)、app-server TUI 中 ChatGPT 裝置碼認證、更流暢的外掛安裝(建議允許清單與遠端同步)、即時工作階段以近期執行緒上下文啟動、減少音訊自我中斷。修正:WebSocket 首次回合延遲、遠端恢復/分支的對話歷史、符號連結簽出/AppArmor 上的 Linux 沙箱、代理工作完成競爭條件。 |
76 |
| 2026-03-19 | CLI 0.116.0 | UserPromptSubmit hook(在執行前攔截/擴充提示)、TUI 中 ChatGPT 裝置碼認證、允許清單/遠端同步的更流暢外掛設定、近期執行緒上下文的即時工作階段、減少音訊自我中斷。修正:WebSocket 預熱首次回合當機、遠端恢復/分支的對話歷史、符號連結簽出/AppArmor 上的 Linux 沙箱啟動、代理工作完成競爭條件。合併 77 個 PR。 |
76 |
| 2026-03-18 | Guide v2.14 | 更新至 CLI v0.115.0:透過 view_image 與 codex.emitImage 進行全解析度影像檢視、js_repl 公開 codex.cwd/codex.homeDir、即時 WebSocket 轉錄模式、app-server v2 檔案系統 RPC、含守護子代理的智慧審核(approvals_reviewer = "guardian_subagent")、Responses API tool-search。錯誤修正:子代理沙箱繼承、js_repl U+2028/U+2029 當機、TUI 退出停滯、codex exec --profile 設定檔設定保留、MCP/引導流程改善、HTTP/1 CONNECT 代理。 |
75 |
| 2026-03-16 | CLI 0.115.0 | 透過 view_image 與 codex.emitImage(..., detail: "original") 進行全解析度影像檢視、js_repl 公開 codex.cwd 與 codex.homeDir(含持久工具參照)、即時 WebSocket 工作階段(轉錄模式與 v2 交接)、app-server v2 檔案系統 RPC(讀取/寫入/複製/目錄操作/路徑監看)、智慧審核透過守護子代理路由、應用程式整合使用 Responses API tool-search(含備援)。修正:衍生子代理更可靠地繼承沙箱/網路規則、js_repl 不再因 U+2028/U+2029 當機、TUI 退出停滯已解決、codex exec --profile 保留設定檔設定、MCP/引導流程改善、本機網路代理以 HTTP/1 提供 CONNECT。 |
75 |
| 2026-03-13 | Guide v2.13 | App v26.312:可自訂主題(顏色 + 字型)、改版自動化(本機/worktree 執行及每次執行推理層級)。新增 winget 安裝方式。新增 GPT-5.1 棄用說明(3月11日 — 從 ChatGPT 移除,自動遷移至 GPT-5.3/5.4)。 | 73 74 |
| 2026-03-12 | App v26.312 | 可自訂主題(設定中的顏色控制與字型選擇)、改版自動化介面(本機或 worktree 執行模式與自訂推理層級)、效能改善。 | 74 |
| 2026-03-11 | Guide v2.12 | 更新至 CLI v0.114.0:實驗性 hooks 引擎(SessionStart、Stop 事件)、實驗性程式碼模式、健康檢查端點、停用系統 skills 設定、交接轉錄上下文、增強 $ 提及選擇器。更新 Hooks 章節(4 個事件)。修正 Windows Desktop App 章節(已正式發布)。更新快速參考卡模型至 2026 年 3 月。 | 72 |
| 2026-03-11 | CLI 0.114.0 | 用於隔離程式碼工作流程的實驗性程式碼模式、含 SessionStart 與 Stop 事件的實驗性 hooks 引擎、WebSocket app-server 健康檢查端點(/readyz、/healthz)、停用內建系統 skills 的設定開關、交接攜帶即時轉錄上下文、增強 $ 提及選擇器(含 skill/app/plugin 標籤)。錯誤修正:Linux tmux 當機、重新開啟的執行緒卡在執行中、舊版權限處理、審核流程持久化。 | 72 |
| 2026-03-10 | Guide v2.11 | 更新至 CLI v0.113.0:@plugin 提及(v0.112.0)、request_permissions 工具、權限設定檔組態語言、外掛市集擴充(v0.113.0)。新增 @plugin 提及、外掛市集、執行時期權限請求及權限設定檔組態語言章節。 | 70 71 |
| 2026-03-10 | CLI 0.113.0 | 內建 request_permissions 工具(執行時期權限請求)、外掛市集探索(更豐富的中繼資料/安裝時認證檢查/解除安裝端點)、app-server 串流 stdin/stdout/stderr(含 TTY/PTY 支援)、權限設定檔組態語言(分離檔案系統/網路沙箱政策)、影像產生儲存至 CWD、完整工具設定的網頁搜尋設定、強化網路代理政策(拒絕全域萬用字元網域) | 71 |
| 2026-03-08 | CLI 0.112.0 | @plugin 提及(在聊天中參照外掛並自動包含上下文)、TUI 選擇器新增模型選擇介面、可執行權限設定檔合併至每回合沙箱政策(用於 zsh-fork skill 執行)、JS REPL 狀態處理修正(失敗 cell 後綁定持久化)、app-server websocket 關閉時 SIGTERM 視同 Ctrl-C、Linux bubblewrap 一律取消共享使用者命名空間、macOS 沙箱網路/unix-socket 處理改善 | 70 |
| 2026-03-06 | Guide v2.10 | 更新至 CLI v0.111.0:GPT-5.4 為建議模型(1M 上下文)、快速模式預設、外掛系統(v0.110.0)、js_repl 動態匯入、持久 /fast 切換、Windows 安裝程式。Codex App for Windows(v26.304)。透過 Cerebras 合作推出 GPT-5.3-Codex-Spark。更新模型表、流程圖、設定檔。新增外掛章節。 | 66 67 68 69 |
| 2026-03-05 | CLI 0.111.0 | 快速模式預設、js_repl 本機檔案動態匯入、工作階段啟動時外掛探索、影像工作流程支援、執行緒恢復保留 git 上下文 | 67 |
| 2026-03-05 | – | GPT-5.4 發布:旗艦前沿模型、1M 上下文、原生電腦操作、可於所有 Codex 介面使用 | 66 |
| 2026-03-05 | CLI 0.110.0 | skills/MCP/應用程式連接器的外掛系統、多代理審核提示、持久 /fast 切換、工作區範圍記憶寫入、Windows 安裝腳本 | 67 |
| 2026-03-04 | App v26.304 | Codex App for Windows:原生 PowerShell 支援、原生沙箱、skills/自動化/worktrees 無需 WSL | 68 |
| 2026-03-03 | App v26.303 | Worktree 自動清理切換、本機至 Worktree 交接支援、明確英文語言選項 | 68 |
| 2026-03-02 | Guide v2.9 | 更新至 CLI v0.107.0:執行緒分支為子代理、即時語音裝置選擇、透過 codex debug clear-memories 設定記憶、多模態自訂工具輸出。新增 App v26.226:composer 中的 MCP 快捷鍵、審查評論中的 @mentions。 |
64 65 |
| 2026-03-02 | CLI 0.107.0 | 執行緒分支為子代理、含麥克風/喇叭裝置選擇的即時語音工作階段、自訂工具多模態輸出、可設定記憶 + codex debug clear-memories、錯誤修正 |
64 |
| 2026-02-28 | Guide v2.8 | 更新至 CLI v0.106.0:新增直接安裝腳本、zsh-fork 沙箱繞過修正、約 1M 字元輸入上限、Linux /dev 檔案系統、彈性審核控制、JS REPL 升級至 /experimental(需 Node 22.22.0+)、差異式記憶遺忘、TUI 語法高亮 + /theme、/copy、/clear、Ctrl-L、語音轉錄、spawn_agents_on_csv、Default 模式下的 request_user_input。新增 v0.105.0 與 v0.106.0 更新日誌條目。 | 62 63 |
| 2026-02-26 | CLI 0.106.0 | 直接安裝腳本、js_repl 升級至 /experimental(最低需 Node 22.22.0)、Default 模式下的 request_user_input、CLI 模型列表中對 API 使用者顯示 5.3-codex、差異式記憶遺忘(含用量感知選擇)、zsh-fork 沙箱繞過修正、約 1M 字元輸入上限、改善 TUI 檔案連結呈現、子代理 Ctrl-C 處理修正 | 62 |
| 2026-02-25 | CLI 0.105.0 | TUI 語法高亮程式碼區塊與差異(含 /theme 選擇器)、語音轉錄(空白鍵聽寫,實驗性)、spawn_agents_on_csv 多代理扇出(含進度/預估時間)、/copy /clear Ctrl-L 指令、彈性審核控制(額外沙箱權限、細粒度拒絕)、可點擊換行連結、沙箱指令的 Linux /dev 檔案系統、js_repl 錯誤回報改善 | 63 |
| 2026-02-24 | Guide v2.7 | 擴充存取/定價章節:新增 Free/Go 推廣方案、付費方案 2 倍速率限制、各方案使用限制(5 小時視窗)、信用額度成本表。新增 allow_login_shell 設定鍵。 |
53 |
| 2026-02-22 | Guide v2.6 | 新增遺漏的設定鍵:features.multi_agent、features.apply_patch_freeform、features.search_tool、agents.*(多代理角色)、model_context_window、model_auto_compact_token_limit、mcp_oauth_callback_port、mcp_oauth_credentials_store、notify。新增 App v26.217 更新日誌條目。 |
52 |
| 2026-02-19 | Guide v2.5 | 更新版本參照至 CLI 0.104.0、新增 v0.103.0 與 v0.104.0 更新日誌條目、新增 WS_PROXY/WSS_PROXY 代理支援、獨立審核 ID、提交共同作者歸屬、以 command_attribution 取代已移除的 remote_models 功能旗標。 |
— |
| 2026-02-18 | CLI 0.104.0 | WS_PROXY/WSS_PROXY WebSocket 代理支援、多步驟指令的獨立審核 ID、執行緒封存/解封通知 | 51 |
| 2026-02-17 | App v26.217 | 拖放重新排序佇列訊息、模型降級警告、改善模糊檔案搜尋(重新啟動後附件復原) | 52 |
| 2026-02-17 | CLI 0.103.0 | 透過 prepare-commit-msg hook 的提交共同作者歸屬(可透過 command_attribution 設定)、更豐富的應用程式列表中繼資料/品牌呈現、移除 remote_models 功能旗標 |
50 |
| 2026-02-17 | Guide v2.4 | 更新所有版本參照至 CLI 0.102.0、新增 v0.102.0 更新日誌條目與註腳、更新子代理說明(含可設定多代理角色)。 | — |
| 2026-02-17 | CLI 0.102.0 | 統一權限流程、結構化網路審核、可自訂多代理角色、模型重新路由通知、js_repl 穩定性修正 | 49 |
| 2026-02-16 | Guide v2.3 | 修正遷移表:hooks 已存在(v0.99.0+)、子代理已確認(最多 6 個)、模型列表完整。新增專屬 Hooks 章節(AfterAgent、AfterToolUse、遷移模式)。修正配方 5 虛構指令(cloud start→cloud exec、cloud pull→apply)。修正 codex auth→codex login。Windows 沙箱從實驗性升級。Linux Bubblewrap 現為內建/打包。新增 minimal 推理努力層級。擴充記憶章節(v0.101.0 改進、記憶與 AGENTS.md 對照)。更新 AGENTS.md 採用者列表(60,000+ 專案、Linux Foundation 治理)。更新 Copilot 遷移表。修正 [EXPERIMENTAL] 大小寫一致性。新增 ReadOnlyAccess 政策文件、JS REPL 執行環境章節、正式環境 Deploy skill 範例、擴充成本章節(隱藏 token 開銷、團隊成本管理)。為 20 個未標記程式碼區塊加上標籤。驗證全部 30 個目錄錨點。後續評估修正:/permissions 術語修正(approval mode→approval policy)、重複「Project Trust」標題重新命名、chat/completions 棄用語言調整、OpenTelemetry 章節擴充(含設定範例)、遷移「harder to escape」用語更精確。 |
審議稽核 |
| 2026-02-16 | Guide v2.2 | 新增 19 個歷史 CLI 里程碑版本(v0.2.0–v0.91.0)至更新日誌。以 20 個獨立發布註腳(37–61)取代批次 25 引用。新增 61 Apache 2.0 授權引用。新增 5 引用至 codex-linux-sandbox 參照。新增 22 引用至 MDM 偏好設定網域。更新 6 Seatbelt 說明(關於機器人封鎖)。新增不可驗證 OpenAI 部落格 URL 說明。總註腳:56(原為 36)。 | 審議稽核 |
| 2026-02-15 | Guide v2.1 | 企業章節修正(managed-admin-config.toml → requirements.toml,含已驗證 TOML 鍵)、272K 上下文限定為輸入視窗(含引用)、新增 6 Seatbelt 引用 URL、新增重點摘要區塊、修正風格違規、精簡 meta description、擴充 AGENTS.md 採用者列表。 | 部落格評估稽核 |
| 2026-02-14 | Guide v2 | 重大修訂:經 Codex 驗證的模型修正(272K 上下文)、設定鍵、功能旗標、定價、企業設定、CI/CD action、SDK API、MCP 選項、codex exec 旗標、桌面應用程式功能、遷移比較。移除不可驗證的聲明。 | 自我審查 |
| 2026-02-12 | CLI 0.101.0 | 模型解析改善、記憶改進、穩定性 | 37 |
| 2026-02-12 | CLI 0.100.0 | 實驗性 JS REPL、多重速率限制、WebSocket 傳輸、記憶指令、增強沙箱 | 38 |
| 2026-02-12 | App v260212 | 對話分支、浮動彈出視窗、Windows alpha 版 | 18 |
| 2026-02-12 | – | GPT-5.3-Codex-Spark 發布(低延遲互動式變體) | 26 |
| 2026-02-11 | CLI 0.99.0 | 並行 shell 指令、/statusline、可排序恢復選擇器、GIF/WebP 支援、shell 快照 |
39 |
| 2026-02-06 | CLI 0.98.0 | GPT-5.3-Codex 支援、steer 模式穩定並設為預設、模型切換修正 | 40 |
| 2026-02-06 | CLI 0.97.0 | 「允許並記住」MCP 審核、即時 skill 偵測、/config 診斷、記憶管線 |
41 |
| 2026-02-06 | CLI 0.96.0 | 非同步執行緒/壓縮 v2、WebSocket 速率限制、非 Windows unified_exec、設定來源 | 42 |
| 2026-02-06 | CLI 0.95.0 | codex app 指令、個人 skills、平行 shell 工具、git 強化 |
43 |
| 2026-02-05 | – | GPT-5.3-Codex 發布 — 統一模型、速度提升 25%、端到端電腦操作 | 27 |
| 2026-02-02 | – | Codex Desktop App 發布(macOS)— 多工處理、worktrees、自動化 | 17 |
| 2026-01-30 | CLI 0.94.0 | 計畫模式預設、個性化穩定、來自 .agents/skills 的 skills、執行時期指標 |
44 |
| 2026-01-29 | CLI 0.93.0 | SOCKS5 代理、計畫模式串流、/apps、智慧審核預設、SQLite 日誌 |
45 |
| 2026-01-29 | CLI 0.92.0 | API v2 執行緒、執行緒篩選、MCP OAuth 範圍、多代理協作 | 46 |
| 2026-01-25 | CLI 0.91.0 | 將最大子代理數從 12 降至 6,以強化資源控管 | 47 |
| 2026-01-21 | CLI 0.88.0 | 裝置碼認證備援、協作模式、/fork、遠端模型、model_personality 設定 |
48 |
| 2026-01-06 | CLI 0.78.0 | Ctrl+G 外部編輯器、專案感知設定分層、macOS MDM 設定、TUI2 轉錄導覽、.dmg 安裝程式 |
54 |
| 2025-12-18 | – | GPT-5.2-Codex 發布 — 上下文壓縮、重構/遷移、資訊安全 | 28 |
| 2025-12-09 | CLI 0.66.0 | 執行政策系統(TUI 白名單、沙箱拒絕修訂)、CRLF 保留、Linux Sigstore 簽章 | 55 |
| 2025-11-19 | – | GPT-5.1-Codex-Max — 多視窗壓縮、Windows 訓練、減少 30% 思考 token | 29 |
| 2025-11-19 | CLI 0.59.0 | 原生壓縮、工具輸出上限提升至 10K token、Windows Agent 模式沙箱、/status 中的信用額度 |
56 |
| 2025-10-25 | CLI 0.50.0 | /feedback 診斷、沙箱違規風險評估、MCP 啟動改善、環境變數遮蔽 |
57 |
| 2025-10-06 | – | Codex 於 DevDay 正式發布 — Slack 整合、SDK、管理工具 | 30 |
| 2025-10-06 | CLI 0.45.0 | 重大變更:codex login --api-key → --with-api-key(stdin)。OAuth MCP 認證、平行工具呼叫、脈動圓點 UI |
58 |
| 2025-09-23 | – | GPT-5-Codex + IDE 擴充套件 + CLI 改版 — 影像、網頁搜尋、程式碼審查 | 31 |
| 2025-09-23 | CLI 0.40.0 | 預設模型改為 gpt-5-codex、220K token 自動壓縮、/review 指令、git 復原、Windows 二進位檔支援 |
59 |
| 2025-06-30 | CLI 0.2.0 | 首個 Rust 二進位發布 — macOS(aarch64/x86_64)與 Linux(gnu/musl)預建二進位檔、codex-exec 與 codex-linux-sandbox 工具 |
60 |
| 2025-06 | – | Rust 改寫宣布(「Codex CLI is Going Native」) | 32 |
| 2025-06-03 | – | Plus 使用者擴展、雲端網路存取、PR 更新、語音聽寫 | 33 |
| 2025-05-16 | – | Codex Cloud 發布 — 搭載 codex-1 模型的雲端代理、GitHub PR 建立 | 34 |
| 2025-04-16 | – | Codex CLI 開源發布(Apache 2.0、TypeScript、codex-mini-latest)61 | 1 |
參考資料
關於 OpenAI 部落格 URL 的說明:參考資料 17、26–31、34、66、68、69、78 與 79 連結至
openai.com/index/部落格文章,因 Cloudflare 機器人防護而對自動存取回傳 HTTP 403。透過標準網頁瀏覽器存取時這些 URL 為有效連結。
-
GitHub — openai/codex — 開源程式碼庫、版本發布與討論區。 ↩↩↩
-
Codex CLI Windows Support — Windows 安裝與 WSL 指引。 ↩
-
Codex IDE Extension — VS Code、Cursor 與 Windsurf 整合。 ↩
-
Codex Cloud — 雲端任務文件與網際網路存取控制。 ↩↩
-
Codex Security — 沙箱架構與安全模型。 ↩↩↩
-
macOS Seatbelt Sandbox — Apple sandbox-exec 框架的社群文件(Apple 官方未發布開發者文件)。注意:此 wiki 可能封鎖自動存取(HTTP 403);另可參閱 macOS 上的
man sandbox-exec。 ↩↩↩ -
Linux Landlock LSM — 核心層級的檔案系統存取控制。 ↩
-
How Codex CLI Flags Actually Work — 社群對旗標交互作用的分析。 ↩
-
Breaking Out of the Sandbox — 社群沙箱設定模式。 ↩
-
AGENTS.md Open Standard — Linux Foundation 下的跨工具指令標準。 ↩
-
Custom Instructions with AGENTS.md — 官方指南。 ↩
-
Codex MCP Integration — MCP 伺服器設定與管理。 ↩
-
Building Workflows with Agents SDK — 將 Codex 作為 MCP 伺服器進行多代理人協作。 ↩
-
Agent Skills — Skills 系統文件。 ↩
-
Codex CLI Features — Plan mode、steer mode 與協作功能。 ↩↩
-
Non-Interactive Mode —
codex exec文件。 ↩ -
Introducing the Codex App — 桌面應用程式發布公告。 ↩↩↩
-
Codex App Documentation — 桌面應用程式功能與疑難排解。 ↩
-
Codex GitHub Action — CI/CD 整合。 ↩
-
Codex Pricing — 訂閱方案與 API 定價。 ↩
-
Codex Configuration Reference — 企業 requirements.toml 架構與 MDM 部署。 ↩↩↩
-
Best Practices for Using Codex — 社群論壇討論串。 ↩
-
feiskyer/codex-settings — 社群維護的設定檔、skills 與提示詞。 ↩
-
Codex CLI Releases — GitHub 版本發布說明。 ↩↩
-
Introducing GPT-5.3-Codex-Spark — Cerebras 合作夥伴關係,1000+ tok/s。 ↩↩
-
Introducing GPT-5.3-Codex — 統一模型發布。 ↩
-
Introducing GPT-5.2-Codex — 上下文壓縮與大規模變更。 ↩
-
Building More with GPT-5.1-Codex-Max — 多視窗壓縮。 ↩
-
Codex is Now Generally Available — DevDay 2025 公告。 ↩
-
Introducing Upgrades to Codex — GPT-5-Codex + IDE 擴充功能。 ↩↩
-
Codex CLI is Going Native — Rust 重寫討論。 ↩
-
Codex Updates: Internet Access and Plus Rollout — 2025年6月擴展。 ↩
-
Introducing Codex — 雲端代理人發布。 ↩↩
-
Codex Context Window Discussion — 272K 輸入 token + 128K 輸出 token = 400K 總預算,經原始碼確認。 ↩
-
Deprecating chat/completions support in Codex — OpenAI 宣布移除 Codex 的 chat/completions API 支援,於2026年2月完成。 ↩
-
Codex CLI v0.101.0 — 模型解析改進、記憶體精煉、穩定性提升。2026年2月12日。 ↩↩
-
Codex CLI v0.100.0 — 實驗性 JS REPL、多重速率限制、WebSocket 傳輸、記憶體指令、增強沙箱。2026年2月12日。 ↩
-
Codex CLI v0.99.0 — 並行 shell 指令、
/statusline、可排序恢復選擇器、GIF/WebP 支援、shell 快照。2026年2月11日。 ↩ -
Codex CLI v0.98.0 — GPT-5.3-Codex 支援、steer mode 穩定並設為預設、模型切換修正。2026年2月6日。 ↩
-
Codex CLI v0.97.0 — 「允許並記住」MCP 核准、即時 skill 偵測、
/config診斷、記憶體管道。2026年2月6日。 ↩ -
Codex CLI v0.96.0 — 非同步 thread/compact v2、WebSocket 速率限制、非 Windows unified_exec、設定來源追蹤。2026年2月6日。 ↩
-
Codex CLI v0.95.0 —
codex app指令、個人 skills、並行 shell 工具、git 安全強化。2026年2月6日。 ↩ -
Codex CLI v0.94.0 — Plan mode 預設、personality 穩定、skills 來自
.agents/skills、執行時期指標。2026年1月30日。 ↩ -
Codex CLI v0.93.0 — SOCKS5 代理、plan mode 串流、
/apps、smart approvals 預設、SQLite 日誌。2026年1月29日。 ↩ -
Codex CLI v0.92.0 — API v2 threads、thread 過濾、MCP OAuth 範圍、多代理人協作。2026年1月29日。 ↩
-
Codex CLI v0.91.0 — 子代理人上限從12降至6,收緊資源管控。2026年1月25日。 ↩
-
Codex CLI v0.88.0 — 裝置碼驗證備援、協作模式、
/fork、遠端模型、model_personality設定。2026年1月21日。 ↩ -
Codex CLI v0.102.0 — 統一權限流程、結構化網路核准、可自訂多代理人角色、模型重導通知。2026年2月17日。 ↩↩
-
Codex CLI v0.103.0 — 透過 prepare-commit-msg hook 進行 commit 共同作者標註、更豐富的應用程式列表中繼資料/品牌化、移除
remote_models功能旗標。2026年2月17日。 ↩ -
Codex CLI v0.104.0 — WS_PROXY/WSS_PROXY WebSocket 代理支援、指令的獨立核准 ID、thread 封存/解封通知。2026年2月18日。 ↩↩↩
-
Codex Changelog — Codex App v26.217:拖放排序、模型降級警告、模糊檔案搜尋改進。Codex Config Reference — 完整設定鍵值參考。2026年2月。 ↩↩
-
Codex Pricing — 方案層級、每5小時使用限制、額度費用,以及 Free/Go 促銷方案。2026年2月。 ↩↩
-
Codex CLI v0.78.0 —
Ctrl+G外部編輯器、專案感知設定分層、macOS MDM 設定、TUI2 逐字稿導覽、.dmg安裝檔。2026年1月6日。 ↩ -
Codex CLI v0.66.0 — 執行原則系統、Windows CRLF 保留、雲端 exec
--branch、Linux Sigstore 簽章。2025年12月9日。 ↩ -
Codex CLI v0.59.0 — 原生壓縮、工具輸出上限提升至 10K token、Windows Agent mode 沙箱、
/status中顯示額度。2025年11月19日。 ↩ -
Codex CLI v0.50.0 —
/feedback診斷、沙箱違規風險評估、MCP 啟動改進、環境變數遮蔽。2025年10月25日。 ↩ -
Codex CLI v0.45.0 — 重大變更:
codex login --api-key→--with-api-key(stdin)。OAuth MCP 驗證、並行工具呼叫。2025年10月6日。 ↩ -
Codex CLI v0.40.0 — 預設模型改為
gpt-5-codex、220K token 時自動壓縮、/review指令、git 復原、Windows 二進位檔。2025年9月23日。 ↩ -
Codex CLI v0.2.0 — 首個 Rust 二進位版本。預建二進位檔支援 macOS(aarch64/x86_64)與 Linux(gnu/musl),含
codex-exec與codex-linux-sandbox工具。2025年6月30日。 ↩ -
GitHub — openai/codex LICENSE — Apache License 2.0。2025年4月開源發布。 ↩↩↩
-
Codex CLI v0.106.0 — 直接安裝腳本、js_repl 升級至 /experimental(需 Node 22.22.0+)、Default mode 中的 request_user_input、基於 diff 的記憶體遺忘、zsh-fork 沙箱繞過修正、約 1M 字元輸入上限、Ctrl-C 子代理人修正。2026年2月26日。 ↩↩↩↩↩↩↩↩↩↩
-
Codex CLI v0.105.0 — TUI 語法高亮搭配 /theme、語音轉錄、spawn_agents_on_csv、/copy /clear Ctrl-L、彈性核准控制、Linux /dev 檔案系統、js_repl 錯誤復原。2026年2月25日。 ↩↩↩↩↩↩↩↩↩↩
-
Codex CLI v0.107.0 — Thread 分叉為子代理人、即時語音裝置選擇、自訂工具多模態輸出、可設定記憶體搭配
codex debug clear-memories。2026年3月2日。 ↩↩↩↩↩↩ -
Codex Changelog — App v26.226 — composer 中的 MCP 快捷鍵、審閱評論中的 @mentions、Mermaid 圖表錯誤處理。2026年2月26日。 ↩↩↩
-
Introducing GPT-5.4 — 旗艦前沿模型,結合 GPT-5.3-Codex 編碼能力、更強推理、原生電腦操控與 1M 上下文視窗。2026年3月5日。 ↩↩↩↩↩
-
Codex CLI v0.110.0–v0.111.0 — skills/MCP/app 連接器的外掛系統(v0.110.0),fast mode 預設、js_repl 動態匯入、工作階段啟動時外掛探索(v0.111.0)。2026年3月5日。 ↩↩↩↩↩
-
Codex App for Windows — 原生 Windows 應用程式,支援 PowerShell、原生沙箱、skills/automations/worktrees。App v26.304(2026年3月4日)、v26.303(2026年3月3日)。 ↩↩↩↩↩
-
Introducing GPT-5.2-Codex — GPT-5.3-Codex-Spark:純文字研究預覽模型,針對近即時編碼迭代最佳化。透過 Cerebras 合作提供給 ChatGPT Pro 使用者。128K 上下文。 ↩↩↩
-
Codex CLI v0.112.0 — @plugin mentions 搭配自動納入上下文、TUI 模型選擇介面、每回合沙箱原則中的可執行權限設定檔、JS REPL 狀態修正、SIGTERM 處理、Linux bubblewrap 使用者命名空間、macOS 沙箱改進。2026年3月8日。 ↩↩↩↩
-
Codex CLI v0.113.0 — 內建 request_permissions 工具、外掛市集擴展(中繼資料、驗證檢查、解除安裝)、app-server 串流搭配 TTY/PTY、權限設定檔設定語言、圖片生成儲存至 CWD、網頁搜尋工具設定、強化網路代理原則。2026年3月10日。 ↩↩↩↩↩
-
Codex CLI v0.114.0 — 實驗性 code mode、實驗性 hooks 引擎(SessionStart、Stop 事件)、WebSocket 健康檢查端點、停用系統 skills 設定、交接逐字稿上下文、增強 $ mention 選擇器。2026年3月11日。 ↩↩↩↩
-
OpenAI Developer Changelog — March 11, 2026 — GPT-5.1 模型已從 ChatGPT 移除;現有對話自動續接至 GPT-5.3 Instant、GPT-5.4 Thinking 或 GPT-5.4 Pro。 ↩↩
-
Codex Changelog — App v26.312 — 可自訂主題(色彩控制與字型選擇)、全新 Automations 介面(本機/worktree 執行與自訂推理等級)、效能改進。2026年3月12日。 ↩↩↩↩
-
Codex CLI v0.115.0 — 透過
view_image與codex.emitImage進行全解析度圖片檢視、js_repl公開codex.cwd/codex.homeDir、即時 WebSocket 轉錄模式、app-server v2 檔案系統 RPC、Smart Approvals 搭配守護子代理人、Responses API 工具搜尋。修正:子代理人沙箱繼承、js_repl U+2028/U+2029 卡住、TUI 退出延遲、設定檔設定保留、MCP/引導改進。2026年3月16日。 ↩↩↩ -
Codex CLI v0.116.0 —
UserPromptSubmithook 事件、app-server TUI 中的 ChatGPT 裝置碼驗證、更順暢的外掛安裝(建議允許清單與遠端同步)、包含近期 thread 上下文的即時工作階段、降低音訊自我中斷。修正:WebSocket prewarm 首回合卡住、遠端 resume/fork 的對話歷史、符號連結 checkout/AppArmor 上的 Linux 沙箱、代理人工作完成競爭條件。合併 77 個 PR。2026年3月19日。 ↩↩ -
Codex CLI v0.117.0 — 一級外掛(產品範圍同步、
/plugins瀏覽器、安裝/移除)、子代理人 v2(路徑基礎地址、結構化訊息、代理人列表)、/title終端標題選擇器、app-server TUI 預設啟用搭配!shell 指令/檔案系統監控/遠端 WebSocket bearer 驗證/提示歷史回溯、圖片工作流程(view_imageURL、可重開已產生圖片、跨恢復歷史保留)、移除舊版 artifact/read_file/grep_files 工具、舊版 Linux 發行版沙箱改進、Windows 受限 token 沙箱改進。2026年3月28日。 ↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Introducing GPT-5.4 mini and nano — GPT-5.4 mini:400K 上下文,$0.75/$4.50 每 MTok,GPT-5.4 配額的 30%,速度提升 2 倍。可於 Codex app、CLI、IDE 擴充功能與網頁使用。2026年3月17日。 ↩↩↩↩↩↩
-
Codex Security: now in research preview — 上下文感知應用程式安全審查。Pro/Enterprise/Business/Edu 方案可透過 Codex 網頁使用。已掃描 120 萬次 commit,發現 10,561 個高嚴重性問題,分配 14 個 CVE。2026年3月6日。 ↩↩↩↩↩
-
Codex CLI v0.118.0 — Windows 僅代理沙箱網路、ChatGPT 裝置碼驗證、
codex execprompt-plus-stdin、動態 bearer token、.codex 檔案保護、Linux bwrap 修正、TUI app-server 退化修正、MCP 啟動穩健性、Windows apply_patch 修正。2026年3月31日。 ↩↩