使用场景 · Codex

用 Codex 重构:计划、目标,每一步都审查

Codex 为长任务而生,这正适合重构:/plan 先就步骤达成一致,/goal 让迁移始终朝着终点推进,codex exec resume 从昨天停下的地方接着做。沙箱默认把编辑限制在工作区里。本页讲设置、AGENTS.md 规则,以及一个分步推进、每步都能审查的重构流程。

重构:Codex 能做什么

  • 小步推进重构待办,每一步都是单独的 pull request。
  • 每一步前后都运行测试,测试失败就停下。
  • 做迁移中机械性的部分:跨代码库重命名、API 升级、换用新的库。
  • 删除死代码和重复逻辑,并说明每一处删除的理由。

重构:Codex 的相关功能

功能作用怎么开始
/plan切换到计划模式,编辑前先提出步骤/plan Propose a migration plan for the billing module
/goal设定一个 Codex 持续推进的目标/goal Finish the migration and keep tests green
Worktree在桌面应用里,把重构和你的工作副本分开运行开始任务时选择 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 桌面应用或网页版里创建定时任务(CLI 不管理定时任务),或者从 cron 运行 codex exec。见如何让 Codex 主动工作。

来源:Codex 文档

局限与安全

  • 没有测试,它就分不清重构和行为变化。先给这块代码补上测试。
  • 一次性的大重写很难审查。小步推进、每步都合并,更安全,最终也更快。
  • 它不知道哪些奇怪的代码是故意这么写的。用注释或在规则里标出这些地方。
  • Codex 默认在沙箱里运行命令:写入只限于工作区,网络关闭。danger-full-access 只留给隔离的 runner 或容器。

重构,用 Claude Code 还是 Codex?

规则可以通用。只在 AGENTS.md 里写一次,再在 CLAUDE.md 里放一行 @AGENTS.md,两个 agent 读的就是同一个文件。

另一个 agent 的分步做法:Claude Code 重构。

Claude CodeCodex
规则文件CLAUDE.mdAGENTS.md
连接工具claude mcp addcodex mcp add 或 config.toml
无人值守运行claude -pcodex exec
定时/schedule、桌面定时任务、/loopChatGPT 应用里的定时任务、cron
内置功能(重构)Plan mode、worktree、动态 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 员工。