For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
主要導覽

基本設定

瞭解如何進行 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 擴充功能共用相同的組態層。您可以透過這些組態層執行下列操作:

組態優先順序

Codex 會依下列順序決定設定值(優先順序由高至低):

  1. CLI 旗標與 --config 覆寫設定
  2. 專案設定檔:.codex/config.toml,由專案根目錄往下依序套用至目前工作目錄(距目前工作目錄最近者優先;僅限受信任的專案)
  3. 使用 --profile profile-name 選取的設定檔~/.codex/profile-name.config.toml
  4. 使用者設定:~/.codex/config.toml
  5. 雲端管理的 config.toml 預設值(若已提供給目前登入的工作區)
  6. 系統組態(若有):Unix 上的 /etc/codex/config.toml
  7. 內建預設值

依據上述優先順序,在 config.toml 中設定共用預設值,讓設定檔只需指定不同的值。

雲端管理的組態與系統組態可用來定義外掛程式市集,並設定 是否預設啟用外掛程式。這些設定與強制執行的 requirements.toml 政策各自獨立。請參閱設定外掛程式市集與預設值

若將專案標記為不受信任,Codex 會略過專案範圍的 .codex/ 組態層,包括專案本機的組態、掛勾與規則。使用者與系統組態仍會載入,包括使用者層級及全域的掛勾與規則。

如需透過 -c/--config 進行單次覆寫設定的說明(包括 TOML 引號規則),請參閱進階設定

在受管理的機器上,組織也可能透過 requirements.toml 強制施加限制(例如禁止使用 approval_policy = "never"sandbox_mode = "danger-full-access")。請參閱受管理的 組態管理員強制執行的 要求

常用組態選項

以下是幾個最常調整的選項:

預設模型

選擇 Codex 在 CLI 和 IDE 中預設使用的模型。

model = "gpt-5.6"

核准提示

控制 Codex 在哪些情況下會先暫停並要求核准,再執行產生的指令。

approval_policy = "on-request"

如需瞭解 on-requestnever 的行為差異,請參閱執行時不顯示核准提示常見的沙盒與核准組合。若現有組態使用 approval_policy = "untrusted",請參閱從已停用的 untrusted 核准政策遷移

沙盒層級

調整 Codex 執行指令時對檔案系統與網路的存取範圍。

sandbox_mode = "workspace-write"

如需瞭解各模式的行為(包括受保護的 .git/.codex 路徑與網路預設值),請參閱沙盒與核准可寫入根目錄中的受保護路徑網路存取

權限設定檔

Codex 也支援具名的權限設定檔,讓您重複使用檔案系統與 網路政策。內建設定檔包括 :read-only:workspace:danger-full-access。自訂設定檔使用 [permissions.<name>] 表格,並搭配 相符的 default_permissions 值。請參閱權限

Windows 沙盒模式

在 Windows 上原生執行 Codex 時,請在 windows 表格中將原生沙盒模式設為 elevated。只有在沒有系統管理員權限,或提升權限的設定程序失敗時,才使用 unelevated

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

網頁搜尋模式

Codex 預設會為本機對話啟用網頁搜尋,並從網頁搜尋快取提供結果。此快取是由 OpenAI 維護的網頁結果索引,因此快取模式會傳回已建立索引的結果,而非即時擷取網頁。這可降低接觸任意即時內容中提示注入的風險,但您仍應將網頁結果視為不受信任的資料。若使用 --yolo 或其他完整存取權沙盒設定,網頁搜尋預設會提供即時結果。請使用 web_search 選擇模式:

  • "cached"(預設)會從網頁搜尋快取提供結果。
  • "indexed" 僅允許通過搜尋索引存取檢查的請求存取外部網頁。
  • "live" 會從網頁擷取最新資料(與 --search 相同)。
  • "disabled" 會關閉網頁搜尋工具。
web_search = "cached"  # default; serves results from the web search cache
# web_search = "indexed" # gate external web access through the search index
# 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 API 時,針對個別討論串或回合覆寫。

TUI 按鍵對應

tui.keymap 中自訂終端快捷鍵。部分撰寫工具操作會以相符的 tui.keymap.global 按鍵綁定作為後備;若支援特定情境的按鍵綁定,則會優先使用。空清單會解除該操作的按鍵綁定。

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

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

[tui.keymap.chat]
interrupt_turn = "f12"

指令環境

控制 Codex 會將哪些環境變數傳遞給啟動的指令。使用 按鍵名設定的篩選器,只保留所需的變數:

[shell_environment_policy]
ignore_default_excludes = false

[shell_environment_policy.filters]
"PATH" = "include"
"HOME" = "include"

ignore_default_excludes 預設為 true,因此不會自動篩除 名稱包含 KEYSECRETTOKEN 的變數。若要啟用自動篩選,請將其設為 false。 如需瞭解排除規則、優先順序與 舊版組態,請參閱Shell 環境 政策

日誌目錄

變更 Codex 寫入本機日誌檔案的位置。明確設定 log_dir 也會 在該目錄中啟用需主動開啟的純文字 TUI 日誌 codex-tui.log

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

若只需執行一次,也可以透過 CLI 設定:

codex -c log_dir=./.codex-log

功能旗標

使用 config.toml 中的 [features] 表格來啟用或停用選用與實驗性功能。

常用功能旗標

預設值成熟度說明
appstrue穩定啟用應用程式(連接器)整合
goalstrue穩定啟用目標持久儲存與自動接續執行
hookstrue穩定啟用透過 hooks.json 或內嵌 [hooks] 設定的生命週期掛勾。請參閱掛勾
fast_modetrue穩定啟用快速模式選項及 service_tier = "fast" 路徑
memoriesfalse實驗性啟用記憶
multi_agenttrue穩定啟用子代理程式協作工具
personalitytrue穩定啟用個性選擇控制項
remote_plugintrue穩定啟用遠端外掛程式目錄
shell_snapshottrue穩定建立 shell 環境快照,加快重複執行指令的速度
shell_tooltrue穩定啟用預設的 shell 工具
unified_exectrue,Windows 除外穩定使用以 PTY 為基礎的統一 exec 工具
web_searchtrue已棄用舊版開關;建議優先使用頂層的 web_search 設定
web_search_cachedfalse已棄用舊版開關,未設定時對應至 web_search = "cached"
web_search_requestfalse已棄用舊版開關,未設定時對應至 web_search = "live"

此表列出常見的使用者可用旗標,並未涵蓋所有內部或 開發中的功能。「成熟度」欄使用的標籤包括 「實驗性」、「Beta」和「穩定」。如需瞭解這些標籤的意義,請參閱功能 成熟度

省略功能的設定鍵,即可保留其預設值。

如需瞭解生命週期掛勾的組態,請參閱掛勾

啟用功能

  • config.toml[features] 下新增 feature_name = true
  • 在 CLI 中執行 codex --enable feature_name
  • 若要啟用多個功能,請執行 codex --enable feature_a --enable feature_b
  • 若要停用某項功能,請在 config.toml 中將對應的設定鍵設為 false