Codex CLI 指令整理:exec、resume、mcp、sandbox 怎麼用,不用登入的我都實際跑了一遍

部分實測2026.10.13

裝好 Codex CLI 之後打 codex --help,會列出 25 個子指令和二十幾個參數。這篇整理常用的幾個:交代一句就跑完的 codex exec、接回上次對話的 codex resume、加 MCP 伺服器的 codex mcp、檢查安裝的 codex doctor,還有決定它能改什麼的沙盒模式。沙盒我實際測了,唯讀模式下寫檔和連網都被擋。我沒有登入帳號,對話裡的斜線指令是照官方文件整理的。

更新 2026/10/13・約 11 分鐘讀完・查證環境:codex --help 和各子指令的說明、沙盒測試、MCP 設定、doctor、features、debug models、plugin list,是 2026 年 10 月 13 日在一台雲端的 Linux 測試機(Ubuntu 26.04、x86_64)上用 Codex CLI 0.162.1 實際跑的,全程沒有登入。對話裡的斜線指令和快捷鍵要登入才進得去,這部分依 OpenAI 官方文件〈Developer commands〉,同一天讀取。跟 Claude Code 對照的那一欄,是我平常在用的 Claude Code

先講結論

  • 最常用的是四個。直接打 codex 進對話,codex exec "任務" 做完就結束,codex resume --last 接回上一次,codex doctor 檢查安裝。
  • 它能改什麼由 --sandbox 決定,有 read-only、workspace-write、danger-full-access 三種。我實測,唯讀模式連專案裡的檔都寫不了,workspace-write 可以寫專案和 /tmp,兩種都連不出網路。
  • 用 codex mcp add 加的設定寫在 ~/.codex/config.toml。對話裡的斜線指令官方列了 50 個,這部分我沒登入,沒有實際打過。
目錄
  1. 先分清楚兩種指令
  2. 最常用的四個
  3. 它能改什麼:兩個參數
  4. 不用登入就能跑的幾個
  5. MCP:加一個伺服器會改到哪裡
  6. 進到對話之後:斜線指令
  7. 跟 Claude Code 對照
  8. 這篇沒有測的

裝好 Codex CLI,打 codex --help,畫面列出 25 個子指令,下面還有二十幾個參數。

大部分你用不到。這篇挑常用的整理,能實際跑的我都在測試機上跑了,畫面直接貼出來。

先交代一個限制。我沒有登入 ChatGPT 帳號,所以進不去對話畫面。終端機這一層的指令,不用登入就能跑的我都跑過;進到對話之後打的斜線指令,是照官方文件整理的,文中會分開講。版本是 Codex CLI 0.162.1,日期是 2026 年 10 月 13 日。

還沒裝的話,先看Codex CLI 安裝教學。

先分清楚兩種指令

一種是在終端機打的,codex 開頭,像 codex exec、codex resume。這種是用來決定「怎麼啟動它」。

另一種是進到對話之後打的,斜線開頭,像 /status、/model。這種是在對話進行中調整東西。

前半篇講第一種,後半篇講第二種。

最常用的四個

codex:進對話

什麼都不加,直接打 codex,就進到對話畫面。

也可以在後面帶一句話,當作第一個問題:

codex "說明這個專案在做什麼"

codex exec:做完就結束

不開對話畫面,交代一件事,它做完、把結果印出來就結束。可以縮寫成 codex e。

codex exec "列出這個專案最大的五個檔案"

官方文件說這是給腳本和 CI 用的。執行過程印在 stderr,最後的回答印在 stdout,所以可以直接接到別的指令或存成檔案。

我沒登入,它跑不到回答那一步,但開頭會先印出這次執行的設定:

OpenAI Codex v0.162.1
--------
workdir: /vercel/proj
model: gpt-6.1-sol
provider: openai
approval: never
sandbox: read-only

最後兩行要留意。codex exec 預設是唯讀,而且不會停下來問你。也就是照預設跑,它只能看、不能改檔。要讓它動手,得自己放寬,下一節講。

另外它要求在 Git 管理的專案裡執行。我在一個普通資料夾裡跑,直接被拒絕,訊息寫的是這裡不是受信任的資料夾,而且我沒有加 --skip-git-repo-check。

想讓程式來讀它的輸出,加 --json,每個事件會印成一行 JSON。我看到的前兩行是這樣:

{"type":"thread.started","thread_id":"01a13465-..."}
{"type":"turn.started"}

codex resume:接回上次的對話

這個我沒辦法實測,照 --help 和官方文件寫。

codex resume 會跳出清單讓你挑一段舊對話。codex resume --last 不跳清單,直接接最近的那一次。

文件補充了一個細節,--last 只看你目前所在的資料夾。想跨資料夾找,要加 --all。

codex doctor:檢查安裝

覺得哪裡怪怪的,先跑這個。加 --summary 只看重點:

codex doctor --summary

它會一項一項列出來:版本、安裝方式、找不找得到 Git、磁碟空間、設定檔有沒有讀到、有沒有登入。我沒登入,所以有一行寫找不到登入資料,其他都是通過。

它能改什麼:兩個參數

這是整份 --help 裡最需要搞懂的部分。

--sandbox 決定它執行的指令被關在多大的範圍裡。--help 列的值有三個:read-only、workspace-write、danger-full-access。

--ask-for-approval 決定它什麼時候停下來問你。這一版 --help 列的值有兩個:on-request 是它自己判斷需要的時候才問,never 是完全不問。

官方文件給的建議是,平常在自己電腦上做事,用這個組合:

codex --sandbox workspace-write --ask-for-approval on-request

文件另外有兩個提醒。有一個叫 --dangerously-bypass-approvals-and-sandbox 的參數,會把沙盒和確認全部關掉,文件說只該在專門隔離出來的虛擬機裡用。需要讓它多寫幾個資料夾的時候,文件建議用 --add-dir 一個一個加,不要直接開 danger-full-access。

我實際測了沙盒擋什麼

Codex 有一個 codex sandbox 的子指令,可以把你指定的指令放進同一套沙盒裡執行,不用登入。我拿它在一個專案資料夾裡做了五件事,兩種模式各跑一次。

做什麼 read-only(預設) workspace-write
在專案裡寫一個檔 失敗 成功
在專案外面寫一個檔 失敗 失敗
在 /tmp 寫一個檔 失敗 成功
讀系統的檔案 成功 成功
用 curl 連外面的網站 連不出去 連不出去

失敗的時候,系統回的是 Read-only file system。連網那一項,curl 回的是找不到主機。

所以 workspace-write 的意思是:專案資料夾和暫存區可以寫,其他地方只能讀,而且預設沒有網路。

workspace-write 那一欄,我用的指令是這樣:

codex sandbox -c 'sandbox_mode="workspace-write"' -- sh -c 'echo x > in.txt'

有一件事要講清楚。在我的測試機上,這個指令直接跑會失敗,bubblewrap 抱怨權限設定不對。那是那台雲端測試機本身的環境造成的,我先用 setpriv 把多餘的權限拿掉才跑得起來。一般的電腦會不會遇到,我沒有驗證。

Mac 和 Windows 的沙盒,文件寫用的是另外的機制,我沒有測。

不用登入就能跑的幾個

這幾個是我一個一個試出來的,都不需要帳號。

codex login status 看有沒有登入。沒登入時它印 Not logged in,結束代碼是 1。文件寫有登入時是 0,寫腳本的時候可以拿來判斷。

codex features list 列出所有的功能開關。我數到 167 個,每一列有名稱、階段、目前是開是關。標成 stable 的 52 個,還在開發中的 66 個,已經移除的 41 個。想開某一個,用 codex features enable 名稱。我試了一個,它在設定檔裡加了一段 [features]。

codex debug models 印出模型目錄,是一大份 JSON。裡面的代號有 gpt-6-astra、gpt-6.1-sol、gpt-6-sol、gpt-6-luna 等十一個。前面 codex exec 印出的設定裡,模型那一行寫的就是這種代號。

codex completion zsh 印出 zsh 用的指令補完腳本,也支援 bash、fish、PowerShell。

codex plugin list 列出可以裝的外掛。我看到的是一個叫 openai-api-curated 的市集,50 個外掛,有 GitHub、Linear、Figma、Notion、Slack、Vercel、Cloudflare、Stripe 這些。剛裝好的機器上,我看到的狀態都是還沒安裝。

MCP:加一個伺服器會改到哪裡

MCP 是讓 AI 工具接上外部服務的一套標準,它本身是什麼在 MCP 是什麼,實際接一台的過程在 Claude Code MCP 教學。Codex 這邊是用 codex mcp 管理。

加一個在本機啟動的:

codex mcp add ctx7 -- npx -y @upstash/context7-mcp

加一個遠端的:

codex mcp add demo --url https://example.com/mcp

兩個都回 Added global MCP server。接著 codex mcp list 看得到它們,codex mcp get ctx7 會列出單一個的細節。

我去看了設定檔。它改的是家目錄底下的 .codex/config.toml,多了這幾行:

[mcp_servers.ctx7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]

[mcp_servers.demo]
url = "https://example.com/mcp"

官方文件也寫,MCP 的設定就是存在這個檔案裡。

拿掉用 codex mcp remove ctx7。我兩個都移除之後,設定檔裡那幾行就不見了。

我只測到「設定寫進去」這一步。這兩個伺服器實際有沒有連上、工具能不能用,要登入進到對話才看得到。

進到對話之後:斜線指令

這一節我沒有實際打過,全部照官方文件。

文件的斜線指令表有 50 列。在對話裡打一個 / 會跳出清單,邊打字邊篩選。下面是我讀完之後覺得最常會用到的:

指令 做什麼
/status 看目前的模型、權限設定、用了多少 token
/usage 看帳號的用量
/model 換模型,也可以調推理的深度
/permissions 調整它不用問就能做的範圍
/init 在目前的資料夾產生 AGENTS.md 的雛形
/compact 把目前的對話濃縮,騰出空間
/diff 看它改了什麼,包含 Git 還沒追蹤的檔案
/review 請它檢查目前還沒提交的改動
/plan 切到計畫模式,先出計畫再動手
/new、/clear 開一段新對話;/clear 會連畫面一起清掉
/resume 從清單接回舊對話
/mcp 列出設定好的 MCP 工具
/quit、/exit 離開

有一個是從別的工具搬過來的人會用到的:/import。文件寫它可以把 Claude Code 或 Cursor 的設定、專案和對話匯進 Codex。

文件還列了幾個輸入時的快捷操作。打 @ 可以搜尋專案裡的檔案、把路徑加進來。一行的開頭打 !,後面接的會當成 shell 指令直接執行。輸入框是空的時候連按兩次 Esc,可以回去改上一句。按 Ctrl+C 離開。

跟 Claude Code 對照

兩個工具做的事一樣,指令也對得起來。Claude Code 這一欄是我平常在用的。

做什麼 Claude Code Codex
問一句就結束 claude -p "..." codex exec "..."
接回最近的對話 claude -c codex resume --last
從清單挑舊對話 claude -r codex resume
專案說明檔 CLAUDE.md AGENTS.md
加 MCP 伺服器 claude mcp add codex mcp add
檢查安裝 claude doctor codex doctor

有一個預設值差很多,換工具的時候要留意。Claude Code 用 -p 的時候,改檔會因為沒有人能按同意而改不了。Codex 的 exec 則是預設就關在唯讀的沙盒裡。兩邊結果一樣是「預設不會動你的檔案」,但放寬的方式不同。

Claude Code 這邊的細節在Claude Code CLI 指令整理。兩個工具的價格和功能,並排在Claude Code 跟 Codex 怎麼選。

這篇沒有測的

登入之後的一切。對話畫面、斜線指令、快捷鍵、codex resume,還有 codex exec 真的做完一件事的樣子。

danger-full-access 模式。

MCP 伺服器實際連線。

Mac 和 Windows 上的沙盒。

常見問題

codex exec 是做什麼的?

不開對話畫面,交代一件事讓它做完就結束。官方文件說是給腳本和 CI 用的,可以縮寫成 codex e。它要求在 Git 管理的專案裡執行,不然要加 --skip-git-repo-check。

Codex CLI 怎麼接回上次的對話?

照 codex resume --help 的說明,codex resume 會跳出清單讓你挑,codex resume --last 直接接最近的一次。官方文件補充,--last 只看目前這個資料夾,加 --all 才會跨資料夾找。我沒有登入,這個沒有實際接過。

Codex 的沙盒模式有哪幾種?

--sandbox 可以填 read-only、workspace-write、danger-full-access。前兩種我用 codex sandbox 實測過:read-only 什麼都不能寫;workspace-write 可以寫專案資料夾和 /tmp,專案外面不行;兩種都連不出網路。

Codex CLI 怎麼加 MCP 伺服器?

codex mcp add 名字 -- 啟動指令,遠端的用 codex mcp add 名字 --url 網址。我實際加過,設定會寫進 ~/.codex/config.toml,用 codex mcp list 看、codex mcp remove 拿掉。

這篇怎麼查證的

這篇只有一部分實際跑過,其餘依官方文件整理,查證日期 2026/10/13(codex --help 和各子指令的說明、沙盒測試、MCP 設定、doctor、features、debug models、plugin list,是 2026 年 10 月 13 日在一台雲端的 Linux 測試機(Ubuntu 26.04、x86_64)上用 Codex CLI 0.162.1 實際跑的,全程沒有登入。對話裡的斜線指令和快捷鍵要登入才進得去,這部分依 OpenAI 官方文件〈Developer commands〉,同一天讀取。跟 Claude Code 對照的那一欄,是我平常在用的 Claude Code)。哪些有跑、哪些沒跑,文中各段有寫。價格與方案以官方頁面為準,工具改版後內容可能過期。