Codex CLI: The Definitive Technical Reference
#
摘要: Codex 是一个多平台编码代理,能够读取您的代码库、在操作系统级沙箱中运行命令、修补文件,并将任务委托到云端。掌握五个核心系统(config.toml、沙箱/审批模型、AGENTS.md、MCP 和 Skills),Codex 将成为您的效率倍增器。使用配置文件进行上下文切换,使用
/compact管理 272K token 预算,并通过 AGENTS.md 编写跨工具项目指令,兼容 Codex、Cursor、Amp 等工具。
Codex 作为多平台编码代理运行,而非一个编写代码的聊天机器人。CLI 能够读取您的代码库、在沙箱中执行命令、修补文件、通过 MCP 连接外部服务,并将长时间运行的任务委托到云端。它在本地运行,但具备全局视野——同样的智能驱动着四个不同的交互界面,适应您的不同工作方式。
随意使用与高效使用 Codex 之间的差异,归结于五个核心系统。 掌握这些系统,Codex 将成为您的效率倍增器:
- 配置系统:通过
config.toml控制行为 - 沙箱与审批模型:限定 Codex 的操作权限
- AGENTS.md:定义项目级操作契约
- MCP 协议:将能力扩展至外部服务
- Skills 系统:封装可复用的领域专业知识
我花了数月时间在生产代码库、CI/CD 流水线和团队工作流中同时使用 Codex 和 Claude Code。本指南将这些经验提炼为我在刚开始时希望能拥有的完整参考手册。每个功能都包含实际语法、真实配置示例,以及容易困扰资深用户的边界情况。
稳定性说明:标记为
[EXPERIMENTAL]的功能在版本更新之间可能会发生变化。截至 v0.107.0,Codex Cloud 和 MCP 命令组均为实验性功能。核心 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在它们之间切换。 - 272K 输入上下文很快会被填满:使用
/compact、聚焦的提示词和@file引用来主动管理 token 预算。
如何使用本指南
这是一份 2,500 多行的参考文档——请根据您的经验水平选择起点:
| 经验水平 | 从这里开始 | 然后探索 |
|---|---|---|
| Codex 新手 | 安装 → 快速入门 → 心智模型 | 配置、沙箱 |
| 日常用户 | AGENTS.md、Skills、计划模式 | 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 │ │
│ └─────────────────────────────────────────────────┘ │
│ Shared model across all surfaces; costs tokens │
└─────────────────────────────────────────────────────────┘
核心层:GPT-5.x-Codex 模型系列驱动一切。截至 v0.107.0,gpt-5.3-codex 是默认模型,具有 272K token 的输入上下文窗口(128K 输出,400K 总预算)。35 它读取文件、编写补丁、执行 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)?
- JavaScript REPL 运行时
- 什么是 Skills?
- 计划模式与协作
- 记忆系统
- 会话管理
- 非交互模式(codex exec)
- Codex 云端与后台任务
- Codex 桌面应用
- GitHub Action 与 CI/CD
- Codex SDK
- 性能优化
- 如何调试问题?
- 企业部署
- 最佳实践与反模式
- 工作流方案
- 迁移指南
- 快速参考卡片
- 变更日志
- 参考资料
如何安装 Codex?
包管理器
# npm (recommended)
npm install -g @openai/codex
# Homebrew (macOS)
brew install --cask 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 以差异对比的形式提出编辑建议。按 y 审核并批准,或按 n 拒绝。
6. 使用斜杠命令:
> /plan Refactor the database layer to use connection pooling
Codex 创建计划但不执行。审核计划后批准即可开始执行。
7. 检查您的工作:
> /diff
查看 Codex 在当前会话中所做的所有更改。
后续步骤:
- 使用项目指令设置 AGENTS.md(请参阅 AGENTS.md 如何工作?)
- 为您的工作流配置配置文件(请参阅 配置文件)
- 尝试 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 是一个全屏应用程序,包含:
- 编辑器:输入提示词,使用
@附加文件,使用!前缀运行 shell 命令 - 输出面板:流式显示模型响应、工具调用和命令输出
- 状态栏:显示模型、token 用量、git 分支、sandbox 模式
TUI 关键快捷键:
| 快捷键 | 操作 |
|---|---|
@ |
模糊文件搜索(附加到上下文) |
!command |
直接运行 shell 命令 |
Ctrl+G |
打开外部编辑器($VISUAL / $EDITOR) |
Enter(运行中) |
在对话过程中注入新指令 |
Esc 连按两次 |
编辑之前的消息 |
| 方向键 | 浏览草稿历史 |
TUI 中可用的斜杠命令:
| 命令 | 描述 |
|---|---|
/quit 或 /exit |
退出 CLI |
/new |
在同一会话中开始新对话 |
/resume |
恢复已保存的对话 |
/fork |
将当前对话分叉到新线程 |
/model |
切换模型和推理强度 |
/compact |
压缩对话以释放 token |
/diff |
显示 git 差异,包括未跟踪的文件 |
/review |
对工作区进行代码审查 |
/plan |
进入计划模式 |
/mention |
将文件附加到对话中 |
/init |
生成 AGENTS.md 脚手架 |
/status |
会话配置和 token 用量 |
/permissions |
设置审批策略 |
/personality |
沟通风格(友好/务实/无) |
/mcp |
列出已配置的 MCP 工具 |
/apps |
浏览 ChatGPT 连接器 |
/ps |
显示后台终端 |
/skills |
访问和调用 skills |
/config |
打印生效的配置值及来源 |
/statusline |
配置 TUI 底栏 |
/feedback |
向 Codex 维护者发送日志 |
/logout |
退出登录 |
2. Codex Desktop App(macOS)
codex app # Launch desktop app (auto-installs if missing)
桌面应用程序提供了 CLI 不具备的功能:
- 多任务处理:跨不同项目同时运行多个并行代理
- Git worktree 隔离:每个线程在仓库的隔离副本上工作
- 内联差异审查:无需离开应用即可暂存、还原和提交更改
- 集成终端:每个线程独立的终端,用于运行命令
- 对话分叉:分支对话以探索替代方案
- 浮动弹出窗口:将对话分离为可移动的独立窗口
- 自动化任务:安排定期任务(问题分类、CI 监控、告警响应)
何时使用桌面应用 vs CLI:当您需要协调多个工作流或需要可视化差异审查时,使用桌面应用。当您需要终端可组合性、脚本编写或 CI/CD 集成时,使用 CLI。
3. IDE 扩展(VS Code、Cursor、Windsurf)
Codex IDE 扩展直接集成到您的编辑器中:
- 默认代理模式:读取文件、进行编辑、运行命令
- 内联编辑:在活动文件中提供上下文感知的建议
- 共享会话:CLI 和 IDE 扩展之间同步会话
- 统一认证:使用 ChatGPT 账户或 API 密钥登录
从 VS Code Marketplace 或 Cursor/Windsurf 扩展商店安装。3
4. Codex Cloud [实验性]
云任务在 OpenAI 管理的环境中异步运行:
- 即发即忘:排队任务独立于本地机器运行
- 并行执行:同时运行多个云任务
- 创建 PR:Codex 从已完成的工作中创建拉取请求
- 本地应用:使用
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.3-codex"
model_reasoning_effort = "xhigh"
approval_policy = "untrusted"
sandbox_mode = "read-only"
[profiles.auto]
model = "gpt-5.3-codex"
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年2月)
| 模型 | 输入 / 总上下文 | 默认推理级别 | 最佳用途 |
|---|---|---|---|
| gpt-5.3-codex | 272K / 400K | medium |
默认旗舰模型:编码与推理统一 |
| gpt-5.3-codex-spark | 128K / 128K | high |
实时配对编程,快速交互迭代 |
| gpt-5.2-codex | 272K / 400K | medium |
长周期重构、迁移、遗留代码 |
| gpt-5.1-codex-mini | 272K / 400K | medium |
快速任务、成本敏感型工作、高频 CI |
具体可用模型列表因账户和发布进度而异。截至 v0.106.0,
gpt-5.3-codex已在 CLI 模型列表中对 API 密钥用户可见。62 请查看本地缓存:~/.codex/models_cache.json。
模型选择流程图
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 (interactive, lower latency)
│ └─ No
│ ├─ Is this a multi-file refactor or migration?
│ │ ├─ Yes → gpt-5.2-codex (272K context, strong at long tasks)
│ │ └─ No → gpt-5.3-codex (default, best overall)
└─ Still unsure? → gpt-5.3-codex
推理级别
控制模型在响应前”思考”的程度:
| 级别 | 行为 | 适用场景 |
|---|---|---|
minimal |
最少推理(仅限 GPT-5 模型) | 简单任务、快速查询 |
low |
简短推理 | 标准编码任务、格式化 |
medium |
平衡模式(默认) | 大多数开发工作 |
high |
深度推理 | 复杂 Bug、架构设计 |
xhigh |
最大推理 | 安全审计、深度分析 |
支持的级别因模型而异。
minimal仅适用于 GPT-5 模型。并非所有模型都支持每个级别。
codex -c model_reasoning_effort="xhigh" "find the race condition"
专家提示:
xhigh推理对于相同提示词的 token 消耗量是medium的 3-5 倍。请仅在确实需要额外思考的高难度问题上使用。
模型切换
在会话中使用 /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 密钥 | 按用量计费 | 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 按所选模型的标准 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以及组织的计费仪表板
实际成本示例
常见任务的典型 API 费用(gpt-5.3-codex 标准定价,medium 推理级别):
| 任务 | 输入 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 监控——企业部署可将用量遥测数据导出到现有的可观测性平台
决策框架
何时使用各个界面
| 场景 | 最佳界面 | 原因 |
|---|---|---|
| 快速修复 bug | CLI | 快速、专注、可脚本化 |
| 多文件重构 | CLI 或 App | CLI 适合确定性补丁;App 适合可视化差异审查 |
| 探索不熟悉的代码 | CLI | 终端可组合性,grep/find 集成 |
| 并行工作流 | Desktop App | Worktree 隔离,多任务管理 |
| 活跃的文件编辑 | IDE 扩展 | 内联编辑,紧密的编译-测试循环 |
| 长时间运行的迁移 | 云端 | 独立运行,完成后创建 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
Steer 模式: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 - Windows:使用受限令牌的原生沙箱(从 v0.100.0 起由实验性升级为正式版)。同时支持 WSL(继承 Linux 的 Landlock + seccomp)
为什么这很重要:与基于容器的沙箱(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+): 一种可配置的策略模式,用于细粒度的读取访问控制。使用它来限制 Codex 可以从哪些目录读取数据,即使在 workspace-write 模式下也是如此:
[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 可以调整其方法,而不是简单地重新尝试相同的命令
--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"
启用网络访问
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 基金会的 Agentic AI Foundation 管理。Codex、Cursor、Copilot、Amp、Jules(Google)、Gemini CLI、Windsurf、Cline、Aider、Zed、Factory、RooCode 以及超过 60,000 个开源项目均已支持。它定义了 Codex 在特定代码仓库或目录中的行为方式。请参阅技能了解可复用的专业知识包,它们是 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.
## 安全
- 永远不要提交密钥。使用`.env`进行本地配置。
- 使用适当的错误处理验证所有外部API调用。
覆盖机制
在任意目录层级放置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(AfterAgent)和 v0.100.0(AfterToolUse)中添加了 hooks。与Claude Code的 12+ 个生命周期事件相比,hook 系统仍处于早期阶段,但为常见工作流提供了自动化入口。
可用的 Hook 事件
| 事件 | 触发时机 | 添加版本 |
|---|---|---|
AfterAgent |
代理完成一个完整轮次后 | v0.99.0 |
AfterToolUse |
每个独立工具调用完成后 | v0.100.0 |
Hook 配置
Hooks 在.codex/config.toml中配置:
[[hooks]]
event = "AfterToolUse"
command = "echo 'Tool completed' >> /tmp/codex-log.txt"
复现Claude Code的 Hook 模式
如果您正在从Claude Code迁移,以下是在没有完整 hook 事件集的情况下实现类似自动化的方法:
| Claude Code模式 | Codex 替代方案 |
|---|---|
PreToolUse文件阻止 |
AGENTS.md 指令 + sandbox read-only模式 |
PostToolUse代码检查 |
AfterToolUse hook 运行您的检查工具 |
SessionStart上下文注入 |
AGENTS.md(每次会话自动加载) |
SubagentStop通知 |
AfterAgent hook 配合通知脚本 |
| 异步 hooks | 暂不支持;使用 Cloud 任务处理后台工作 |
专家提示: hook 系统正在积极扩展中。请查看 Codex 变更日志了解每个版本中的新 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中身份标识不匹配的服务器将在启动时被阻止。完整策略配置请参阅企业部署。
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 按需加载。它们遵循开放代理技能标准。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. 按严重级别(严重/高/中/低)报告发现结果
元数据(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菜单或在提示中使用$skill-name提及 - 隐式调用:Codex 根据任务描述自动检测匹配的技能(如果
allow_implicit_invocation: true) - 创建器:使用
$skill-creator交互式构建新技能 - 安装器:使用
$skill-installer install <name>安装社区技能
启用/禁用
[[skills.config]]
path = "/path/to/skill/SKILL.md"
enabled = false
技能与斜杠命令的区别
| 技能 | 斜杠命令 | |
|---|---|---|
| 定义位置 | 带可选元数据的 SKILL.md 文件 |
内置于 Codex CLI二进制文件中 |
| 作用范围 | 项目级、用户级或管理员级 | 全局(始终可用) |
| 调用方式 | 在提示中使用 $skill-name、/skills 菜单或隐式检测 |
/command 语法 |
| 可定制性 | 完全可定制——您编写指令 | 固定行为 |
| 依赖项 | 可声明MCP服务器需求 | 无 |
| 共享方式 | 将技能文件夹复制到团队仓库或 ~/.codex/skills/ |
不可共享 |
调试技能
如果技能未激活:
- 检查发现:
/skills应在 TUI 中列出该技能 - 验证路径:确保技能文件夹位于可识别的位置(
~/.codex/skills/、项目根目录或/etc/codex/skills/) - 检查
enabled:在 config.toml 中设置enabled = false的技能不会加载 - 检查隐式激活:如果依赖自动检测,请确保
agents/openai.yaml中设置了allow_implicit_invocation: true - 使用关键词:在提示中包含技能的
description相关术语以提高隐式匹配率
生产示例:部署技能
一个完整的多文件技能示例,展示引用和脚本的协同工作:
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
计划模式与协作
计划模式允许 Codex 在执行更改之前先设计方案。该功能默认启用(自 v0.94.0 起)。15 请参阅决策框架中的”计划模式与直接执行”决策树。
进入计划模式
/plan # Switch to plan mode
/plan "redesign the API layer" # Plan mode with initial prompt
在计划模式中,Codex 会: - 读取文件并分析代码库 - 提出实施方案 - 在您批准之前不会进行任何更改 - 在专用的 TUI 视图中流式展示方案
引导模式
引导模式(自 v0.98.0 起默认启用)允许您在 Codex 正在工作时注入新指令,而不会中断其当前任务。15
有两种注入方式:
| 输入方式 | 行为 | 适用场景 |
|---|---|---|
| Enter | 立即发送指令;Codex 在当前回合中即可看到 | 紧急修正(”停止——不要修改那个文件”)、澄清(”配置文件在 /etc/app.conf,不是默认路径”)或优先级变更(”先处理测试”) |
| Tab | 将指令排队到下一回合;Codex 先完成当前工作 | 后续任务(”完成后,也更新变更日志”)、范围扩展(”做完后运行 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
引导模式在 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 |
切换语法高亮配色方案 |
语音转录(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 在会话启动时加载它们,并在后续所有会话中使用这些记忆来指导行为。
适合存储的内容
记忆最适合存储持久偏好和项目事实:
- 项目约定:”本项目使用制表符而非空格”或”API响应始终包含
meta字段” - 工具偏好:”使用
pnpm而非npm“或”使用pytest -x --tb=short运行测试” - 架构决策:”认证模块在
src/core/auth/中,而非src/middleware/“ - 工作流偏好:”在展示差异之前始终运行 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 slash commands 可打开相同的交互式选择器并支持搜索。
分叉
将对话分叉以探索不同方案,同时保留当前进度:
/fork # Fork current conversation
/fork "try a different approach" # Fork with new prompt
分叉会创建共享相同历史记录(截至分叉点)的独立线程。一个分叉中的更改不会影响另一个分叉。这在比较不同方案(例如”分叉后尝试用 Redis 替代 Memcached”)或安全地探索高风险更改时非常有用。
线程分叉为子代理(v0.107.0): 线程现在可以分叉为独立的子代理,允许对话生成并行执行的自主工作流。这扩展了现有的分叉模型——分叉的线程不仅仅是对话分支,而是成为拥有独立执行上下文的子代理。64
线程列表
查看和管理活跃会话:
/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 |
工作区写入沙箱 + 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,Apple Silicon)提供了针对多项目管理优化的图形界面。[^17]
### 安装
```bash
codex app # Auto-downloads and installs on first run
或直接下载:Codex.dmg
核心功能
| 功能 | 说明 |
|---|---|
| 并行线程 | 跨项目同时运行多个任务 |
| 线程模式 | 以Local、Worktree或Cloud模式启动线程 |
| 内置Git工具 | 查看差异、添加评论、暂存/还原代码块、提交/推送、创建PR |
| 集成终端 | 每个线程独立终端(Cmd+J) |
| 语音输入 | 通过语音输入提示(Ctrl+M) |
| 自动化 | 安排定期执行的任务 |
| 通知 | 应用在后台时发送完成/审批通知 |
| 防止休眠 | 可选设置,在任务运行时保持设备唤醒 |
| Skills + MCP | 在应用、CLI和IDE扩展之间共享配置 |
| MCP快捷方式 | 在编辑器中快速访问MCP工具快捷方式(App v26.226)65 |
| Review @提及 | 在代码审查评论中@提及协作者(App v26.226)65 |
线程模式
每个线程以三种模式之一运行,在创建时选择:
| 模式 | 隔离方式 | 文件访问 | 最适用于 |
|---|---|---|---|
| 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. 点击侧边栏中的”自动化”选项卡 3. 定义触发器(定时、Webhook或手动) 4. 编写提示并选择线程模式 5. 自动化按计划运行,并将结果排入审查队列
示例用例: - Issue分类:自动对新Issue进行分类和优先级排序 - CI监控:监视构建失败并建议修复方案 - 告警响应:对监控告警进行诊断分析 - 依赖更新:检查并应用安全补丁
结果会显示在审查队列中,等待人工审批。
Windows支持
Windows支持正在计划中。请查看Codex Desktop App页面或GitHub发布页获取可用性更新。18
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;在操作步骤后移除sudo权限 |
unprivileged-user |
以预创建的低权限用户身份运行Codex |
read-only |
只读沙箱(仍存在运行器/用户权限风险) |
unsafe |
无权限降级;Windows运行器上必须使用 |
访问控制
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: "..." })
线程和客户端配置
// 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检查生效的设置及其来源 |
| 计划模式允许修改操作 | 已知缺陷 | Issue #11115 |
| 忘记AGENTS.md中的指令 | 上下文限制 | 保持指令简洁;使用skill文件存放详细流程 |
| 在只读模式下卡住 | 已知问题 | 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不是有效的顶级标志。请使用上述调试子命令和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
企业部署
管理员控制(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是一个硬约束层,限制用户可以选择的值,用户无法覆盖它。管理员requirements规则只能提示或禁止(绝不会静默允许)。
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)
- 云端获取的requirements(ChatGPT Business / Enterprise)
/etc/codex/requirements.toml(本地文件系统)
云端requirements仅填充未设置的requirement字段,因此优先级更高的托管层始终优先。云端requirements为尽力获取模式;如果获取失败或超时,Codex将继续运行而不使用云端层。
OpenTelemetry集成
Codex支持通过标准OTel环境变量将OpenTelemetry追踪上下文传播到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:由组织管理员控制访问,云端获取的requirements自动应用。通过身份提供商(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的Enterprise销售团队 - 会话记录存储在本地;只有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差异进行审查
最佳实践与反模式
提示词模式
- 约束驱动型提示词:以限制条件开头。”Do NOT change the API contracts. Only refactor internal implementation.”
- 结构化复现步骤:编号步骤比模糊描述能产生更好的缺陷修复效果
- 验证请求:以”Run lint + the smallest relevant test suite. Report commands and results.”结尾
- 文件引用:使用
@filename将特定文件附加到上下文中 - 结果驱动型循环:”Implement, run tests, fix failures, stop only when all tests pass.” 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 中使用旗舰模型 | 常规检查成本过高 | 创建使用 gpt-5.1-codex-mini 和 low 推理级别的 ci 配置文件 |
上下文反模式
| 反模式 | 失败原因 | 修正方案 |
|---|---|---|
| 开放式的”探索所有内容”提示词 | Codex 读取大量文件,在无关代码上浪费上下文 | 指定具体文件来限定范围:”Review src/auth/login.py and tests/test_auth.py“ |
项目中没有 AGENTS.md |
Codex 浪费轮次来发现项目结构 | 添加一个20行的 AGENTS.md,包含关键路径、约定和测试命令 |
| 附加整个目录 | 无关文件淹没上下文 | 使用 @filename 仅附加 Codex 需要的文件 |
工作流反模式
| 反模式 | 失败原因 | 修正方案 |
|---|---|---|
直接在 main 上工作 |
没有安全网;高风险编辑难以撤销 | 启动 Codex 前始终创建功能分支 |
提交前跳过 /diff |
Codex 可能做了意料之外的更改 | 每个任务完成后、提交前审查 /diff |
| 忽略测试输出 | 如果您不标记失败,Codex 会跳过失败继续迭代 | 在提示词中使用”run tests and stop only when all pass” |
| 从不分叉对话 | 一个错误方向会污染整个上下文 | 在进行高风险探索前使用 /fork;丢弃错误的分支 |
提示词反模式
| 反模式 | 失败原因 | 修正方案 |
|---|---|---|
| “Fix the bug”(无上下文) | Codex 猜测是哪个缺陷,读取所有内容 | “Fix the TypeError in src/api/handler.py:42 — user.name is None when unauthenticated” |
| 在一条消息中包含多个任务 | 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(AfterAgent、AfterToolUse——初期阶段;v0.99.0+) |
| 子代理(Task工具) | 子代理(内部实现,最多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 |
| 权限规则 | 沙箱模式 + 审批策略 |
| MCP配置在settings.json中 | MCP配置在config.toml中 |
需要理解的关键差异:
- 沙箱为操作系统级别:Codex使用Seatbelt/Landlock,而非容器。限制在内核层面运行,位于应用层之下。
- Hooks处于初期阶段:Codex在v0.99.0(AfterAgent)和v0.100.0(AfterToolUse)中添加了hooks,但该系统与Claude Code的12+生命周期事件相比仍处于早期阶段。对于尚未覆盖的自动化模式,请使用AGENTS.md指令或skills。
- 子代理为内部实现但现已可配置:Codex具有子代理机制(最多6个并发,从v0.91.0的12个减少)。自v0.104.0起,多代理角色可通过配置自定义,允许命名代理角色具有不同的配置文件。49 v0.105.0添加了
spawn_agents_on_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代理,带沙箱/审批控制 + 云任务 |
您将获得的优势:
- 操作系统级沙箱(Seatbelt/Landlock——内核强制执行 vs 基于容器)
- 通过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 ║
║ /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 ║
║ ║
║ 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 (Feb 2026, v0.106.0) ║
║ gpt-5.3-codex Default flagship (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-03-02 | Guide v2.9 | 更新至 CLI v0.107.0:线程分叉为子代理、实时语音设备选择、可配置记忆与 codex debug clear-memories、多模态自定义工具输出。新增 App v26.226:编辑器中的 MCP 快捷方式、审查评论中的 @提及。 |
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 沙箱绕过修复、约100万字符输入上限、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、5.3-codex 在 CLI 模型列表中对 API 用户可见、基于差异的记忆遗忘(含使用感知选择)、zsh-fork 沙箱绕过修复、约100万字符输入上限、改进的 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、提交协作者署名,将已移除的 remote_models 功能标志替换为 command_attribution。 |
— |
| 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 钩子实现提交协作者署名(可通过 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、迁移模式)。修复 Recipe 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 运行时部分、生产部署技能示例、扩展费用部分(隐藏 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)至更新日志。将批量 25 引用替换为20个独立发布脚注(37–61)。新增 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,新增要点摘要块,修复样式违规,精简元描述,扩展 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 内测版 | 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 审批、实时技能检测、/config 诊断、记忆管道 |
41 |
| 2026-02-06 | CLI 0.96.0 | 异步线程/压缩 v2、WebSocket 速率限制、非 Windows 的 unified_exec、配置溯源 | 42 |
| 2026-02-06 | CLI 0.95.0 | codex app 命令、个人技能、并行 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 技能、运行时指标 |
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 训练、思考 token 减少30% | 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(标准输入)。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 链接至
openai.com/index/博客文章,由于 Cloudflare 机器人防护,自动化访问将返回 HTTP 403。这些 URL 通过标准网页浏览器访问时有效。
-
GitHub — openai/codex — 开源代码仓库、版本发布与讨论。 ↩↩↩
-
Codex CLI Windows 支持 — Windows 安装与 WSL 指南。 ↩
-
Codex IDE 扩展 — VS Code、Cursor 和 Windsurf 集成。 ↩
-
Codex Cloud — 云端任务文档与互联网访问控制。 ↩↩
-
macOS Seatbelt 沙箱 — Apple sandbox-exec 框架的社区文档(Apple 未发布官方开发者文档)。注意:该 wiki 可能阻止自动化访问(HTTP 403);另请参阅 macOS 上的
man sandbox-exec。 ↩↩↩ -
Linux Landlock LSM — 内核文件系统访问控制。 ↩
-
Codex CLI 命令行标志的实际工作原理 — 社区对标志交互的分析。 ↩
-
AGENTS.md 开放标准 — Linux 基金会下的跨工具指令标准。 ↩
-
使用 AGENTS.md 自定义指令 — 官方指南。 ↩
-
Codex MCP 集成 — MCP 服务器配置与管理。 ↩
-
使用 Agents SDK 构建工作流 — 将 Codex 作为 MCP 服务器用于多智能体编排。 ↩
-
Agent Skills — Skills 系统文档。 ↩
-
Codex CLI 功能特性 — Plan 模式、Steer 模式与协作功能。 ↩↩
-
Codex 应用发布公告 — 桌面应用发布公告。 ↩↩↩
-
Codex 应用文档 — 桌面应用功能与故障排除。 ↩↩
-
Codex GitHub Action — CI/CD 集成。 ↩
-
Codex 配置参考 — 企业级 requirements.toml 架构与 MDM 分发。 ↩↩↩
-
Codex 使用最佳实践 — 社区论坛讨论帖。 ↩
-
feiskyer/codex-settings — 社区维护的配置、Skills 与提示词。 ↩
-
Codex CLI 版本发布 — GitHub 发布说明。 ↩↩
-
GPT-5.3-Codex-Spark 发布公告 — Cerebras 合作,1000+ tok/s。 ↩↩
-
GPT-5.3-Codex 发布公告 — 统一模型发布。 ↩
-
GPT-5.2-Codex 发布公告 — 上下文压缩与大规模变更。 ↩
-
GPT-5.1-Codex-Max 扩展功能 — 多窗口压缩。 ↩
-
Codex 正式全面可用 — DevDay 2025 公告。 ↩
-
Codex 升级公告 — GPT-5-Codex + IDE 扩展。 ↩↩
-
Codex CLI 原生化改造 — Rust 重写讨论。 ↩
-
Codex 更新:互联网访问与 Plus 用户推广 — 2025年6月扩展。 ↩
-
Codex 发布公告 — 云端智能体发布。 ↩↩
-
Codex 上下文窗口讨论 — 272K 输入 token + 128K 输出 token = 400K 总预算,已通过源代码确认。 ↩
-
弃用 Codex 的 chat/completions 支持 — 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 模式稳定并设为默认、模型切换修复。2026年2月6日。 ↩
-
Codex CLI v0.97.0 — “允许并记住” MCP 审批、实时 Skill 检测、
/config诊断、内存管道。2026年2月6日。 ↩ -
Codex CLI v0.96.0 — 异步线程/压缩 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 模式设为默认、Personality 稳定、
.agents/skillsSkills 加载、运行时指标。2026年1月30日。 ↩ -
Codex CLI v0.93.0 — SOCKS5 代理、Plan 模式流式输出、
/apps、智能审批设为默认、SQLite 日志。2026年1月29日。 ↩ -
Codex CLI v0.92.0 — API v2 线程、线程过滤、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 实现提交共同作者归属、更丰富的应用列表元数据/品牌信息、移除
remote_models功能标志。2026年2月17日。 ↩ -
Codex CLI v0.104.0 — WS_PROXY/WSS_PROXY WebSocket 代理支持、命令独立审批 ID、线程归档/取消归档通知。2026年2月18日。 ↩↩↩
-
Codex 更新日志 — Codex App v26.217:拖放排序、模型降级警告、模糊文件搜索改进。Codex 配置参考 — 完整配置键参考。2026年2月。 ↩↩
-
Codex CLI v0.78.0 —
Ctrl+G外部编辑器、项目感知配置分层、macOS MDM 配置、TUI2 transcript 导航、.dmg安装包。2026年1月6日。 ↩ -
Codex CLI v0.66.0 — Exec 策略系统、Windows 上 CRLF 保留、Cloud exec
--branch、Linux Sigstore 签名。2025年12月9日。 ↩ -
Codex CLI v0.59.0 — 原生压缩、工具输出限制提升至 10K token、Windows Agent 模式沙箱、
/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 模式下的 request_user_input、基于 diff 的内存遗忘、zsh-fork 沙箱绕过修复、约 1M 字符输入上限、Ctrl-C 子智能体修复。2026年2月26日。 ↩↩↩↩↩↩↩↩↩↩↩
-
Codex CLI v0.105.0 — 通过 /theme 实现 TUI 语法高亮、语音转录、spawn_agents_on_csv、/copy /clear Ctrl-L、灵活审批控制、Linux /dev 文件系统、js_repl 错误恢复。2026年2月25日。 ↩↩↩↩↩↩↩↩↩↩
-
Codex CLI v0.107.0 — 线程分叉为子智能体、实时语音设备选择、自定义工具多模态输出、通过
codex debug clear-memories配置可清除内存。2026年3月2日。 ↩↩↩↩↩↩ -
Codex 更新日志 — App v26.226 — 编辑器中的 MCP 快捷方式、审查评论中的 @提及、Mermaid 图表错误处理。2026年2月26日。 ↩↩↩