Codex 的「智能」来自一个不断重复的循环:推理 → 工具调用 → 观察结果 → 继续推理。
Agent Loop:Codex 的执行循环
把这套循环背下来,你就知道为什么 Codex 偶尔会"卡住"或"乱跑",以及如何把它带回正轨。
一次完整循环
- 读取用户消息和已有上下文。
- 模型推理,决定下一步。
- 请求工具调用:读文件、写文件、跑命令、调 MCP。
- Codex 执行工具。
- 把结果放回上下文。
- 继续推理或返回最终回复。
什么时候循环会停
- 模型说"我做完了"。
- 遇到需要审批的操作。
- 触发权限 / 沙箱拒绝。
- 达到 turn 数上限或超时。
- 你手动打断。
循环中常见的坑
- 长任务里上下文累积过多,模型遗忘早期约束。
- 多次失败的工具调用让模型陷入循环。
- Sandbox 拒绝时没有给模型有用的报错。
建议:当看到模型卡住时,先看最近一次工具调用是不是被拒了,再决定是改提示还是调权限。