用 Codex 跑长任务的人应该都见过这一行: Selected model is at capacity. Please try a different model. 它不报错、不退出,就是停在那里等一次点击。人不在电脑前,这一停可能就是几小时。
所以我写了个小工具,盯住 Codex 窗口,出现这个错误就自己去点「重试」。现在我的用法是:扔一个长任务,去干别的,回来接着看结果。
官网(有动图演示、双语、常见问题): /ai-market-guide/ 源码(MIT,核心就一个 main.swift): /ai-market-guide/ 装起来 有 Homebrew 的话一条命令: brew install --cask yuxi1989/tap/codex-retrypilot 没有就下载 dmg 拖进「应用程序」: /ai-market-guide/ macOS 13 起,Intel 和 Apple Silicon 都能跑,已过 Apple 公证,双击直接开,不用右键、不用 xattr。它是怎么点的 三层,前面能用就不往后走: 通过 macOS 辅助功能 API 遍历 Codex 窗口结构,找到「重试」按钮,直接 AXPress。
不移动鼠标、不抢焦点,你可以同时在别的窗口打字。按压无效就把点击事件直接投递给 Codex 进程(按 PID 投递,不是全局点击)。
兼容模式再加坐标点击兜底:先用截图确认屏幕上真的有「重试」按钮才点,点完把焦点还给你原来的窗口。顺带做了个「指令接力」 Codex 连续空闲 N 分钟后,自动发送指令队列里的下一条。
我拿它跑多步 prompt 链——「先分析、再重构、最后补测试」这种一条条喂的场景。默认不开。
需要说清楚的几件事 不绕过限流。只是代替你点按钮。
服务端真忙时它也无能为力,只能继续重试。没有 API key、没有代理、不碰请求。
不联网。无遥测、无自动更新、不上传日志和截图,配置存本地 JSON。
我没链接任何网络库,可以 otool 自己验。权限要两项。
辅助功能(找按钮按按钮)+ 屏幕录制(只有一个用途:坐标点击前确认按钮真的在)。自动化权限可选,用来归还焦点。
找不到就不点。三层都要求先在 AX 树里找到标题匹配「重试 / Retry / 重試」的按钮,坐标点击还要额外截图确认。
比较想听的是它在你机器上失灵的情况:Codex 版本不同、窗口布局不同、缩放不同,都可能让按钮定位失败。遇到了把日志贴给我(~/Library/Application Support/CodexRetry/),我按你的情况改。