附錄 B
名詞對照與 Claude Code 遷移表
這份附錄是你的「翻譯字典」加「搬家清單」。
想像你剛換了一支新手機:很多功能其實都在,只是名字變了、按鈕換了位置。如果你之前用過 Anthropic 的 Claude Code(另一套住在終端機裡的 AI 工程師),那 Codex CLI 對你來說就像「換系統的同一台機器」——觀念幾乎相通,只是名詞和指令要重新對一次。就算你沒用過 Claude Code 也別擔心,本附錄前半段是「中英名詞對照」,純查字典也很好用。
本附錄分兩塊:
- B.1 中英名詞速查:把全書出現的關鍵字一次列清楚,看到不懂的詞就回這裡查。
- B.2~B.5 給 Claude Code 使用者的遷移表:
claude→codex一一對應,還有照著做就能搬家的落實清單。
重要提醒
Codex CLI 改版很快,逐字旗標、設定鍵、模型名稱都可能變。本附錄所有指令都對齊 2026-06-18 的官方文件(對照 Codex CLI 0.140.0);執行前請以實機 codex --help / codex <子命令> --help / /model 為準。
B.1 中英名詞速查表
第一次碰到一個英文詞卡住很正常。下面這張表把全書的核心名詞集中起來,左邊是你會看到的詞,中間是白話解釋,右邊告訴你「詳見第幾章」可以看更完整的說明。
核心角色與身分
| 名詞 | 白話解釋 | 詳見 |
|---|---|---|
| Codex CLI | 住在終端機(命令列視窗)裡、會自己讀檔改檔跑指令的 AI 工程師 | 第 0 章 |
| agent(代理) | 會「自己動手」完成任務的 AI,不只是回答問題,而是真的去改你的檔案、跑你的指令 | 第 0 章 |
| TUI | Terminal User Interface,終端機裡的互動畫面(有輸入框、對話紀錄、狀態列),跑 codex 就會進去 | 第 4 章 |
| prompt(提示詞) | 你打給 AI 的那段話,也就是「你要它做什麼」的指令 | 第 4 章 |
| session / thread(對話 / 執行緒) | 一次完整的對話過程;一個任務開一條 thread,事後可以續接 | 第 7 章 |
記憶與設定
| 名詞 | 白話解釋 | 詳見 |
|---|---|---|
| AGENTS.md | 放在專案裡的「工作守則手冊」,Codex 動工前會先讀它(開放標準,跨工具通用) | 第 5 章 |
| config.toml | Codex 的「偏好設定面板」,用 TOML 格式寫,放在 ~/.codex/config.toml | 第 8 章 |
| profile(設定組合包) | 針對不同情境(例如「放手自動跑」)的一整套設定,用 --profile 切換 | 第 8 章 |
| profile overlay(設定疊加) | profile 不是整組取代,而是「疊」在 base config 上——你只在 profile 裡寫要改的鍵,其餘沿用 base。多情境共用一份底再各自微調 | 第 8 章 |
| AGENTS.override.md | 子目錄裡的「臨時覆寫檔」,疊在該層 AGENTS.md 之上但不刪 base;事後刪掉 override 就還原 | 第 5 章 |
| CODEX_HOME | Codex 放設定與憑證的資料夾,預設是 ~/.codex | 第 8 章、第 13 章 |
| Memories(記憶) | 由 Codex 自己寫下、跨對話記住的筆記(需開 [features] memories = true),和你手寫的 AGENTS.md 是不同層 | 第 5 章、第 7 章 |
安全與權限(雙軸)
| 名詞 | 白話解釋 | 詳見 |
|---|---|---|
| sandbox(沙箱) | 給 AI 畫的「活動範圍圍欄」,決定它能讀哪、能寫哪、能不能上網 | 第 6 章 |
| approval(批准 / 核准) | 在做危險動作前「要不要先問你一聲」的政策 | 第 6 章 |
| preset(預設組合) | 把沙箱+核准兩軸打包好的常用組合,三大 preset:Read Only / Auto / Full Access | 第 6 章 |
| Read Only / Auto / Full Access | 三種預設安全等級:唯讀 / 在工作目錄內可改+受限自動跑(預設) / 全開放(最危險) | 第 6 章 |
--yolo | --dangerously-bypass-approvals-and-sandbox 的別名,拆掉所有保護,只在隔離環境用 | 第 6 章 |
| Seatbelt | macOS 的核心層沙箱機制(透過 sandbox-exec 執行) | 第 6 章 |
| bubblewrap(bwrap)+ seccomp | Linux 的預設沙箱機制(需先裝 bubblewrap) | 第 6 章 |
模型與推理
| 名詞 | 白話解釋 | 詳見 |
|---|---|---|
| model(模型) | AI 的「大腦版本」,例如文件範例出現的 gpt-5.5;確切清單以 /model 實機為準 | 第 4 章 |
| reasoning effort(推理強度) | AI「想多深」的離散等級:minimal / low / medium / high / xhigh(xhigh 視模型而定) | 第 4 章 |
工具與自動化
| 名詞 | 白話解釋 | 詳見 |
|---|---|---|
| MCP | Model Context Protocol,給 AI 接上「外掛工具箱」的標準插座 | 第 9 章 |
| MCP server-mode 依賴 | 一個 skill 可在 agents/openai.yaml 的 dependencies.tools 直接宣告它要的 MCP server,安裝即自動接好,不必手動編 [mcp_servers.*](受 features.skill_mcp_dependency_install 控制,預設開) | 第 9 章、第 12 章 |
| skill(技能) | 可重用、可分享、可自動觸發的「技能卡」,放在 .agents/skills/<name>/SKILL.md | 第 12 章 |
agents/openai.yaml | skill 的選配設定檔:放 UI 資訊(顯示名/圖示/品牌色)、policy.allow_implicit_invocation 開關、dependencies 掛 MCP server | 第 12 章 |
allow_implicit_invocation | skill 的「隱式觸發開關」(預設 true);設 false → Codex 不會自己依 prompt 觸發,只認你親手打 $skill。危險 skill(部署/migration)用它當安全閂 | 第 12 章 |
| plugin(外掛) | skills 的「安裝散佈單位」,一個 plugin 可打包多個 skills | 第 12 章 |
| custom prompt(自訂指令) | 舊版的可重用指令(放 ~/.codex/prompts/*.md),已棄用(≥ 0.117.0 已從選單消失),官方建議改用 skills | 第 12 章 |
| subagent(子代理) | 主 agent 派出去的分身,定義檔放 .codex/agents/*.toml,用 /agent 切換。內建三角色:default / worker(實作) / explorer(唯讀探索) | 第 11 章 |
spawn_agents_on_csv | 批次扇出工具(官方明標 experimental):讀一個 CSV、每列生一個 worker、套範本指令、等全部完成、結果匯出新 CSV(每 worker 須恰好呼叫一次 report_agent_job_result) | 第 11 章 |
| hook(生命週期掛鉤) | 在 agent loop 的特定時機(工具執行前/後、回合結束…)自動跑你的腳本,放 .codex/hooks.json 或 config 內 [[hooks.*]]。是把「文字規則」升級成「機械閘門」的官方原生機制 | 第 11 章 |
codex exec | 非互動模式(別名 codex e),寫好一句話塞進機器自動跑,適合腳本與 CI | 第 10 章 |
| rollout(對話存檔) | Codex 把每段對話存成檔,讓你日後 codex resume 續接的紀錄檔 | 第 7 章 |
auth.json | 存登入憑證的檔(含 access token,視同密碼),在 $CODEX_HOME/auth.json | 第 3 章 |
小技巧
看到不認得的旗標(以 -- 開頭的那種,例如 --sandbox)或子命令(codex 後面接的那個字,例如 codex exec),先翻 附錄 A 指令與旗標速查,那裡有最完整的逐字對照。
B.2 一張表看懂 Claude Code → Codex
如果你是 Claude Code 老手,這一節就是你的「搬家對照表」。左邊是你熟悉的 Claude Code 寫法,右邊是 Codex CLI 的對應做法。
好消息
八成的觀念都通用,你只要記「名字換了、指令換了」就好,不用重學心智模型。
| 概念 | Claude Code | Codex CLI | 狀態 |
|---|---|---|---|
| 啟動 | claude | codex | ✅ 確認 |
| 非互動執行 | claude -p "..." | codex exec "..."(別名 codex e) | ✅ 確認 |
| 專案記憶檔 | CLAUDE.md | AGENTS.md(開放標準) | ✅ 確認 |
| 全域記憶檔 | ~/.claude/CLAUDE.md | ~/.codex/AGENTS.md(另有 AGENTS.override.md) | ✅ 確認 |
| 設定檔 | ~/.claude/settings.json(JSON) | ~/.codex/config.toml(TOML) | ✅ 確認 |
| 設定目錄環境變數 | CLAUDE_CONFIG_DIR | CODEX_HOME(預設 ~/.codex) | ✅ 確認 |
| 權限模型 | 單一 permissions(allow/deny + 模式) | 雙軸:approval_policy + sandbox_mode | ✅ 確認 |
| 自動接受編輯 | acceptEdits | --sandbox workspace-write --ask-for-approval never | ✅ 確認 |
| 繞過全部保護 | bypassPermissions | --yolo(但 Codex 另有 kernel 層 sandbox) | ✅ 確認 |
| Sandbox 實作 | 應用層 hooks | macOS Seatbelt / Linux bwrap+seccomp(kernel 層) | ✅ 確認 |
| MCP 設定 | .mcp.json / claude mcp add | config.toml [mcp_servers.NAME] / codex mcp add | ✅ 確認 |
| 自訂指令 | .claude/commands/*.md | ~/.codex/prompts/*.md(已棄用,改 skills) | ✅ 確認 |
| Skills | .claude/skills/<name>/SKILL.md | .agents/skills/<name>/SKILL.md(frontmatter 相容) | ✅ 確認 |
| Skill UI / 觸發政策 | frontmatter 散落各鍵 | 集中在 agents/openai.yaml(allow_implicit_invocation 等) | ✅ 確認 |
| Custom command(指令巨集) | .claude/commands/*.md | 改用 Skill(舊 ~/.codex/prompts/*.md 已棄用) | ✅ 確認 |
| 從 Claude Code 匯入 | — | /import(0.140.0,選擇性匯入 setup / config / 近期 chat) | ✅ 確認 |
| 恢復對話 | claude --resume | codex resume / /resume | ✅ 確認 |
| 登入 | /login(Anthropic 帳號 / API key) | codex login(ChatGPT 帳號 / API key) | ✅ 確認 |
| 記憶 slash 指令 | /memory | /memories(需 [features] memories = true) | ✅ 確認 |
| 思考預算 | thinking budget | model_reasoning_effort(離散 minimal/low/medium/high/xhigh) | ✅ 確認 |
| Subagents | .claude/agents/*.md | .codex/agents/*.toml,用 /agent 切換(官方功能) | ✅ 確認 |
| 子代理批次扇出 | (自行編排多 agent) | spawn_agents_on_csv(一列一 worker) | ✅ 官方功能,但官方明標 experimental(參數可能變) |
| Hooks | PreToolUse/PostToolUse… 多個生命週期事件 | 同名事件多數有對應(PreToolUse/PostToolUse/Stop…),用 /hooks 審查信任 | ✅ 確認 |
這是效果對照,不是日常預設
acceptEdits 對應 --sandbox workspace-write --ask-for-approval never,只適用於封閉、可預測的非互動自動化。一般互動工作請保留 on-request,並在 prompt 明列不得 commit、push、部署、讀取憑證或刪除資料。
好消息(已更正)
早期遷移文常說 Codex 的 Subagents 與 Hooks「不確定 / 多來自第三方」。這是過時資訊——兩者都是官方功能,各有獨立規格頁(developers.openai.com/codex/subagents、/codex/hooks)。Codex 的 hooks 甚至有 PreToolUse / PostToolUse(和 Claude Code 同名),不是只剩少數事件。
重要提醒
Codex CLI 改版極快(2026-06 一個月內 0.137→0.140),逐字旗標、config 鍵、事件名都可能再變。執行前請以實機 codex --help、/agent、/hooks 與最新官方頁為準。
B.3 兩大觀念轉換(最容易卡的地方)
搬家時有兩件事跟 Claude Code 差最多,先弄懂這兩個,其他都是換名字而已。
轉換一:單軸權限 → 雙軸(approval + sandbox)
Claude Code 用一套 permissions(allow/deny 加上 permission 模式)管「AI 能不能做某件事」。Codex 把這件事拆成兩個獨立的軸:
| 軸 | 它管什麼 | 對應的旗標 |
|---|---|---|
| approval_policy(核准) | 何時停下來問你 | --ask-for-approval(值:untrusted / on-request / never) |
| sandbox_mode(沙箱) | 檔案/命令/網路能做到哪 | --sandbox(值:read-only / workspace-write / danger-full-access) |
把這兩軸組起來,就是你在 第 6 章學過的三大 preset。常見的 Claude Code 心智轉換:
| 你在 Claude Code 想要的效果 | Codex 的對應寫法 |
|---|---|
acceptEdits(工作目錄內放手改、不問) | --sandbox workspace-write --ask-for-approval never |
bypassPermissions(全繞過) | --yolo(= --dangerously-bypass-approvals-and-sandbox) |
| 唯讀、什麼都先問 | --sandbox read-only --ask-for-approval on-request |
小技巧
想在對話中途調整權限?用 /permissions 斜線指令切換,官方說明是「Set what Codex can do without asking first.」(設定 Codex 不用先問就能做的事)。
重要提醒
Codex 的 --yolo 雖然對應 Claude Code 的 bypassPermissions,但安全結構不一樣——Codex 多了 kernel 層的沙箱(macOS Seatbelt / Linux bwrap)。即使如此,--yolo 還是拆掉所有保護,只在外部已隔離的環境用。
轉換二:CLAUDE.md → AGENTS.md(而且有 32 KiB 上限)
AGENTS.md 在 Codex 的地位,等於 CLAUDE.md 在 Claude Code:動工前會先讀的工作守則手冊。官方逐字是「Codex reads AGENTS.md files before doing any work.」。兩個差別你要記住:
- AGENTS.md 是開放標準(由 Agentic AI Foundation / Linux Foundation 託管),跨工具通用;CLAUDE.md 是 Claude Code 專屬。
- AGENTS.md 有 32 KiB 大小上限(
project_doc_max_bytes,預設 32768),達上限後面的檔就不再加入。Claude Code 沒有同等硬上限,所以你那份超長的 CLAUDE.md 搬過來可能會被截斷。
遷移利器
不想改檔名也行——在 config.toml 設 project_doc_fallback_filenames = ["CLAUDE.md"],Codex 在找不到 AGENTS.override.md 與 AGENTS.md 時,就會回頭去讀你舊的 CLAUDE.md。注意這是 fallback(後備),不是同時並讀;這個鍵預設不啟用任何 fallback 檔名(官方未逐字列出預設值,一般理解為空陣列 ⚠️ 以實機 codex --help 或官方 config-reference 為準)。詳見 第 5 章。
B.4 進階兩塊:Subagents 與 Hooks(其實比想的好搬)
這兩塊以前被當成「最難搬、要重寫」的地方,但 Codex 把它們做成官方功能後,搬家比你想的順——尤其 Hooks 連事件名都跟 Claude Code 對得上。下面逐一對照。
Subagents(子代理)
好消息:Codex 的 Subagents 是官方功能(有獨立規格頁),不是第三方臆測。對照如下:
| 面向 | Claude Code | Codex CLI |
|---|---|---|
| 定義檔 | .claude/agents/*.md(Markdown + frontmatter) | .codex/agents/*.toml(TOML);個人放 ~/.codex/agents/、專案放 .codex/agents/ |
| 必填欄位 | name / description 等 | name / description / developer_instructions(三個必填) |
| 內建角色 | 自訂為主 | default(萬用) / worker(實作) / explorer(唯讀探索) |
| 觸發 | 用 subagent_type 派工 | 純自然語言請主 agent spawn,無專用旗標 |
| 切換 / 檢視 | parent 看得到 reasoning、可介入 | /agent 切換 active agent thread |
| 批次扇出 | (自行編排) | spawn_agents_on_csv(一列一 worker、結構化輸出) |
| 併發 / 深度上限 | — | config.toml [agents]:max_threads(預設 6)、max_depth(預設 1,禁孫 agent) |
每個自訂 agent 可有獨立 model / sandbox_mode / mcp_servers / skills.config(省略則繼承父 session),可建「唯讀 reviewer」「可寫 implementer」等最小權限角色。Claude Code 專屬的 frontmatter 鍵(例如 context: fork、user-invocable: false)在 Codex 沒有直接對應,得用 TOML 欄位重新設計。
重要提醒
subagents 仍標「實驗性」且每條子 thread 都吃 token;spawn_agents_on_csv 一列一 worker,成本隨列數線性放大。大批次前先小批 dry-run 估單列成本。以官方 subagents 頁與 /agent 實機為準。
Hooks(生命週期掛鉤)
重要更正
早期遷移文說「Codex 沒有 PreToolUse / PostToolUse」——這是過時錯誤。官方有獨立 /codex/hooks 規格頁,hooks 是 first-class CLI 能力,而且和 Claude Code 同名的 PreToolUse / PostToolUse 都有。搬家比你想的順。
對照如下:
| 面向 | Claude Code | Codex CLI |
|---|---|---|
| 定義位置 | .claude/settings.json 內 hooks 段 | .codex/hooks.json 或 config.toml 內 [[hooks.*]](個人 / 專案層) |
| 事件(部分) | PreToolUse / PostToolUse / Stop / UserPromptSubmit / SessionStart… | 同名都有:PreToolUse / PostToolUse / Stop / UserPromptSubmit / SessionStart,另有 SubagentStart / SubagentStop / PermissionRequest / PreCompact / PostCompact |
| 過濾 | matcher | matcher(regex,例 "^Bash$") |
| 阻擋指令 | hook 回傳阻擋決定 | exit code 2 或回 permissionDecision: "deny" 擋下工具呼叫 |
| 信任 / 審查 | — | /hooks 審查、信任(信任綁 hook hash,改了要重審);--dangerously-bypass-hook-trust 繞過 |
合併規則:Codex 的 hooks 是疊加不覆蓋(高優先層不取代低優先層的 hook),和 Claude Code settings.json 的 additive merge 同精神——別假設專案層能關掉使用者層的 hook。
遷移思路:你在 Claude Code 靠 PreToolUse 硬擋 git push / rm -rf / migration 的那套,在 Codex 幾乎可同名照搬——PreToolUse + matcher="^Bash$" + 一支 policy 腳本,回 permissionDecision: "deny" 就擋。這比改寫成沙箱規則直觀。當然你也可以多一層防護,搭配 approval_policy(何時要問)+ sandbox_mode(能做到哪)+ codex execpolicy(指令政策)構成縱深防禦。
重要提醒
features.hooks 的預設值兩份官方頁說法不一(config-reference 標 off、hooks 頁範例像 on),啟用前先看 /hooks 與 config-reference 實機。clone 他人 repo 的 .codex/hooks.json 不會自動信任(防惡意 repo 夾帶 hook),別對來路不明的 repo 用 --dangerously-bypass-hook-trust。
B.5 遷移落實檢查清單
照著這張清單一條一條做,就能把 Claude Code 的設定搬到 Codex。每條都標了對應章節,搬到哪卡住就回去翻。
- 記憶檔:把
CLAUDE.md複製成AGENTS.md,或設project_doc_fallback_filenames = ["CLAUDE.md"]沿用舊檔。⚠️ 注意 32 KiB 上限。(第 5 章) - 設定檔:把
settings.json(JSON)改寫成~/.codex/config.toml(TOML)。其中的 permissions 要拆成approval_policy+sandbox_mode兩軸。(第 8 章) - Skills:把
.claude/skills/*搬到.agents/skills/*。frontmatter(name/description)格式相容,幾乎零改。UI 資訊與觸發政策(allow_implicit_invocation)集中放agents/openai.yaml。⚠️ 注意:同名 skill 不合併、是並列(兩個都列在選單),與「就近覆蓋」直覺相反。(第 12 章) - 自訂指令(custom command):
.claude/commands/*.md在 Codex 對應的舊機制~/.codex/prompts/*.md已棄用(≥ 0.117.0 從選單消失),直接改寫成 Skill。(第 12 章) - MCP:把
.mcp.json改寫成config.toml的[mcp_servers.NAME],或逐一用codex mcp add加。若某 server 只給特定 skill 用,也可在該 skill 的agents/openai.yaml用dependencies.tools宣告,安裝即自動接好。(第 9 章、第 12 章) - Subagents:
.claude/agents/*.md重寫成 Codex 的.codex/agents/*.toml(必填name/description/developer_instructions);context: fork、user-invocable: false無直接對應,改用 TOML 欄位(sandbox_mode/model/skills.config)表達。(第 11 章) - Hooks:好消息——同名事件多數可直接搬。靠
PreToolUse/PostToolUse/Stop硬擋或自動驗證的設定,在 Codex 寫進.codex/hooks.json並用/hooks信任即可。也可疊加 sandbox + approval +execpolicy做縱深。(第 11 章) /import捷徑:Codex 0.140.0 起有/import,可從 Claude Code 選擇性匯入 setup、project config 與近期 chat,搬家不必全手工。(B.2)- 登入:
/login改成codex login(CI 自動化用printenv OPENAI_API_KEY | codex login --with-api-key,從 stdin 讀)。(第 3 章) - 自動接受編輯:
acceptEdits對應--sandbox workspace-write --ask-for-approval never;只在封閉、可預測的自動化使用,平常保留on-request。(第 6 章)
小技巧
不確定某個鍵有沒有拼錯?啟動時加 --strict-config,Codex 碰到不認得的設定欄位就會報錯,幫你抓拼字錯誤。(第 8 章)