报错需先看error.type字段:requests超rpm限速,quota_exceeded为token配额耗尽,并发超限则type为concurrent_requests;对应采取等待、换key或降并发等精准措施。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

当你在终端运行 codex 命令时突然卡住,报出 Error: 429 Too Many Requests 或 {"error":{"message":"Usage limits exceeded"}},说明 Codex CLI 已被服务端主动拒绝——这不是网络故障,也不是命令写错,而是你当前的请求行为触发了某一层用量控制机制,必须根据响应体里的 type 字段 精准识别是哪一层限速,再采取对应动作。不同原因的处理方式完全不兼容,混用反而会浪费时间。
第一步:确认报错类型,看清楚 error.type 是什么
把完整报错复制出来,重点找 JSON 响应体中的 type 字段值。这是所有后续操作的前提,漏看这一步,后面全白做。
比如:{"error":{"message":"Usage limits exceeded","type":"requests","code":"rate_limit_exceeded"}} → type 是 requests;{"error":{"type":"rate_limit_error"}} → type 是 rate_limit_error;{"error":{"type":"quota_exceeded"}} → type 是 quota_exceeded。
注意:终端里只显示一行错误文本?加 --debug 参数重试一次:codex --debug "你的指令",强制输出完整响应体。
识别出 type: requests —— 每分钟请求数(RPM)超限
这表示你当前账号每分钟最多允许 60 次请求,已打满。典型场景是批量跑脚本、CI/CD 并行调用、或手动连发十几条 codex 命令。
方法一:等 60 秒后重试。CLI 报错里通常自带提示,例如 Please retry after 30s,直接 sleep 等到时间戳跳过即可。
方法二:改用 --delay 参数人为降速。例如批量处理文件时,在循环里插入延迟:for f in *.py; do codex "refactor $f" --delay 1.5; done,每条命令间隔 1.5 秒,确保 RPM 不破线。
方法三:升级 API Key 权限或切换更高 Tier 的订阅。免费 Key 默认 RPM=60,Pro Key 可达 RPM=300,但需确认 billing 页面已生效——刚升级不会立即刷新配额,可能需等待 2~5 分钟。
通过本地 Codex 或 OpenClaw OAuth 凭证直接调用 ChatGPT/Codex Responses 的 image_generation 工具来生成或编辑光栅图像,然后保存
识别出 type: quota_exceeded —— 日/周 Token 配额耗尽
这和 RPM 完全无关,是你当期账单周期(UTC 时间)内分配的总 Token 数已被用光。大规模代码分析、多轮长上下文对话、处理超大文件,几小时内就能刷完免费额度。
第一步:打开 OpenAI Usage 页面 或对应服务商的用量仪表盘,确认当前周期剩余 quota 是否为 0。
第二步:如果确认归零,且任务紧急,立刻执行两个操作:① 检查是否绑定了多个 Key,换一个未达上限的 Key;② 进入 ~/.codex/config.toml,修改 api_key = "sk-xxx" 行,替换为新 Key。
第三步:若所有 Key 都已用尽,唯一解是等重置——日配额 UTC 午夜重置,周配额按订阅起始日固定时间重置。不要反复重试,持续触发 429 会导致临时封禁 session。
识别出 type: concurrent_requests —— 并发连接数超限
你同时开了 6 个终端窗口运行 codex,或写了后台并行脚本(& 符号),而默认最大并发数是 5。
方法一:立刻终止多余进程。执行 ps aux | grep codex 查看正在运行的 codex 进程,用 kill -9 PID 杀掉非必要实例。
方法二:永久调高并发上限。编辑 ~/.codex/config.toml,在 [client] 区块下添加或修改:max_concurrent_requests = 8。保存后重启终端生效。
注意:这个值不能无限制增大,超过服务商允许的硬上限(如 10)仍会报错,且可能触发风控。










