宝玉xp 25-09-28 15:25
微博认证:前微软Asp.Net最有价值专家 2025微博年度新知博主 科技博主

卧槽,我真解决了让 Codex 连续工作 8 小时的问题,上下文都不会爆掉!

方案就是让 Claude Code 去当监工监督 Codex 干活,Codex 一个任务完成,就重开一个session,大概的步骤如下:

1. 首先要让 Codex 生成一个任务的 TODO List,就是那种能一步步完成的

2. 然后让 Codex 更新 Agents md 文件,加上说明,如果输入 continue,要读取 TODO 文件,去选取任务,执行后更新 TODO

3. 让 Claude Code 去执行命令:
> export TERM=xterm && codex exec "continue to next task" --full-auto

也就是 Claude Code 去启动 codex 并传入提示词 "continue to next task" 并且监控 codex 的执行,如果当前任务完成了,就杀掉进程,重新执行上面的指令下一个任务。

由于每次都是新的 session,所以 codex 的上下文每次用的不多,不会爆掉。

那么怎么保证 Claude Code 的 Context 不爆掉呢?毕竟codex输出的信息也不少

答案就是让 Claude Code 每次去启动 codex 和监控 codex 执行的时候,都起一个子 Agent,这样每个子 Agent 都有独立的上下文,主 Agent 只有子Agent完成的上下文,占用空间极小。

完整的提示词和运行效果在图1可以看到:
> 帮我在当前目录下,新开一个agent,使用 export TERM=xterm && codex exec "continue to next task" --full-auto 命令开启一个 codex 进程, 注意观察任务执行情况,如果当前任务完成(任务运行时间较长,可以多等一会),就结束进程,然后重新开个agent运行相同指令让它继续
> 注意每次打开codex和监控它运行都调用一个新agent (Task Tool)来执行这个操作以避免主agent上下文太长

BTW: 监控 codex 执行这任务理论上来说 Gemini cli和 Codex cli 也能做,但是我没成功。

注意:也没办法真的 8 小时,Claude Code 会偷懒,执行一会就会自行中断,即使没用多少上下文,暂时还没解决这个问题,但是思路可以借鉴一下,如果有更好办法,欢迎留言交流。

这个思路可以用在 Claude Code 上,把里面的 Codex 换成 Claude Code 就行,本质上就是一个 Manager 监控 Worker 干活。

要点:
1. Worker 要有 TODO List,并且 Agents/Claude Code MD 要有引导,这样每次固定提示词(continue)能继续任务
2. Worker 要开子进程避免上下文爆掉
3. Manager 去管理 Worker 干活要开子 Agent,避免 Manager 的上下文爆掉

为什么要用 AI 去监督 AI 干活而不是脚本:
1. 探索各种可能性
2. 这样用 AI 监测,比脚本的好处是:
- 简单易行(但是费 Tokens)
- 可以根据任务执行的结果动态处理, Prompt 可以不是固定的

发布于 美国