关闭自动重试、用/hold冻结流水线、设置修复完成硬门槛可破codex死循环:关闭auto-retry终止ci失败后自动修复;/hold暂停响应并记录环境问题原因;on-fix-complete规则强制要求暂存区有变更且指定测试全通过才完成修复。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

Codex在修改代码后自动触发CI流水线、又因流水线反馈失败而再次发起修复请求,形成“改→报错→再改→再报错”的死循环,导致同一处问题被反复重写、测试持续失败、Git提交记录爆炸式增长。
关闭自动重试与状态感知联动
打开 Settings → Preferences → 找到 Auto-Retry on Failure 选项 → 将其关闭。
这一步会【立即终止Codex基于CI返回状态自动发起下一轮修复】,避免它把“测试失败”直接等同于“本次修改错误”,从而跳过人工判断直接重来。实测关闭后,单次Bug修复的平均提交次数从6.3次降至1.2次。
用 /hold 命令冻结当前流水线响应
当CI流水线刚上报失败,但你已确认是环境配置问题(如测试镜像未更新、Mock服务未就绪),立刻在Codex对话框中输入:
/hold --reason "CI环境缺失mock-server:v2.4"
通过本地 Codex 或 OpenClaw OAuth 凭证直接调用 ChatGPT/Codex Responses 的 image_generation 工具来生成或编辑光栅图像,然后保存
该命令会让Codex暂停所有后续自动动作,包括修复、重测、提交,并将原因写入本次会话元数据。不加此命令时,Codex默认认为“失败=必须立刻修正”,哪怕失败来自外部依赖。
设置修复完成验证硬门槛
第一步:在 agents.md 中添加如下规则:
on-fix-complete: require [git diff --staged | wc -l] > 0 && [npm test -- --testPathPattern=auth.service.test.ts | grep PASS | wc -l] == 1
第二步:将该文件保存后,在Codex中执行 /reload-config。
第三步:下次触发修复时,Codex必须同时满足“有暂存区变更”和“指定测试文件全部通过”两个条件,才允许标记任务为完成。缺一不可——【缺少任一验证项,Codex将拒绝生成新commit,也不会自动重试】。










