使用情境 · Codex

用 Codex 重構:計畫、目標和每一步的審查

Codex 是為長時間任務打造的,正好適合重構:/plan 先對步驟取得共識,/goal 讓遷移一直朝終點前進,codex exec resume 則從昨天停下的地方接著做。沙箱預設會把修改限制在工作區內。本頁說明設定、AGENTS.md 的規則,以及一套以可審查的步驟推進重構的例行工作。

重構:Codex 能做什麼

  • 以小步驟處理重構待辦清單,每一步都是獨立的 pull request。
  • 每一步前後都執行測試,測試失敗就停下來。
  • 處理遷移中機械性的部分:整個程式碼庫的重新命名、API 升級、改用新的函式庫。
  • 移除沒用到的程式碼和重複的邏輯,並說明每一處移除的理由。

重構:用得上的 Codex 功能

功能用途怎麼開始
/plan切換到 plan mode,在修改前先提出步驟/plan Propose a migration plan for the billing module
/goal設定一個持續的目標,讓 Codex 朝它前進/goal Finish the migration and keep tests green
Worktree在桌面 App 裡進行重構,和你的簽出分開開始任務時選擇 worktree
codex exec resume在之後的執行中延續同一個工作階段codex exec resume --last "Continue with the next step"

重構:如何設定 Codex

  1. 連接工具

    不需要連接任何東西。讓重構安全的是 Codex 能執行的測試指令,以及每一步的大小上限,所以把兩者都寫進 AGENTS.md。

    # 在 CLI 裡:先對計畫取得共識,再設定終點
    /plan Propose a migration plan for the billing module
    /goal Finish the migration and keep tests green
  2. 把規則寫進 AGENTS.md

    Codex 在開始任何工作前都會讀取 AGENTS.md:先讀 ~/.codex/AGENTS.md,再從儲存庫根目錄一路讀到它工作的資料夾。把這項工作的規則寫在那裡;規則很長的話,放進 .agents/skills/ 下的 skill。參見 AGENTS.md 指南。

    ## 重構規則
    - 不改變行為。如果必須修改測試,先停下來問。
    - 開始前和每一步之後都執行 `npm test`。
    - 每個 pull request 只做一步,變更不超過 400 行。
    - 隨時更新 REFACTOR.md:勾掉完成的項目,
      加上你發現的問題。
    - 未經詢問,不要動 migrations/、自動產生的檔案或公開 API。
  3. 不開互動介面也能執行

    codex exec 執行一個任務後就結束。進度輸出到 stderr,最終訊息輸出到 stdout;-o 會另外寫進檔案,--json 則以串流輸出事件。除非傳入 --sandbox workspace-write,否則沙箱是唯讀的。

    # 第一天,然後隔天接著同一個工作階段
    codex exec --sandbox workspace-write "做 REFACTOR.md 裡的第一步"
    codex exec resume --last "繼續做 REFACTOR.md 裡下一個還沒勾選的步驟"
  4. 排入排程

    在 ChatGPT 桌面 App 或網頁版建立排程任務(CLI 無法管理排程任務),或從 cron 執行 codex exec。參見如何讓 Codex 主動工作。

來源:Codex 文件

限制與安全

  • 沒有測試,它就分不出重構和行為改變。先為那一塊補上測試。
  • 一次完成的大改寫很難審查。每一步都能合併的小步驟比較安全,最後也比較快。
  • 它不知道哪些怪異的程式碼是刻意寫的。在那些地方加註解,或寫進規則裡。
  • Codex 預設會把指令放進沙箱:寫入只限於工作區,網路關閉。danger-full-access 只留給隔離的 runner 或容器使用。

重構,用 Claude Code 還是 Codex?

規則可以共用。在 AGENTS.md 寫一次,再把 @AGENTS.md 放進 CLAUDE.md,兩個 agent 就會讀同一份檔案。

另一個 agent 的逐步做法:Claude Code 重構。

Claude CodeCodex
規則檔CLAUDE.mdAGENTS.md
連接工具claude mcp addcodex mcp add 或 config.toml
你不在也能執行claude -pcodex exec
排程/schedule、桌面排程任務、/loopChatGPT App 的排程任務、cron
內建功能(重構)Plan mode、worktree、dynamic workflow、/simplify/plan、/goal、codex exec resume
使用 Crewmark

重構:讓它成為某個人的固定工作

指令只在有人記得時才會執行。Crewmark 把你自己的 Codex 變成 AI 員工,有職位、量化目標、工作時間和心跳,工作就會依排程完成,並出現在看板上。

  1. 從職位開始

    AI 軟體工程師:在職位說明裡寫上這些規則。

  2. 把工作放上它的看板

    把這項工作加成週期性 issue。員工依心跳醒來,做完後以評論回報。

  3. 相關內容

    程式碼審查會在每一步合併前檢查。

常見問題

Codex 擅長重構嗎?

擅長,前提是變更經過規劃和測試。先用 /plan,在 AGENTS.md 寫好測試指令,並以小步驟工作,每一步都是一個 pull request。

怎麼讓長時間的 Codex 重構不偏離方向?

用 /goal 設定目標,例如完成遷移並保持測試通過。Codex 會持續朝它前進,你也可以查看、修改、暫停或清除它。

Codex 能隔天接著做重構嗎?

可以。codex exec resume --last 會用新的提示詞延續最近一次的工作階段,所以每天的執行都從上次停下的地方接著做。

已於 2026 年 11 月 13 日對照 Claude Code 文件和 OpenAI 的 Codex 文件查核。

重構,交給 Codex 上的 AI 員工。

Crewmark 把 Claude Code 和 Codex 工作階段變成有職位、目標、工作時間和心跳的 AI 員工。