使用命令列版 Codex
Codex CLI 是 OpenAI 的本地 coding agent,可以在終端裡讀取程式碼、修改程式碼、執行命令,並把結果交給你審查。
這一篇用 10 分鐘換什麼:把 Codex CLI 從"一個命令"重新理解成一套終端 agent 的入口——互動式 TUI、exec 指令碼化、cloud 委派、mcp 接入、sandbox 與 approval 雙層邊界。讀完後你會知道哪種場景該用哪種啟動姿勢。
Codex CLI 是 OpenAI 的 coding agent(程式設計 Agent),可以從你的終端本地執行。它能在你選定的目錄裡讀取程式碼、修改程式碼,並執行程式碼。
flowchart LR
CLI["⚡ codex"]
Local["💻 本地 TUI<br/>codex / codex resume / codex fork"]
Exec["📜 指令碼化<br/>codex exec"]
Cloud["☁️ 雲端<br/>codex cloud / apply"]
Ext["🔌 擴充套件<br/>codex mcp / features / sandbox"]
Sec{"🔐 安全雙層"}
SB["sandbox<br/>read-only / workspace-write / danger"]
AP["approval<br/>on-request / never"]
CLI --> Local
CLI --> Exec
CLI --> Cloud
CLI --> Ext
CLI --> Sec
Sec --> SB
Sec --> AP
Codex CLI 是開源專案:
https://github.com/openai/codex
它使用 Rust 構建,重點是速度和效率。
ChatGPT Plus、Pro、Business、Edu 和 Enterprise 套餐都包含 Codex。你可以在官方 pricing(價格)頁面瞭解具體包含內容:
https://developers.openai.com/codex/pricing
官方頁面還提供了一個 Codex CLI overview(Codex CLI 概覽)影片:
title Codex CLI overview
videoId iqNzfK4_meQCLI 設定
Codex CLI 支援 macOS、Windows 和 Linux。
在 Windows 上,你可以在 PowerShell 中原生執行 Codex,並使用 Windows sandbox(Windows 沙箱)。如果你需要 Linux-native environment(原生 Linux 環境),可以使用 WSL2。
Windows 設定細節見官方 Windows setup guide:
https://developers.openai.com/codex/windows
如果你是 Codex 新手,建議閱讀官方 best practices guide:
https://developers.openai.com/codex/learn/best-practices
什麼時候選 CLI
優先選擇 CLI 的場景:
- 你已經在 terminal 中工作,並希望 Codex 直接使用當前 repo。
- 任務需要跑本地測試、lint、build 或指令碼。
- 你想用
~/.codex/config.toml控制模型、sandbox、approval 和 MCP。 - 你要把 Codex 接入指令碼、CI 或批處理。
- 你需要
codex exec、codex mcp、codex resume、codex sandbox等命令。
不適合優先選 CLI 的場景:
- 你主要想要桌面多執行緒、worktree、review pane 和 GUI diff。
- 你希望在 GitHub 裡直接委託 cloud task。
- 你不熟悉 terminal,也沒有本地開發環境。
使用 Codex CLI 工作
互動式執行 Codex
執行 codex,啟動一個 interactive terminal UI(互動式終端介面,也就是 TUI)會話。
官方對應頁面:
https://developers.openai.com/codex/cli/features#running-in-interactive-mode
控制模型和推理
使用 /model 可以在 GPT-5.4、GPT-5.3-Codex 以及其他可用模型之間切換,也可以調整 reasoning levels(推理強度)。
官方對應頁面:
https://developers.openai.com/codex/cli/features#models-reasoning
圖片輸入
你可以附加截圖或設計稿,讓 Codex 在閱讀提示詞的同時參考這些圖片。
官方對應頁面:
https://developers.openai.com/codex/cli/features#image-inputs
圖片生成
你可以直接在 CLI 裡生成或編輯圖片。如果希望 Codex 基於已有素材迭代,也可以附加參考圖。
官方對應頁面:
https://developers.openai.com/codex/cli/features#image-generation
執行原生代碼審查
在 commit 或 push 之前,可以讓另一個 Codex agent(Codex Agent)審查你的程式碼。
官方對應頁面:
https://developers.openai.com/codex/cli/features#running-local-code-review
使用 subagents
使用 subagents(子 Agent)可以並行處理複雜任務。
官方對應頁面:
https://developers.openai.com/codex/subagents
網頁搜尋
你可以讓 Codex 搜尋網頁,為當前任務獲取最新資訊。
官方對應頁面:
https://developers.openai.com/codex/cli/features#web-search
Codex Cloud 任務
你可以從終端發起 Codex Cloud 任務,選擇 environments(環境),並在不離開終端的情況下應用任務產生的 diffs(差異改動)。
官方對應頁面:
https://developers.openai.com/codex/cli/features#working-with-codex-cloud
把 Codex 指令碼化
你可以用 exec command(exec 命令)把 Codex 指令碼化,自動執行可重複的工作流。
官方對應頁面:
https://developers.openai.com/codex/noninteractive
Model Context Protocol(MCP)
透過 Model Context Protocol(MCP,模型上下文協議),你可以給 Codex 接入更多第三方工具和上下文。
官方對應頁面:
https://developers.openai.com/codex/mcp
審批模式
在 Codex 編輯檔案或執行命令之前,你可以選擇適合自己風險承受程度的 approval mode(審批模式)。
官方對應頁面:
https://developers.openai.com/codex/cli/features#approval-modes
常用命令地圖
| 命令 | 用途 | 適合場景 |
|---|---|---|
codex | 啟動 interactive TUI | 日常本地開發和探索 |
codex exec / codex e | 非互動執行 Codex | CI、指令碼、批處理、結構化輸出 |
codex resume | 繼續舊會話 | 回到之前的上下文 |
codex fork | fork 舊會話到新 thread | 保留歷史,同時嘗試另一條路線 |
codex apply | 應用 Codex Cloud task 的 diff | 從雲端任務回到本地工作樹 |
codex cloud | 在終端管理 cloud tasks | 不開啟 Web UI 的 cloud workflow |
codex login / logout | 登入或移除憑據 | 初始化和賬號切換 |
codex mcp | 管理 MCP servers | 接入外部工具和上下文 |
codex features | 管理 feature flags | 開關穩定或實驗能力 |
codex sandbox | 用 Codex sandbox 執行命令 | 除錯 sandbox 行為 |
codex app | 從終端啟動 Codex Desktop | CLI 和桌面 app 聯動 |
codex app-server | 啟動 app server | 遠端 TUI 或富客戶端除錯 |
官方 command reference 會標註 Stable、Experimental 等 maturity。新手優先使用 Stable 命令;Experimental 命令要按除錯或內部整合看待,不要當成長期 API 承諾。
推薦啟動引數
低風險本地開發:
codex --sandbox workspace-write --ask-for-approval on-request只讀分析:
codex --sandbox read-only --ask-for-approval on-request非互動任務:
codex exec --sandbox workspace-write --ask-for-approval never "Run lint and summarize failures"需要 live web search:
codex --search不要在普通工作目錄裡使用:
codex --dangerously-bypass-approvals-and-sandbox這個模式會繞過 approvals 和 sandbox,只適合外部已經隔離好的 runner、VM 或 disposable container。
CLI 工作流正規化
解釋專案
Tell me about this project. Focus on architecture, entry points, build commands, and the safest first change.適合新接手程式碼庫。先讓 Codex 讀結構和指令碼,不要直接改程式碼。
小範圍修 bug
Reproduce the failing test, identify the smallest responsible code path, fix only that bug, and run the narrowest relevant test.關鍵是要求 reproduce、localize、minimal fix、prove。
本地 code review
Review my unstaged changes for bugs, missing tests, and risky behavior. Do not edit files. Return findings with file paths and evidence.先只讀 review,再決定是否讓 Codex 修改。
指令碼化執行
codex exec --json --output-last-message /tmp/codex-summary.md "Audit this package and report only actionable failures"--json 適合下游程式消費事件,--output-last-message 適合保留最終摘要。
安全邊界
CLI 的核心安全配置來自兩層:
sandbox:Codex 技術上能訪問和修改什麼。approval:Codex 什麼時候必須暫停請求許可。
常見組合:
| 組合 | 用途 |
|---|---|
read-only + on-request | 只讀調研、review、方案 |
workspace-write + on-request | 日常本地開發 |
workspace-write + never | 受控自動化 |
danger-full-access + never | 外部隔離環境內的高許可權自動化 |
需要額外目錄寫許可權時,優先用 --add-dir,不要直接切到 full access。
新手完成標準
第一次使用 CLI,建議完成這套閉環:
codex login status確認登入。- 在 Git repo root 執行
codex。 - 用只讀 prompt 讓 Codex 解釋專案。
- 用小任務讓 Codex 修改一處低風險檔案。
- 讓 Codex 跑最小驗證命令。
- 用
git diff審查改動。 - 只在確認後提交。