重構: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
連接工具
不需要連接任何東西。讓重構安全的是 Codex 能執行的測試指令,以及每一步的大小上限,所以把兩者都寫進 AGENTS.md。
# 在 CLI 裡:先對計畫取得共識,再設定終點 /plan Propose a migration plan for the billing module /goal Finish the migration and keep tests green把規則寫進 AGENTS.md
Codex 在開始任何工作前都會讀取 AGENTS.md:先讀
~/.codex/AGENTS.md,再從儲存庫根目錄一路讀到它工作的資料夾。把這項工作的規則寫在那裡;規則很長的話,放進.agents/skills/下的 skill。參見 AGENTS.md 指南。## 重構規則 - 不改變行為。如果必須修改測試,先停下來問。 - 開始前和每一步之後都執行 `npm test`。 - 每個 pull request 只做一步,變更不超過 400 行。 - 隨時更新 REFACTOR.md:勾掉完成的項目, 加上你發現的問題。 - 未經詢問,不要動 migrations/、自動產生的檔案或公開 API。不開互動介面也能執行
codex exec執行一個任務後就結束。進度輸出到 stderr,最終訊息輸出到 stdout;-o會另外寫進檔案,--json則以串流輸出事件。除非傳入--sandbox workspace-write,否則沙箱是唯讀的。# 第一天,然後隔天接著同一個工作階段 codex exec --sandbox workspace-write "做 REFACTOR.md 裡的第一步" codex exec resume --last "繼續做 REFACTOR.md 裡下一個還沒勾選的步驟"排入排程
在 ChatGPT 桌面 App 或網頁版建立排程任務(CLI 無法管理排程任務),或從 cron 執行
codex exec。參見如何讓 Codex 主動工作。
限制與安全
- 沒有測試,它就分不出重構和行為改變。先為那一塊補上測試。
- 一次完成的大改寫很難審查。每一步都能合併的小步驟比較安全,最後也比較快。
- 它不知道哪些怪異的程式碼是刻意寫的。在那些地方加註解,或寫進規則裡。
- Codex 預設會把指令放進沙箱:寫入只限於工作區,網路關閉。
danger-full-access只留給隔離的 runner 或容器使用。
重構,用 Claude Code 還是 Codex?
規則可以共用。在 AGENTS.md 寫一次,再把 @AGENTS.md 放進 CLAUDE.md,兩個 agent 就會讀同一份檔案。
另一個 agent 的逐步做法:Claude Code 重構。
| Claude Code | Codex | |
|---|---|---|
| 規則檔 | CLAUDE.md | AGENTS.md |
| 連接工具 | claude mcp add | codex mcp add 或 config.toml |
| 你不在也能執行 | claude -p | codex exec |
| 排程 | /schedule、桌面排程任務、/loop | ChatGPT App 的排程任務、cron |
| 內建功能(重構) | Plan mode、worktree、dynamic workflow、/simplify | /plan、/goal、codex exec resume |
重構:讓它成為某個人的固定工作
指令只在有人記得時才會執行。Crewmark 把你自己的 Codex 變成 AI 員工,有職位、量化目標、工作時間和心跳,工作就會依排程完成,並出現在看板上。
常見問題
Codex 擅長重構嗎?
擅長,前提是變更經過規劃和測試。先用 /plan,在 AGENTS.md 寫好測試指令,並以小步驟工作,每一步都是一個 pull request。
怎麼讓長時間的 Codex 重構不偏離方向?
用 /goal 設定目標,例如完成遷移並保持測試通過。Codex 會持續朝它前進,你也可以查看、修改、暫停或清除它。
Codex 能隔天接著做重構嗎?
可以。codex exec resume --last 會用新的提示詞延續最近一次的工作階段,所以每天的執行都從上次停下的地方接著做。
已於 2026 年 11 月 13 日對照 Claude Code 文件和 OpenAI 的 Codex 文件查核。