調整 IDE 擴充套件設定
Codex IDE extension settings 用來調整 IDE 裡的 Codex 使用體驗。
這一篇用 8 分鐘換什麼:把 Codex 的設定面分清楚——哪些歸 IDE extension 管(字號、側邊欄、WSL 開關),哪些歸 ~/.codex/config.toml 管(模型、approval、sandbox、網路)。讀完之後你不會再把 UI 偏好誤當成安全策略。
Codex IDE extension settings 是編輯器裡的 Codex 體驗層:字型、側邊欄啟動、語言偏好、待辦 CodeLens、Windows WSL 執行方式。它不是 Codex 的全部配置中心。
真正影響 agent 執行邊界的預設模型、approval policy、sandbox mode、network access 等,仍然屬於共享的 ~/.codex/config.toml。IDE settings 負責編輯器體驗,config.toml 負責 Codex CLI 和 IDE extension 共用的執行策略。
flowchart TB
User["👤 想調整 Codex 行為"]
Q{"調整什麼?"}
A["📺 UI / 字號 / 啟動行為<br/>語言 / WSL 開關"]
B["🔐 模型 / approval<br/>sandbox / 網路訪問"]
C["⚡ 臨時切模式<br/>臨時聚焦本任務"]
IDE["IDE extension settings<br/>VS Code / Cursor / Windsurf"]
TOML["~/.codex/config.toml<br/>CLI 與 IDE 共享"]
Session["Codex 面板 / slash<br/>啟動引數"]
User --> Q
Q -->|UI 體驗| A --> IDE
Q -->|執行邊界| B --> TOML
Q -->|本次會話| C --> Session
Change a setting
修改設定按下面步驟:
- 開啟 editor settings(編輯器設定)。
- 搜尋
Codex或具體 setting name(設定名)。 - 更新 value(值)。
Codex IDE extension 底層使用 Codex CLI。有些行為不在 editor settings 裡配置,而是在共享的 ~/.codex/config.toml 檔案中配置,例如:
- default model(預設模型)
- approval policy(審批策略)
- sandbox settings(沙箱設定)
- network access(網路訪問)
配置基礎見:
https://developers.openai.com/codex/config-basic
Extension 也會遵循 VS Code 內建 chat font settings(聊天字型設定),用於 Codex conversation surfaces(對話介面)。
設定分層
實際配置時先分清三層:
| 層級 | 放在哪裡 | 適合配置什麼 | 不適合配置什麼 |
|---|---|---|---|
| Editor settings | VS Code / Cursor / Windsurf 的 settings | UI 字號、語言、啟動行為、WSL 開關、待辦 CodeLens | sandbox、approval、預設模型策略 |
| Codex config | ~/.codex/config.toml | 模型、approval、sandbox、可寫目錄、網路策略 | 編輯器 UI 偏好 |
| 單次會話 | Codex 面板、slash command、啟動引數 | 臨時切換模式、臨時調整許可權、臨時聚焦當前任務 | 團隊長期預設值 |
這種分層的好處是:團隊可以把安全和執行邊界寫進 config.toml 或 managed config,本地使用者仍然可以微調 IDE 使用體驗,不會把 UI 習慣誤當成安全策略。
Settings reference
| Setting | Description |
|---|---|
chat.fontSize | 控制 Codex sidebar 中 chat text(聊天文本)的字號,包括 conversation content(對話內容)和 composer(輸入區)。 |
chat.editor.fontSize | 控制 Codex conversations 中 code-rendered content(程式碼渲染內容)的字號,包括 code snippets(程式碼片段)和 diffs(差異)。 |
chatgpt.cliExecutable | 僅 development(開發)使用:Codex CLI executable(執行檔)的路徑。除非你正在主動開發 Codex CLI,否則不需要設定。手動設定後,extension 的部分能力可能無法按預期工作。 |
chatgpt.commentCodeLensEnabled | 在 to-do comments 上方顯示 CodeLens,讓你可以用 Codex 完成這些待辦。 |
chatgpt.localeOverride | Codex UI 的 preferred language(首選語言)。留空則自動檢測。 |
chatgpt.openOnStartup | Extension 啟動完成後,自動 focus(聚焦)Codex sidebar。 |
chatgpt.runCodexInWindowsSubsystemForLinux | 僅 Windows:當 Windows Subsystem for Linux(WSL)可用時,在 WSL 中執行 Codex。當 repositories 和 tooling 位於 WSL2,或你需要 Linux-native tooling 時使用。否則,Codex 可以配合 Windows sandbox 在 Windows 上原生執行。修改這個設定會 reload VS Code,使變更生效。 |
關鍵設定怎麼選
聊天和程式碼字號
如果你覺得 Codex 面板裡的正文太小,先改 chat.fontSize。如果只是程式碼塊、diff、inline code 的字號不合適,改 chat.editor.fontSize。
這兩個設定來自 VS Code 內建 chat font settings,Codex extension 會遵循它們。它們隻影響閱讀體驗,不影響模型輸出、不影響上下文大小,也不改變 diff 的實際內容。
CLI executable
chatgpt.cliExecutable 是 development-only 設定。普通使用者不要配置它。
只有在你正在開發 Codex CLI 本身,或者需要讓 extension 指向本地構建的 CLI binary 時,才需要設定這個路徑。手動指向錯誤的 executable,可能導致 IDE extension 的部分能力表現異常,例如版本不匹配、命令不可用、面板狀態不同步。
待辦 CodeLens
chatgpt.commentCodeLensEnabled 會在待辦註釋上方顯示入口,讓你可以直接讓 Codex 處理選中的待辦項。
適合開啟的場景:
- 團隊習慣把小修複寫成待辦註釋。
- 你希望從程式碼附近直接發起任務,不想先複製上下文到 chat。
- 你在整理技術債,希望逐條把待辦變成可執行任務。
不適合開啟的場景:
- 儲存庫裡歷史待辦註釋很多,編輯器介面已經很擁擠。
- 團隊把待辦註釋當作長期註釋,而不是行動項。
- 你正在錄屏或演示,不希望頁面出現額外 CodeLens。
Language override
chatgpt.localeOverride 控制 Codex UI 的首選語言。留空時自動檢測。
教程站、雙語團隊或中文開發者常見做法是:UI 可以保持中文,但 prompt、命令、檔案路徑、錯誤文本保留英文原文。這樣既方便閱讀,也不丟失技術細節。
Open on startup
chatgpt.openOnStartup 會在 extension 啟動完成後聚焦 Codex sidebar。
如果你的 IDE 主要用來和 Codex 協同開發,可以開啟;如果你經常只想快速看程式碼,建議關閉,避免每次啟動都打斷當前檔案檢視。
Windows WSL 模式
chatgpt.runCodexInWindowsSubsystemForLinux 是 Windows-only 設定。開啟後,只要 WSL 可用,Codex 就在 WSL 中執行。
適合開啟:
- 儲存庫實際位於 WSL2 檔案系統。
- 構建、測試、包管理都依賴 Linux 工具鏈。
- 你希望 IDE extension 的命令、審批、檔案訪問語義和 Linux sandbox 更一致。
適合保持關閉:
- 儲存庫和工具鏈都在 Windows 原生環境。
- 你正在使用 Windows sandbox。
- 團隊成員不統一使用 WSL2,配置後反而增加環境差異。
修改這個設定會 reload VS Code 才生效。
推薦配置流程
- 先安裝 Codex IDE extension,並確認能登入。
- 開啟一個真實專案,用預設設定完成一次小任務,例如解釋專案結構。
- 只調整 UI 類設定:字號、語言、是否啟動自動開啟。
- 如果是在 Windows 上,再決定是否強制 WSL2。
- 把模型、sandbox、approval、network access 放回
~/.codex/config.toml管理。 - 調整後重開 IDE,跑一次只讀任務和一次小 diff 任務確認行為符合預期。
常見誤區
| 誤區 | 正確理解 |
|---|---|
| 在 IDE settings 裡能配置所有 Codex 行為 | IDE settings 只覆蓋 extension 體驗層,執行策略主要在 config.toml |
| 改字型會影響模型輸出 | 字號隻影響顯示,不影響上下文和生成結果 |
普通使用者需要設定 chatgpt.cliExecutable | 這是開發 Codex CLI 時才需要的設定 |
| Windows 使用者一定要開 WSL | 只有儲存庫或工具鏈在 WSL2 時才優先考慮 |
開啟 openOnStartup 會讓 Codex 自動工作 | 它只聚焦側邊欄,不會自動執行任務 |
自檢清單
- 你是否知道哪些設定屬於 IDE,哪些屬於
~/.codex/config.toml? - Windows 使用者是否確認儲存庫位置和工具鏈是在 Windows 還是 WSL2?
- 是否避免給
chatgpt.cliExecutable配一個不確定的路徑? - 調整後是否至少跑過一次只讀任務和一次小修改任務?
- 團隊共享配置是否沒有被個人 UI 偏好汙染?