openai / openai/codex

ChatGPT Plus: only Weekly limit is shown after the 5-hour limit was reintroduced

Open
#41,553 10 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

app app-server bug CLI rate-limits windows-os
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What version of Codex CLI is running?

0.151.0

What subscription do you have?

ChatGPT Plus

Which model were you using?

gpt-5.6-sol

What platform is your computer?

Microsoft Windows NT 10.0.26200.0 x64

What terminal emulator and version are you using (if applicable)?

Windows Terminal 1.24.11911.0 PowerShell 7.6.5

Codex doctor report
{
  "schemaVersion": 1,
  "generatedAt": "1788020512s since unix epoch",
  "overallStatus": "fail",
  "codexVersion": "0.151.0",
  "checks": {
    "app_server.status": {
      "id": "app_server.status",
      "category": "app-server",
      "status": "ok",
      "summary": "background server is not running",
      "details": {
        "control socket": "C:\\Users\\<redacted>\\.codex\\app-server-control\\app-server-control.sock",
        "daemon state dir": "C:\\Users\\<redacted>\\.codex\\app-server-daemon",
        "mode": "ephemeral",
        "pid file": "C:\\Users\\<redacted>\\.codex\\app-server-daemon\\app-server.pid (missing)",
        "settings": "C:\\Users\\<redacted>\\.codex\\app-server-daemon\\settings.json (missing)",
        "status": "not running",
        "update-loop pid file": "C:\\Users\\<redacted>\\.codex\\app-server-daemon\\app-server-updater.pid (missing)"
      },
      "remediation": null,
      "durationMs": 0
    },
    "auth.credentials": {
      "id": "auth.credentials",
      "category": "auth",
      "status": "ok",
      "summary": "auth is configured",
      "details": {
        "auth file": "C:\\Users\\<redacted>\\.codex\\auth.json",
        "auth storage mode": "File",
        "stored API key": "false",
        "stored ChatGPT tokens": "true",
        "stored agent identity": "false",
        "stored auth mode": "chatgpt"
      },
      "remediation": null,
      "durationMs": 0
    },
    "config.load": {
      "id": "config.load",
      "category": "config",
      "status": "ok",
      "summary": "config loaded",
      "details": {
        "CODEX_HOME": "C:\\Users\\<redacted>\\.codex",
        "config.toml": "C:\\Users\\<redacted>\\.codex\\config.toml",
        "config.toml parse": "ok",
        "cwd": "C:\\Users\\<redacted>",
        "enabled feature flags": "<redacted>",
        "feature flag overrides": "none",
        "feature flags enabled": "47",
        "log dir": "C:\\Users\\<redacted>\\.codex\\log",
        "mcp servers": "2",
        "model": "gpt-5.6-sol",
        "model provider": "openai",
        "sqlite home": "C:\\Users\\<redacted>\\.codex"
      },
      "remediation": null,
      "durationMs": 0
    },
    "desktop.app.version": {
      "id": "desktop.app.version",
      "category": "desktop",
      "status": "ok",
      "summary": "the desktop application is installed",
      "details": {
        "log directory": "$HOME\\AppData\\Local\\Codex/Logs",
        "running": "false",
        "version": "26.825.5331.0"
      },
      "remediation": null,
      "durationMs": 0
    },
    "desktop.app_server.handshake": {
      "id": "desktop.app_server.handshake",
      "category": "desktop",
      "status": "ok",
      "summary": "the desktop application is not running",
      "details": {},
      "remediation": null,
      "durationMs": 0
    },
    "desktop.security.enforcement": {
      "id": "desktop.security.enforcement",
      "category": "desktop",
      "status": "ok",
      "summary": "no locally visible recent Codex security enforcement was found",
      "details": {},
      "remediation": null,
      "durationMs": 0
    },
    "git.environment": {
      "id": "git.environment",
      "category": "git",
      "status": "ok",
      "summary": "git version 2.51.1.windows.1",
      "details": {
        "PATH git #1": "C:\\Program Files\\Git\\cmd\\git.exe",
        "PATH git entries": "1",
        "git build options": "git version 2.51.1.windows.1; cpu: x86_64; built from commit: 1454f0a9c4a3a22fb3fd7cc33f76f88cd65ced41; sizeof-long: 4; sizeof-size_t: 8; shell-path: D:/git-sdk-64-build-installers/usr/bin/sh; feature: fsmonitor--daemon; libcurl: 8.16.0; OpenSSL: OpenSSL 3.5.4 30 Sep 2025; zlib: 1.3.1; SHA-1: SHA1_DC; SHA-256: SHA256_BLK; default-ref-format: files; default-hash: sha1",
        "git exec path": "C:/Program Files/Git/mingw64/libexec/git-core",
        "git version": "git version 2.51.1.windows.1",
        "repo detected": "false",
        "selected git": "C:\\Program Files\\Git\\cmd\\git.exe"
      },
      "remediation": null,
      "durationMs": 47
    },
    "git.worktree.dev_drive": {
      "id": "git.worktree.dev_drive",
      "category": "git",
      "status": "ok",
      "summary": "no Git worktree is active",
      "details": {},
      "remediation": null,
      "durationMs": 0
    },
    "installation": {
      "id": "installation",
      "category": "install",
      "status": "ok",
      "summary": "installation looks consistent",
      "details": {
        "PATH codex #1": "C:\\Users\\<redacted>\\AppData\\Local\\Programs\\OpenAI\\Codex\\bin\\codex.exe",
        "current executable": "C:\\Users\\<redacted>\\AppData\\Local\\Programs\\OpenAI\\Codex\\bin\\codex.exe",
        "install context": "standalone (windows, package C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc, bin C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc\\bin, resources C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc\\codex-resources, path C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc\\codex-path)",
        "managed by bun": "false",
        "managed by npm": "false",
        "managed by pnpm": "false",
        "managed package root": "not set"
      },
      "remediation": null,
      "durationMs": 35
    },
    "mcp.config": {
      "id": "mcp.config",
      "category": "mcp",
      "status": "ok",
      "summary": "MCP configuration is locally consistent",
      "details": {
        "configured servers": "2",
        "disabled servers": "1",
        "stdio servers": "2"
      },
      "remediation": null,
      "durationMs": 0
    },
    "network.env": {
      "id": "network.env",
      "category": "network",
      "status": "ok",
      "summary": "network-related environment looks readable",
      "details": {
        "managed proxy": "not configured",
        "proxy env vars": "none",
        "respect system proxy": "disabled"
      },
      "remediation": null,
      "durationMs": 0
    },
    "network.provider_reachability": {
      "id": "network.provider_reachability",
      "category": "reachability",
      "status": "ok",
      "summary": "active provider endpoints are reachable over HTTP",
      "details": {
        "ChatGPT inference URL": "https://chatgpt.com/backend-api/<redacted> reachable (HTTP 405)",
        "desktop assets CDN": "https://persistent.oaistatic.com/codex-app-prod/<redacted> reachable (HTTP 200)",
        "reachability mode": "ChatGPT auth"
      },
      "remediation": null,
      "durationMs": 237
    },
    "network.websocket_reachability": {
      "id": "network.websocket_reachability",
      "category": "websocket",
      "status": "ok",
      "summary": "Responses WebSocket handshake succeeded",
      "details": {
        "DNS": "2 IPv4, 2 IPv6, first IPv4",
        "auth mode": "chatgpt",
        "connect timeout": "15000 ms",
        "endpoint": "wss://chatgpt.com/backend-api/<redacted>",
        "handshake result": "HTTP 101 Switching Protocols",
        "model provider": "openai",
        "provider name": "OpenAI",
        "proxy env vars": "none",
        "reasoning header": "false",
        "server model present": "false",
        "supports websockets": "true",
        "wire API": "responses"
      },
      "remediation": null,
      "durationMs": 873
    },
    "runtime.provenance": {
      "id": "runtime.provenance",
      "category": "runtime",
      "status": "ok",
      "summary": "running standalone on windows-x86_64",
      "details": {
        "commit": "unknown",
        "current executable": "C:\\Users\\<redacted>\\AppData\\Local\\Programs\\OpenAI\\Codex\\bin\\codex.exe",
        "install method": "standalone (windows, package C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc, bin C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc\\bin, resources C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc\\codex-resources, path C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc\\codex-path)",
        "platform": "windows-x86_64",
        "version": "0.151.0"
      },
      "remediation": null,
      "durationMs": 0
    },
    "runtime.search": {
      "id": "runtime.search",
      "category": "search",
      "status": "ok",
      "summary": "search is OK (bundled)",
      "details": {
        "search command": "C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases\\0.151.0-x86_64-pc-windows-msvc\\codex-path\\rg.exe",
        "search command readiness": "file exists",
        "search provider": "bundled"
      },
      "remediation": null,
      "durationMs": 0
    },
    "sandbox.helpers": {
      "id": "sandbox.helpers",
      "category": "sandbox",
      "status": "fail",
      "summary": "elevated Windows sandbox provisioning recorded a structured failure",
      "details": {
        "approval policy": "Never",
        "codex-linux-sandbox helper": "none",
        "denied-read restrictions": "false",
        "error code": "helper_unknown_error",
        "execve wrapper helper": "none",
        "filesystem sandbox": "restricted",
        "network sandbox": "enabled",
        "sandbox backend": "elevated",
        "sandbox provisioning": "failed"
      },
      "issues": [
        {
          "severity": "fail",
          "cause": "elevated Windows sandbox provisioning recorded a structured failure",
          "measured": "helper_unknown_error",
          "expected": null,
          "remedy": "repair or reinstall the Codex CLI from an approved distribution",
          "fields": [
            "error code"
          ]
        }
      ],
      "remediation": "repair or reinstall the Codex CLI from an approved distribution",
      "durationMs": 0
    },
    "security.endpoint": {
      "id": "security.endpoint",
      "category": "security",
      "status": "warning",
      "summary": "endpoint protection detected; Codex exclusions are unverified",
      "details": {
        "Codex exclusions": "not verified",
        "endpoint products": "Microsoft Defender",
        "exclusion targets": "signed Codex app; codex.exe; codex-windows-sandbox-setup.exe; codex-command-runner.exe; codex-code-mode-host.exe"
      },
      "issues": [
        {
          "severity": "warning",
          "cause": "Microsoft Defender can interfere with Codex. Verify Codex exclusions.",
          "measured": "not verified",
          "expected": "Codex application and helper exclusions",
          "remedy": "Microsoft Defender: Add a certificate or executable-path exclusion for Codex and its helpers. If Attack Surface Reduction blocks Codex, add a rule exclusion. If Controlled Folder Access blocks Codex, allow the app.",
          "fields": [
            "Codex exclusions"
          ]
        }
      ],
      "remediation": "ask your security administrator to verify Codex exclusions and required helper allowances",
      "durationMs": 17
    },
    "state.paths": {
      "id": "state.paths",
      "category": "state",
      "status": "ok",
      "summary": "state paths and databases are inspectable",
      "details": {
        "CODEX_HOME": "C:\\Users\\<redacted>\\.codex (dir)",
        "active rollout files": "45 files, 96459758 total bytes, 2143550 average bytes",
        "archived rollout files": "173 files, 173342713 total bytes, 1001981 average bytes",
        "goals DB": "C:\\Users\\<redacted>\\.codex\\goals_1.sqlite (file)",
        "goals DB integrity": "ok",
        "log DB": "C:\\Users\\<redacted>\\.codex\\logs_2.sqlite (file)",
        "log DB integrity": "ok",
        "log dir": "C:\\Users\\<redacted>\\.codex\\log (missing)",
        "memories DB": "C:\\Users\\<redacted>\\.codex\\memories_1.sqlite (file)",
        "memories DB integrity": "ok",
        "queue DB": "C:\\Users\\<redacted>\\.codex\\queue_1.sqlite (file)",
        "queue DB integrity": "ok",
        "sqlite home": "C:\\Users\\<redacted>\\.codex (dir)",
        "standalone release cache": "1 entries in C:\\Users\\<redacted>\\.codex\\packages\\standalone\\releases",
        "state DB": "C:\\Users\\<redacted>\\.codex\\state_5.sqlite (file)",
        "state DB integrity": "ok",
        "thread history DB": "C:\\Users\\<redacted>\\.codex\\thread_history_1.sqlite (file)",
        "thread history DB integrity": "ok"
      },
      "remediation": null,
      "durationMs": 344
    },
    "state.rollout_db_parity": {
      "id": "state.rollout_db_parity",
      "category": "threads",
      "status": "warning",
      "summary": "rollout files and state DB thread inventory differ",
      "details": {
        "default model provider": "openai",
        "rollout DB active files": "45",
        "rollout DB active rows": "45",
        "rollout DB archive mismatches": "0",
        "rollout DB archived files": "173",
        "rollout DB archived rows": "166",
        "rollout DB duplicate DB paths": "0",
        "rollout DB duplicate rollout thread ids": "0",
        "rollout DB malformed file names": "0",
        "rollout DB missing active rows": "0",
        "rollout DB missing archived rows": "7",
        "rollout DB missing archived sample": [
          "C:\\Users\\<redacted>\\.codex\\archived_sessions\\rollout-2026-02-08T14-02-00-<redacted-id>.jsonl",
          "C:\\Users\\<redacted>\\.codex\\archived_sessions\\rollout-2026-02-09T23-32-58-<redacted-id>.jsonl",
          "C:\\Users\\<redacted>\\.codex\\archived_sessions\\rollout-2026-02-20T13-51-14-<redacted-id>.jsonl",
          "C:\\Users\\<redacted>\\.codex\\archived_sessions\\rollout-2026-02-22T15-30-11-<redacted-id>.jsonl",
          "C:\\Users\\<redacted>\\.codex\\archived_sessions\\rollout-2026-03-06T14-36-54-<redacted-id>.jsonl"
        ],
        "rollout DB model providers": "openai=211",
        "rollout DB rows": "211",
        "rollout DB scan cap reached": "false",
        "rollout DB scan errors": "0",
        "rollout DB sources": "vscode=206, exec=5",
        "rollout DB stale rows": "0"
      },
      "issues": [
        {
          "severity": "warning",
          "cause": "rollout files are missing from the state DB",
          "measured": "0 active, 7 archived",
          "expected": "every rollout file has a matching threads row",
          "remedy": null,
          "fields": []
        }
      ],
      "remediation": null,
      "durationMs": 104
    },
    "system.disk": {
      "id": "system.disk",
      "category": "disk",
      "status": "ok",
      "summary": "sufficient free disk space (610.2 GiB)",
      "details": {
        "CODEX_HOME available": "610.2 GiB",
        "failure threshold": "1.0 GiB",
        "warning threshold": "5.0 GiB",
        "worktree available": "610.2 GiB"
      },
      "remediation": null,
      "durationMs": 0
    },
    "system.environment": {
      "id": "system.environment",
      "category": "system",
      "status": "ok",
      "summary": "OS language ja-JP",
      "details": {
        "EDITOR": "not set",
        "VISUAL": "not set",
        "os": "Windows 10.0.26200 (Windows 11 Core) [64-bit]",
        "os language": "ja-JP",
        "os type": "Windows",
        "os version": "10.0.26200"
      },
      "remediation": null,
      "durationMs": 0
    },
    "terminal.env": {
      "id": "terminal.env",
      "category": "terminal",
      "status": "ok",
      "summary": "terminal metadata was detected",
      "details": {
        "WT_SESSION": "present",
        "color output": "enabled",
        "console input code page": "932",
        "console output code page": "932",
        "stderr console mode": "0x00000007 (VT processing: true)",
        "stderr is terminal": "true",
        "stdin is terminal": "true",
        "stdout console mode": "0x00000007 (VT processing: true)",
        "stdout is terminal": "true",
        "terminal": "Windows Terminal",
        "terminal size": "120x30"
      },
      "remediation": null,
      "durationMs": 0
    },
    "terminal.title": {
      "id": "terminal.title",
      "category": "title",
      "status": "ok",
      "summary": "terminal title default",
      "details": {
        "terminal title activity": "true",
        "terminal title items": "activity, project-name",
        "terminal title project source": "cwd",
        "terminal title project value": "<redacted>",
        "terminal title source": "default"
      },
      "remediation": null,
      "durationMs": 0
    },
    "updates.status": {
      "id": "updates.status",
      "category": "updates",
      "status": "ok",
      "summary": "update configuration is locally consistent",
      "details": {
        "cached latest version": "0.151.0",
        "check for update on startup": "true",
        "last checked at": "2026-08-29T15:42:11.890411600Z",
        "latest version": "0.151.0",
        "latest version status": "current version is not older",
        "update action": "standalone installer",
        "version cache": "C:\\Users\\<redacted>\\.codex\\version.json"
      },
      "remediation": null,
      "durationMs": 718
    }
  }
}

What issue are you seeing?

I am using ChatGPT Plus, but Codex only shows the Weekly limit.

In the Codex App:

  • Weekly limit is shown
  • 5-hour limit is not shown

In CLI /status:

  • Plan: ChatGPT Plus
  • Model: gpt-5.6-sol
  • Reasoning effort: high
  • Weekly limit is shown
  • There is no 5-hour limit line

Example:

Weekly limit: 69% left

To check whether this was only a UI issue, I also started:

codex app-server --stdio

After initialization, I sent:

{"method":"account/rateLimits/read","id":7}

The relevant part of the response was:

{
  "rateLimits": {
    "limitId": "codex",
    "primary": {
      "usedPercent": 31,
      "windowDurationMins": 10080,
      "resetsAt": "<redacted>"
    },
    "secondary": null,
    "planType": "plus"
  },
  "rateLimitsByLimitId": {
    "codex": {
      "primary": {
        "usedPercent": 31,
        "windowDurationMins": 10080,
        "resetsAt": "<redacted>"
      },
      "secondary": null,
      "planType": "plus"
    }
  }
}

What I observed:

  • 10080 minutes is 7 days
  • usedPercent: 31 matches /status showing 69% left
  • secondary is null
  • there is no windowDurationMins: 300 in the response

So, at least in the quota snapshot returned by account/rateLimits/read, there is no 5-hour (300-minute) bucket.

While using gpt-5.6-sol, I also saw the Weekly limit decrease:

76% left → 72% left → 69% left

So Weekly usage is being counted.

I am not claiming that the 5-hour limit does not exist anywhere in the backend, or that it is not being counted. It may be handled by another system.

The issue is that the Codex App, /status, and account/rateLimits/read all show only the Weekly limit.

What steps can reproduce the bug?
  1. Sign in to Codex CLI 0.151.0 with a ChatGPT Plus account using ChatGPT authentication.
  2. Use gpt-5.6-sol with reasoning effort high.
  3. Check Usage in the Codex App.
  4. Run /status in Codex CLI.
  5. Start:
codex app-server --stdio
  1. Initialize the session.
  2. Send:
{"method":"account/rateLimits/read","id":7}
  1. Check the response.

In my case, only the 10080-minute Weekly bucket is returned. There is no 300-minute bucket, and secondary is null.

What is the expected behavior?

If the 5-hour limit applies to this ChatGPT Plus account, I expect its current usage or remaining quota to be visible in the Codex App or CLI /status.

I am not assuming that account/rateLimits/read must always return a 300-minute bucket.

However, currently the App, /status, and the rate-limit response all show only the Weekly limit, so I cannot see the state of the 5-hour limit.

Additional information

A similar issue is #32840.

However, that issue was reported on 2026-07-13 with Codex CLI 0.144.3.

This issue is reproduced after the 5-hour limit was reintroduced for ChatGPT Plus, using Codex CLI 0.151.0.

I also confirmed that account/rateLimits/read returns only the 10080-minute bucket, with secondary: null and no 300-minute bucket.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the usage-limit display in Codex CLI 0.151.0 with a ChatGPT Plus account using the reported model and platform. Trace where the weekly and five-hour limits are presented; done means both reintroduced limits are visible when applicable.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.