codex:~/docs$ cat codex.md

Codex CLI: The Definitive Technical Reference

#

words: 2222 read_time: 21m updated: 2026-02-16 00:11
$ less codex.md

Codex 是一个多界面编码智能体,而非简单编写代码的聊天机器人。CLI 会读取您的代码库、在沙箱中执行命令、修补文件、通过 MCP 连接外部服务,并将长时间运行的任务委托至云端。它在本地运行,却拥有全局视野——同一套智能驱动着四个不同的界面,适应您的工作方式。

随意使用与高效使用 Codex 的差距,归结于五个核心系统。 掌握它们,Codex 将成为您的效率倍增器:

  1. 配置系统 — 通过 config.toml 控制行为
  2. 沙箱与审批模型 — 管控 Codex 的操作权限
  3. AGENTS.md — 定义项目级别的运行契约
  4. MCP 协议 — 将能力扩展至外部服务
  5. Skills 系统 — 封装可复用的领域专业知识

我花了数月时间在生产代码库、CI/CD 流水线和团队工作流中同时使用 Codex 和 Claude Code。本指南将这些经验提炼为一份全面的参考文档——正是我刚开始使用时希望能拥有的那种。每个功能都包含实际语法、真实配置示例,以及那些即便是经验丰富的用户也容易踩到的边界情况。

稳定性说明:标记为 [EXPERIMENTAL] 的功能可能会在版本更新间发生变化。截至 v0.101.0,Codex Cloud 和 MCP 命令组均为实验性功能。核心 CLI、沙箱、AGENTS.md、config.toml 和 Skills 均已稳定。


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.101.0,gpt-5.3-codex 是默认模型,拥有 272K token 的上下文窗口。它能读取文件、编写补丁、执行 shell 命令,并对您的代码库进行推理分析。当上下文满载时,Codex 会压缩对话以释放空间。此层消耗 token。

安全层:Codex 执行的每条命令都经过操作系统级沙箱过滤。在 macOS 上,Apple 的 Seatbelt 框架实施内核级限制。在 Linux 上,Landlock + seccomp 过滤文件系统和系统调用访问。这不是基于容器的方案——而是内置于操作系统中的安全机制。审批策略随后决定何时需要人工确认。

扩展层:MCP 连接外部服务(GitHub、Figma、Sentry)。Skills 将可复用的工作流打包,供 Codex 按需加载。Apps 连接 ChatGPT 连接器。Web search 从互联网获取实时上下文信息。

界面层:CLI 面向终端高级用户和自动化场景。Codex Desktop App 用于多线程项目管理。IDE 扩展支持编辑-编译-测试的紧密循环。Cloud 用于独立运行的异步任务。

核心要点:大多数用户只使用一个界面。高级用户会同时使用全部四个——Cloud 处理长时间运行的任务,CLI 执行确定性的仓库操作,IDE 扩展用于紧凑的编码循环,Codex Desktop App 则用于规划和协调。


目录

  1. 如何安装 Codex?
  2. 核心交互界面
  3. 配置系统深入解析
  4. 如何选择模型?
  5. 决策框架
  6. 沙箱与审批系统如何运作?
  7. AGENTS.md 如何运作?
  8. 什么是 MCP(Model Context Protocol)?
  9. 什么是 Skills?
  10. Plan Mode 与协作
  11. 非交互模式(codex exec)
  12. Codex Cloud 与后台任务
  13. Codex Desktop App
  14. GitHub Action 与 CI/CD
  15. Codex SDK
  16. Codex 的费用是多少?
  17. 性能优化
  18. 如何调试问题?
  19. 企业部署
  20. 社区技巧与实践
  21. 迁移指南
  22. 快速参考卡
  23. 更新日志
  24. 参考资料

如何安装 Codex?

包管理器

# npm (recommended)
npm install -g @openai/codex

# Homebrew (macOS)
brew install --cask codex

# Upgrade to latest
npm install -g @openai/codex@latest

二进制下载

对于没有 npm 或 Homebrew 的环境,可以从 GitHub Releases1 下载特定平台的二进制文件:

平台 二进制文件
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:实验性支持(建议使用 WSL 以获得完整沙箱支持)2

身份验证

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

两种身份验证方式:

  1. ChatGPT 账户(推荐):使用您现有的 Plus、Pro、Team、Business、Edu 或 Enterprise 订阅登录。可访问全部功能,包括云端任务。
  2. 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.101.0

核心交互界面

Codex 提供四种不同的界面,均由相同的智能引擎驱动。每种界面针对不同的工作流模式进行了优化。

1. 交互式 CLI(TUI 终端界面)

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

TUI 终端界面是一个全屏应用程序,包含:

  • 编辑器:输入提示词,使用 @ 附加文件,使用 ! 前缀运行 shell 命令
  • 输出面板:流式显示模型响应、工具调用和命令输出
  • 状态栏:显示模型、token 用量、git 分支和 sandbox_mode

关键 TUI 快捷键:

快捷键 操作
@ 模糊文件搜索(附加到上下文)
!command 直接运行 shell 命令
Ctrl+G 打开外部编辑器($VISUAL / $EDITOR
Enter(运行中) 在回合中途注入新指令
Esc 连按两次 编辑之前的消息
方向键 浏览草稿历史记录

TUI 中可用的 Slash commands:

命令 描述
/quit/exit 退出 CLI
/new 在同一会话中开始新对话
/resume 恢复已保存的对话
/fork 将当前对话分叉为新线程
/model 切换模型和推理强度
/compact 压缩对话以释放 token
/diff 显示 git diff,包括未跟踪文件
/review 对工作目录进行代码审查
/plan 进入 plan mode
/mention 将文件附加到对话
/init 生成 AGENTS.md 脚手架
/status 查看会话配置和 token 用量
/permissions 设置审批模式
/personality 沟通风格(friendly/pragmatic/none)
/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)

Codex Desktop App 提供了 CLI 所不具备的功能:

  • 多任务处理:同时在不同项目上运行多个并行代理
  • Git worktree 隔离:每个线程在仓库的独立副本上工作
  • 内联 diff 审查:无需离开应用即可暂存、回退和提交更改
  • 集成终端:每个线程拥有独立终端,可运行命令
  • 对话分叉:分支对话以探索不同方案
  • 浮动弹出窗口:将对话分离为可移动的独立窗口
  • 自动化:安排定期任务(issue 分类、CI 监控、告警响应)

何时使用 Codex Desktop App 与 CLI:当您需要协调多个工作流或需要可视化 diff 审查时,使用 Codex Desktop App。当您需要终端组合能力、脚本编写或 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 [实验性]

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

Cloud 任务也可通过 chatgpt.com/codex 访问。4

配置系统深度解析

Codex 使用 TOML 进行配置。理解优先级层次结构至关重要——它决定了设置冲突时哪个配置生效。

优先级(从高到低)

  1. 会话覆盖(最高优先级):CLI 标志(--model--sandbox--ask-for-approval--search--enable/--disable--profile)和 -c key=value 覆盖
  2. 项目配置.codex/config.toml,从当前工作目录向上查找至项目根目录——最近的目录优先)
  3. 用户配置$CODEX_HOME/config.toml,默认为 ~/.codex/config.toml
  4. 系统配置(Unix 上为 /etc/codex/config.toml
  5. 内置默认值(最低优先级)

托管管理员配置作为策略约束层运行,可以在常规合并后强制或禁止特定值。请参阅企业部署

配置文件位置

范围 路径 用途
用户 ~/.codex/config.toml 个人默认配置
项目 .codex/config.toml 按仓库覆盖
系统 /etc/codex/config.toml 机器级默认配置
托管 托管管理员配置(系统级) 管理员强制执行的策略约束

专家提示CODEX_HOME 环境变量可覆盖默认的 ~/.codex 目录。适用于 CI/CD 或多账户设置场景。

完整配置参考

# ~/.codex/config.toml — annotated reference

# ─── Model Selection ───────────────────────────────────
model = "gpt-5.3-codex"                # Default model (272K context)
model_provider = "openai"               # Provider (openai, oss, or custom provider id)
model_reasoning_effort = "medium"       # 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 ─────────────────────────────────
[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

# ─── 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)
remote_models = true                    # Refresh remote model list (stable)
apps = false                            # ChatGPT Apps/connectors (experimental)
child_agents_md = false                 # AGENTS.md guidance (experimental)
runtime_metrics = false                 # Runtime summary in turns

# ─── Project Trust ─────────────────────────────────────
[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"

使用 --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 medium 默认旗舰模型——编码与推理一体化
gpt-5.3-codex-spark 128K high 实时结对编程,快速交互迭代
gpt-5.2-codex 272K medium 长周期重构、迁移、遗留代码处理
gpt-5.1-codex-mini 272K medium 快速任务、成本敏感场景、大规模 CI

具体的模型列表因账户和发布阶段而异。请查看本地缓存:~/.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

推理级别

控制模型在响应前”思考”的深度:

级别 行为 适用场景
low 简短推理 标准编码任务、格式化
medium 均衡(默认) 大多数开发工作
high 扩展推理 复杂调试、架构设计
xhigh 最大推理 安全审计、深度分析

支持的级别取决于模型。并非所有模型都支持每个级别。

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"

决策框架

各场景最佳工具选择

场景 最佳工具 原因
快速修复 bug CLI 快速、专注、可脚本化
多文件重构 CLI 或 App CLI 适合确定性补丁;App 适合可视化差异审查
探索不熟悉的代码 CLI 终端可组合性,集成 grep/find
并行工作流 Desktop App 工作树隔离,多任务管理
活跃文件编辑 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 默认

沙箱与审批系统的工作原理

Codex 使用双层安全模型,将技术上可行的操作需要人工审批的时机分离开来。这与 Claude Code 的权限系统有本质区别——Codex 在操作系统内核层面强制执行限制。5

第一层:沙箱(可执行的操作范围)

沙箱通过操作系统原生机制控制文件系统和网络访问:

模式 文件访问 网络 实现方式
read-only 所有位置只读 阻断 最严格——修改操作需要明确审批
workspace-write 工作区 + /tmp 可读写 默认阻断 常规开发——安全的默认选项
danger-full-access 完整的机器访问权限 启用 最大能力——谨慎使用

平台特定的执行机制:

  • macOS:通过 sandbox-exec 使用 Apple 的 Seatbelt 框架,运行时编译模式特定的配置文件并由内核强制执行6
  • Linux:使用 Landlock 实现文件系统限制 + seccomp 实现系统调用过滤。独立的辅助进程(codex-linux-sandbox)提供纵深防御隔离。可选的 Bubblewrap(bwrap)管道作为替代方案7
  • Windows:实验性的原生沙箱,使用受限令牌。推荐使用 WSL 以获得完整的沙箱支持(继承 Linux 的 Landlock + seccomp)

为什么这很重要:与基于容器的沙箱(Docker)不同,操作系统级别的沙箱更快、更轻量,也更难被突破。内核在 Codex 看到系统调用之前就已经强制执行了限制。

第二层:审批策略(何时询问)

审批策略决定 Codex 何时暂停并请求人工确认:

策略 行为 适用场景
untrusted 自动运行安全的读取操作;其他所有操作均需提示 最高信任门槛——不熟悉的代码仓库
on-failure 自动运行直到出现失败,然后询问 半自动化——捕获错误
on-request 在沙箱范围内自动审批;越界操作时提示 默认——良好的平衡
never 完全无提示 CI/CD、受信任的自动化

--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"

启用网络访问

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

测试沙箱

在信任沙箱之前验证其行为:

codex sandbox macos --full-auto -- ls /etc/passwd   # macOS test
codex sandbox linux --full-auto -- cat /etc/shadow   # Linux test

AGENTS.md 的工作原理

AGENTS.md 是 Codex 的项目指令系统——一项开放标准10,被 Codex、Cursor、Amp、Jules(Google)和 Factory 所支持。它定义了 Codex 在特定代码仓库或目录中应如何运作。

发现层级

Codex 在会话启动时通过遍历目录树构建指令链:

  1. 全局~/.codex/):AGENTS.override.md > AGENTS.md
  2. 项目(从 git 根目录到当前目录):每一层都检查 AGENTS.override.md > AGENTS.md > 备选文件名
  3. 合并:文件从根目录向下拼接;距离越近的文件在提示词中出现越靠后,因此会覆盖之前的指导
~/.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"

什么是 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():使用提示词、沙箱、模型和审批参数启动新会话 2. codex-reply():使用 threadId 和提示词继续现有会话

与 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

什么是 Skills?

Skills 是可复用的、针对特定任务的能力包,Codex 按需加载。它们遵循开放智能体技能标准。14

Skills 结构

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)

发现位置

用户安装的 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 comprehensive 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: "Comprehensive 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

Plan Mode 与协作

Plan mode 允许 Codex 在执行更改之前先设计方案。该功能自 v0.94.0 起默认启用。15

进入 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 工作时注入新的指令:

  • Enter:在当前运行的回合中立即发送指令
  • Tab:将后续指令排队,等当前回合完成后执行

这使您能够实时修正方向,而无需停止代理。

会话分叉

分叉会话以探索替代方案,同时不丢失当前进度:

/fork                              # Fork current conversation
/fork "try a different approach"   # Fork with new prompt

分叉会创建独立的线程——一个分叉中的更改不会影响另一个。


非交互模式(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.startedturn.started/completed/faileditem.started/completederror

{"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

工作原理

  1. 提交任务(通过 chatgpt.com/codex、Slack 集成或 CLI)
  2. Codex 将您的仓库克隆到隔离的云沙箱中
  3. 代理独立工作——读取代码、运行测试、进行更改
  4. 完成后,Codex 创建 PR 或提供差异对比供审查
  5. 使用 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 会回复任务链接,并在完成时发布结果。

Cloud 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 Desktop App(仅限 macOS,Apple Silicon)提供了针对多项目管理优化的图形界面。17

安装

codex app                      # Auto-downloads and installs on first run

或直接下载:Codex.dmg

核心功能

功能 说明
并行线程 跨项目同时运行多个任务
线程模式 LocalWorktreeCloud 模式启动线程
内置 Git 工具 审查差异、添加评论、暂存/还原代码块、提交/推送、创建 PR
集成终端 每个线程独立的终端(Cmd+J
语音听写 通过语音输入提示词(Ctrl+M
自动化任务 安排定期执行的任务
通知 应用在后台时发送完成/审批通知
防止休眠 可选设置,在任务运行时保持设备唤醒
Skills + MCP 在应用、CLI 和 IDE 扩展之间共享配置

自动化任务

自动化任务在应用本地运行——应用必须正在运行且项目在磁盘上可用:

  • 在 Git 仓库中,自动化任务使用专用的后台 worktrees
  • 在非 Git 项目中,任务直接在项目目录中执行
  • 自动化任务使用您的默认沙箱设置

示例用途: - Issue 分类:自动分类和排列新 issue 的优先级 - CI 监控:监控构建失败并建议修复方案 - 告警响应:对监控告警进行诊断分析 - 依赖更新:检查并应用安全补丁

结果会出现在审查队列中,等待人工批准。

Windows 支持

Windows Alpha 测试已于2026年2月开放。请访问 openai.com 注册获取早期访问权限。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;在 action 步骤后移除 sudo 权限
unprivileged-user 以预创建的低权限用户运行 Codex
read-only read-only 沙箱(runner/用户权限风险仍然存在)
unsafe 不进行权限降级;Windows runners 上必须使用

访问控制

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+。


Codex 的费用是多少?

通过 ChatGPT 计划获取访问权限

Codex 的可用性取决于您的 ChatGPT 计划和组织设置:

计划 Codex 访问权限
Plus 已包含——本地 CLI + 云端任务
Pro 已包含——更高吞吐量
Business 已包含——团队配额分配
Enterprise 已包含——自定义配额分配 + 管理员控制
Edu 已包含——教育访问权限

计划限制和吞吐量可能会发生变化。请在 ChatGPT 和管理员设置中查看当前的使用权限。

API 计费

通过 API 使用 Codex 时,按照所选模型的标准 OpenAI API 定价按 token 计费(加上适用的提示缓存折扣)。请查看官方 API 定价页面了解当前费率。

成本优化策略

  1. 使用配置文件:创建一个 fast 配置文件,设置 gpt-5.1-codex-minimodel_reasoning_effort = "low",用于日常任务
  2. 保留高推理能力:仅在真正困难的问题上使用 xhigh——它的 token 消耗是普通模式的 3-5 倍
  3. 使用 --ephemeral:在 CI/CD 中跳过会话持久化以减少开销
  4. 最小化推理摘要:当不需要解释时,设置 model_reasoning_summary = "none"
  5. 批量使用 exec 模式codex exec 可避免 TUI 开销,适用于自动化工作流
  6. 监控用量:在 TUI 中查看 /status 以及组织的计费仪表板

性能优化

上下文管理

旗舰模型拥有 272K 的上下文窗口,但填满速度比您想象的要快。需要主动管理:

  1. 定期使用 /compact:总结对话历史以释放 token
  2. 提供本地文档:高质量的 AGENTS.md 和本地文档可以减少探索开销(探索会消耗上下文)
  3. 使用 @ 附加特定文件:直接引用文件,而不是让 Codex 自行查找
  4. 保持提示聚焦:指定具体文件的精确提示比开放式探索消耗更少的上下文

Token 效率

技巧 影响
设置 model_reasoning_summary = "none" 减少约 20% 的输出 token
使用 model_verbosity = "low" 更简短的解释,更多实际操作
简单任务使用 mini 模型 每条消息的成本显著降低
将复杂任务拆分为聚焦的会话 每个会话的 token 效率更高
使用配置文件按任务切换设置 避免在日常工作上为高推理付费

速度优化

  1. gpt-5.3-codex-spark:低延迟变体,适用于交互式结对编程
  2. --profile fast:预配置的 mini 模型,搭配低推理能力
  3. 并行工具执行:Codex 会并发运行独立的读取/检查操作——构建提示时应充分利用这一特性
  4. 结果驱动循环:使用”实现、测试、修复、全部通过后停止”的方式,而非逐步指令

如何调试问题?

常见问题与解决方案

问题 原因 解决方案
“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 模式允许修改操作 已知 bug Issue #11115
忘记 AGENTS.md 中的指令 上下文限制 保持指令简洁;使用 skill 文件存放详细流程
Read Only 模式下停滞 已知问题 Discussion #7380

诊断工具

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 提交问题。1


企业部署

管理员控制(managed-admin-config)

企业策略通过 managed admin config(系统级别)强制执行,可以要求安全执行模式并约束用户设置:22

# /etc/codex/managed-admin-config.toml

model_reasoning_effort = "high"
model_reasoning_summary = "auto"
model = "gpt-5.3-codex"

require_approval = "untrusted"
require_sandbox = "workspace-write"

managed admin config 充当约束层——它在常规配置合并之后强制或禁止特定值,而不仅仅是另一个覆盖层级。

macOS MDM 配置

通过 MDM 使用 com.openai.codex 偏好设置域进行分发:

用途
managed_config_base64 Base64 编码的托管用户配置
managed_admin_config_base64 Base64 编码的托管管理员策略配置

OpenTelemetry 集成

Codex 支持从标准 OTel 环境变量到 OpenAI API 调用的 OpenTelemetry 追踪上下文传播。在您的运行时/收集器栈中配置 OTel:

  • 支持标准 OTEL_* 环境变量
  • 追踪上下文通过 Codex 传播到 API 调用
  • 启用提示/工具日志记录时请注意隐私要求

企业访问

  • ChatGPT Business / Enterprise / Edu:由组织管理员控制访问权限
  • API:标准 API 认证、计费和组织/项目控制
  • Codex SDK:嵌入到内部工具和工作流中
  • 托管配置:使用 managed config + managed admin config 进行大规模策略执行

社区技巧与方法

提示模式

  1. 约束驱动提示:以边界条件开头——“不要修改 API 接口。只重构内部实现。”
  2. 结构化复现步骤:编号步骤比模糊描述更能产出高质量的 bug 修复
  3. 验证请求:以”运行 lint 和最小相关测试套件。报告命令和结果。”结尾
  4. 文件引用:使用 @filename 将特定文件附加到上下文中
  5. 结果驱动循环:”实现、运行测试、修复失败、仅在所有测试通过后停止”——Codex 会持续迭代直到完成

测试理念

社区逐渐趋向于测试驱动的 AI 协作方式:23

  • 预先定义测试作为完成信号
  • 让 Codex 持续迭代直到测试通过(红 → 绿 → 重构)
  • 采用 Tiger Style 编程模式
  • 请求补丁时提供精确的文件内容——Codex 使用严格匹配,而非模糊的 AST 补丁

上下文管理最佳实践

  • 提供高质量的本地文档,而非依赖网络搜索
  • 维护带有目录和进度文件的结构化 markdown(”渐进式披露”)
  • 在所有跟踪文件中统一行尾符(LF vs CRLF)以防止补丁失败
  • 保持 AGENTS.md 简洁——过长的指令会被挤出上下文

Git 工作流

  • 在不熟悉的仓库上运行 Codex 之前,始终创建新分支
  • 使用基于补丁的工作流(git diff / git apply)而非直接编辑
  • 像审查 PR 一样审查 Codex 的建议
  • 使用 /diff 在提交前验证变更

社区 Skills 和提示

feiskyer/codex-settings 仓库提供了经过实战验证的配置:24

可复用提示(位于 ~/.codex/prompts/): - deep-reflector:从开发会话中提取经验教训 - github-issue-fixer [issue-number]:系统化的 bug 分析和 PR 创建 - github-pr-reviewer [pr-number]:代码审查工作流 - ui-engineer [requirements]:生产级前端开发

社区 skills: - claude-skill:将任务交给 Claude Code 处理,支持权限模式 - autonomous-skill:多会话任务自动化,带进度追踪 - deep-research:并行子任务编排 - kiro-skill:需求 → 设计 → 任务 → 执行流水线

迁移指南

从 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(SessionStart 等) 无对应功能——请改用 AGENTS.md 和 skills
子代理(Task 工具) 无直接对应功能——请使用 skills、云任务或 SDK 编排
/compact /compact(完全相同)
/cost /status(显示令牌用量)
模型:Opus/Sonnet/Haiku 模型:gpt-5.3-codex / gpt-5.1-codex-mini
claude --resume codex resume
权限规则 Sandbox 模式 + 审批策略
settings.json 中的 MCP 配置 config.toml 中的 MCP 配置

需要理解的关键区别:

  • Sandbox 是操作系统级别的:Codex 使用 Seatbelt/Landlock,而非容器。限制更难被绕过。
  • 无 hooks:Codex 没有与 Claude Code hooks 直接一一对应的功能。请改用 AGENTS.md 指令或 skills。
  • 无子代理:Codex 没有直接的本地子代理模型。请使用云任务或 SDK 编排来进行任务委派。
  • AGENTS.md 跨工具通用:您的 AGENTS.md 同样适用于 Cursor、Amp 和 Jules。CLAUDE.md 仅限 Claude 使用。
  • 配置文件替代手动切换:无需每次运行时更改标志,只需在 config.toml 中定义配置文件即可。

从 GitHub Copilot 迁移

Copilot 概念 Codex 对应功能
内联补全 Codex IDE 集成 + 代理工作流
聊天/代理体验 交互式 CLI 或桌面应用
copilot-instructions.md AGENTS.md
编码代理工作流 带有 sandbox/审批控制的 Codex 代理 + 云任务

您将获得: - 完整的代理能力(文件编辑、命令执行、git 操作) - 云任务委派 - 操作系统级别的沙箱隔离 - MCP 集成

从 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       
                                                               
  TUI SHORTCUTS                                                
  @              Fuzzy file search                             
  !command       Run shell command                             
  Ctrl+G         External editor                               
  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             
  managed-admin-config.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)                                            
  gpt-5.3-codex         Default flagship (272K)               
  gpt-5.3-codex-spark   Interactive, lower latency (128K)     
  gpt-5.2-codex         Long-horizon refactors (272K)         
  gpt-5.1-codex-mini    Quick tasks, cost-efficient (272K)    
                                                               
╚═══════════════════════════════════════════════════════════════╝

更新日志

日期 版本 变更内容 来源
2026-02-14 指南 v2 重大修订:经 Codex 验证的模型修正(272K 上下文)、配置键、功能标志、定价、企业配置、CI/CD action、SDK API、MCP 选项、codex exec 标志、桌面应用功能、迁移对比。移除了无法验证的内容。 自审
2026-02-12 CLI 0.101.0 模型解析改进、记忆优化、稳定性提升 25
2026-02-12 CLI 0.100.0 实验性 JS REPL、多重速率限制、WebSocket 传输、记忆命令、增强沙箱 25
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 快照 25
2026-02-06 CLI 0.98.0 GPT-5.3-Codex 支持、steer 模式稳定并设为默认、模型切换修复 25
2026-02-06 CLI 0.97.0 “允许并记住”MCP 审批、实时 skill 检测、/config 诊断、记忆管道 25
2026-02-06 CLI 0.96.0 异步线程/compact v2、WebSocket 速率限制、非 Windows unified_exec、配置来源追溯 25
2026-02-06 CLI 0.95.0 codex app 命令、个人 skills、并行 shell 工具、git 安全加固 25
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 Plan 模式默认开启、personality 稳定、来自 .agents/skills 的 skills、运行时指标 25
2026-01-29 CLI 0.93.0 SOCKS5 代理、plan 模式流式传输、/apps、智能审批默认开启、SQLite 日志 25
2026-01-29 CLI 0.92.0 API v2 线程、线程过滤、MCP OAuth 作用域、多代理协作 25
2025-12-18 GPT-5.2-Codex 发布——上下文压缩、重构/迁移、网络安全 28
2025-11-19 GPT-5.1-Codex-Max——多窗口压缩、Windows 训练、思考令牌减少30% 29
2025-10-06 Codex 在 DevDay 正式发布——Slack 集成、SDK、管理工具 30
2025-09-23 GPT-5-Codex + IDE 扩展 + CLI 改版——图像、网络搜索、代码审查 31
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) 1

参考文献


  1. GitHub — openai/codex — 开源代码仓库、版本发布与讨论。 

  2. Codex CLI Windows Support — Windows 安装与 WSL 指南。 

  3. Codex IDE Extension — VS Code、Cursor 和 Windsurf 集成。 

  4. Codex Cloud — 云端任务文档与互联网访问控制。 

  5. Codex Security — 沙箱架构与安全模型。 

  6. Apple Seatbelt 文档 — macOS sandbox-exec 框架。 

  7. Linux Landlock LSM — 内核文件系统访问控制。 

  8. How Codex CLI Flags Actually Work — 社区对标志交互行为的分析。 

  9. Breaking Out of the Sandbox — 社区沙箱配置模式。 

  10. AGENTS.md Open Standard — Linux Foundation 下的跨工具指令标准。 

  11. Custom Instructions with AGENTS.md — 官方指南。 

  12. Codex MCP Integration — MCP 服务器配置与管理。 

  13. Building Workflows with Agents SDK — 将 Codex 作为 MCP 服务器用于多智能体编排。 

  14. Agent Skills — Skills 系统文档。 

  15. Codex CLI Features — Plan 模式、Steer 模式及协作功能。 

  16. Non-Interactive Modecodex exec 文档。 

  17. Introducing the Codex App — 桌面应用发布公告。 

  18. Codex App Documentation — 桌面应用功能与故障排除。 

  19. Codex GitHub Action — CI/CD 集成。 

  20. Codex SDK — TypeScript SDK 文档。 

  21. Codex Pricing — 订阅与 API 定价。 

  22. Codex Configuration Reference — 企业托管管理员配置与 MDM。 

  23. Best Practices for Using Codex — 社区论坛讨论帖。 

  24. feiskyer/codex-settings — 社区维护的配置、Skills 和提示词集合。 

  25. Codex CLI Releases — GitHub 版本发布说明。 

  26. Introducing GPT-5.3-Codex-Spark — 与 Cerebras 合作,1000+ tok/s。 

  27. Introducing GPT-5.3-Codex — 统一模型发布。 

  28. Introducing GPT-5.2-Codex — 上下文压缩与大规模代码变更。 

  29. Building More with GPT-5.1-Codex-Max — 多窗口压缩。 

  30. Codex is Now Generally Available — DevDay 2025 公告。 

  31. Introducing Upgrades to Codex — GPT-5-Codex + IDE 扩展。 

  32. Codex CLI is Going Native — Rust 重写讨论。 

  33. Codex Updates: Internet Access and Plus Rollout — 2025年6月扩展更新。 

  34. Introducing Codex — 云端智能体发布。 

NORMAL codex.md EOF