English
主导航

配置基础

学习配置本地 Codex 客户端的基础知识

Codex 会从多个位置读取配置详情。您的个人默认配置存放在 ~/.codex/config.toml,你还可以通过以下方式添加项目级覆盖: .codex/config.toml 文件中。出于安全考虑,Codex 仅在您信任该项目时才会加载项目 .codex/ 层。

Codex 配置文件

Codex 将用户级别的配置存储在 ~/.codex/config.toml。要将设置的作用域限定到特定项目或子文件夹,请添加 .codex/config.toml 仓库中的文件。

要在 Codex IDE 扩展中打开配置文件,请选择右上角的齿轮图标,然后选择 Codex 设置 > 打开 config.toml.

CLI 和 IDE 扩展共享相同的配置层。您可以使用它们来:

  • 设置默认模型和提供者。
  • 在能够访问您私有 MCP 服务器的网络内部运行。 审批策略和沙箱设置.
  • 在能够访问您私有 MCP 服务器的网络内部运行。 MCP 服务器.

配置优先级

Codex 按以下顺序解析值(优先级从高到低):

  1. CLI 标志和 --config 覆盖
  2. 项目配置文件: .codex/config.toml,从项目根目录向下排序到你当前的工作目录(最接近者优先;仅限受信任的项目)
  3. 配置文件 选定的文件 --profile profile-name (~/.codex/profile-name.config.toml)
  4. 用户配置: ~/.codex/config.toml
  5. 系统配置(如果存在): /etc/codex/config.toml 在 Unix 上
  6. 内置默认值

使用该优先级在 config.toml and keep 配置文件 中设置共享默认值,重点关注不同的值。

如果您将某个项目标记为不受信任,Codex 将跳过项目范围的 .codex/ 层,包括项目本地配置、钩子和规则。用户和系统配置仍会加载,包括用户/全局钩子和规则。

For one-off overrides via -c/--config (包括 TOML 引用规则),请参见 高级配置.

在受管理的计算机上,您的组织可能还会通过以下方式强制执行约束: requirements.toml (例如,禁止 approval_policy = "never" or sandbox_mode = "danger-full-access")。请参见 托管配置 and 管理员强制要求.

常用配置选项

以下是人们最常更改的几个选项:

默认模型

选择 Codex 在 CLI 和 IDE 中默认使用的模型。

model = "gpt-5.5"

批准提示

控制 Codex 在运行生成的命令之前何时暂停请求批准。

approval_policy = "on-request"

For behavior differences between untrusted, on-request,且 never,请参见 运行而无需批准提示 and 常见的沙箱和审批组合.

沙盒级别

调整 Codex 在执行命令时拥有多少文件系统和网络访问权限。

sandbox_mode = "workspace-write"

有关各模式下的行为(包括受保护的 .git/.codex 路径和网络默认设置),请参见 沙盒与审批, 可写根目录中的受保护路径,且 网络访问.

权限配置文件

Codex 还支持命名的权限配置文件,用于可复用的文件系统和网络策略。内置配置文件包括 :read-only, :workspace,且 :danger-full-access. Custom profiles use [permissions.<name>] tables and a matching default_permissions 值。请参阅 权限.

Windows 沙盒模式

在 Windows 上原生运行 Codex 时,请将原生沙盒模式设置为 elevated in the windows 表。使用 unelevated 仅在你没有管理员权限或提权设置失败时使用。

[windows]
sandbox = "elevated"   # Recommended
# sandbox = "unelevated" # Fallback if admin permissions/setup are unavailable

网页搜索模式

Codex 默认为本地任务启用网络搜索,并从网络搜索缓存中返回结果。该缓存是 OpenAI 维护的网络结果索引,因此缓存模式会返回预先索引的结果,而不是获取实时页面。这降低了对任意实时内容遭受提示注入的风险,但你仍应将网络结果视为不受信任的。如果你正在使用 --yolo or another 完全访问沙盒设置,网络搜索默认返回实时结果。请使用以下选项选择模式: web_search:

  • "cached" (默认)从网络搜索缓存中返回结果。
  • "live" 从网络上获取最新数据(同 --search).
  • "disabled" 关闭网络搜索工具。
web_search = "cached"  # default; serves results from the web search cache
# web_search = "live"  # fetch the most recent data from the web (same as --search)
# web_search = "disabled"

推理努力

调整模型在受支持时应用多少推理工作量。

model_reasoning_effort = "high"

沟通风格

为受支持的模型设置默认的沟通风格。

personality = "friendly" # or "pragmatic" or "none"

你可以在之后的活跃会话中使用 /personality 或在使用 app-server APIs 时按线程/轮次计算。

TUI 键盘映射

自定义终端快捷键于 tui.keymap。特定上下文的绑定会覆盖 tui.keymap.global,并且空列表会解除该操作的绑定。

[tui.keymap.global]
open_transcript = "ctrl-t"

[tui.keymap.composer]
submit = ["enter", "ctrl-m"]

命令环境

控制 Codex 将哪些环境变量转发给生成的命令。

[shell_environment_policy]
include_only = ["PATH", "HOME"]

日志目录

覆盖 Codex 写入本地日志文件(如 codex-tui.log.

log_dir = "/absolute/path/to/codex-logs"

对于一次性运行,也可以从 CLI 中进行设置:

codex -c log_dir=./.codex-log

功能开关

使用 [features] 表,位于 config.toml 以切换可选和实验性功能。

[features]
shell_snapshot = true           # Speed up repeated commands

支持的功能

默认值成熟度描述
appsfalse实验性启用 ChatGPT Apps/连接器支持
codex_git_commitfalse实验性启用 Codex 生成的 git 提交及提交署名尾注
hookstrue稳定版启用生命周期钩子,来自 hooks.json or inline [hooks]。请参阅 钩子.
fast_modetrue稳定版启用快速模式选择及 service_tier = "fast" path
memoriesfalse稳定版启用 记忆
multi_agenttrue稳定版启用子智能体协作工具
personalitytrue稳定版启用个性选择控件
shell_snapshottrue稳定版快照您的 shell 环境以加速重复命令
shell_tooltrue稳定版启用默认设置 shell 工具
unified_exectrue Windows 除外稳定版使用统一的 PTY 支持的 exec 工具
undofalse稳定版通过每轮 git 幽灵快照启用撤销功能
web_searchtrue已弃用旧版开关;优先使用顶层 web_search 设置
web_search_cachedfalse已弃用旧版开关,映射至 web_search = "cached" 未设置时
web_search_requestfalse已弃用旧版开关,映射至 web_search = "live" 未设置时

成熟度列使用了诸如 Experimental、Beta 和 Stable 等功能成熟度标签。请参阅 功能成熟度 了解如何解读这些标签。

省略功能键以保留其默认值。

有关生命周期钩子的配置,请参见 钩子.

启用功能

  • In config.toml,添加 feature_name = true[features].
  • From the CLI, run codex --enable feature_name.
  • 要启用多个功能,请运行 codex --enable feature_a --enable feature_b.
  • 要禁用某个功能,请将对应的键设为 false in config.toml.