Codex任务中断后不可直接重发原指令,须先判别失败类型:请求挂起需Ctrl+C清理进程并replay-last;逻辑报错需先归因再定向修复;长任务须用handoff格式接续。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

当Codex执行自动化任务中途失败,输出戛然而止、代码只写一半、文件修改未保存、测试没跑完就中断时,不能直接重发原指令——这会丢失上下文判断链和已排除的错误路径,导致重复踩坑。
先确认失败类型再决定重试方式
第一步:看终端是否仍在输出。如果光标静止超过90秒、日志无新增行、Ctrl+C无响应,说明是请求挂起而非逻辑报错。
第二步:检查状态栏。绿色「已连接」但无响应 → 是任务卡死;红色「离线」或「Reconnecting」→ 是网络层中断。
第三步:运行codex doctor --cache。若输出中含cache_status: enabled,说明本地缓存可用,可走恢复流程;若为disabled,则必须启用handoff或手动提取断点。
逻辑报错类失败的精准重试
方法一:让Codex自行归因
在报错消息出现后,立即发送:“请分析当前报错原因,列出所有可能的触发点,并说明哪一项最可能导致本次中断。”
这一步必须做。【Codex若跳过归因直接改代码,大概率重复踩坑】。很多报错表面是语法错误,实际是权限缺失、路径不存在或上下文被截断。
方法二:基于归因结果定向重试
通过本地 Codex 或 OpenClaw OAuth 凭证直接调用 ChatGPT/Codex Responses 的 image_generation 工具来生成或编辑光栅图像,然后保存
若归因指出“auth.py第42行空指针异常”,则手动编辑该文件修复后,输入continue;若归因指出“JWT密钥未加载”,则先执行codex login --force再继续。
连接挂起类失败的强制恢复
第一步:按下Ctrl + C中止当前流式请求
第二步:确认Codex CLI进程已退出。打开新终端,运行ps aux | grep codex,若存在残留进程,用kill -9 [PID]清理
第三步:执行codex --replay-last(仅限v2.8.3+版本)→ 该命令会自动载入上一次中断前的完整上下文快照
第四步:若CLI不支持replay,进入./.codex/cache/last_session.json,用文本编辑器打开,提取"prompt"和"history"字段,手动构造新会话
长任务中断后的handoff接续
第一步:发送“请用handoff格式输出:已确认的问题、已排除的路径、已修改的文件、下一步该验证什么、哪些信息必须保留才能不重复劳动。”
第二步:复制这段handoff内容,新建对话窗口,把handoff全文粘贴进去,末尾加一句:“请从此处接手,不要重读项目结构,不要重跑已通过的测试,只执行handoff中明确指出的下一步。”
第三步:观察它是否跳过冗余动作。如果仍从头开始ls目录或cat所有配置文件,说明handoff未被有效识别,需手动删掉其中描述性语句,只留事实性条目(如“auth.py第42行空指针异常”“已确认JWT密钥未加载”)

















