Usage interfaces tend to outlive the provider behavior they were designed around. In July 2026, Codex no longer reports the old 5-hour quota window. Codex exposes a weekly window only. A tracker that keeps drawing the retired window is not providing extra detail; it is presenting stale product history as current data.

1. Model the window the provider reports
The current Codex usage surface should have one primary weekly window. Agent Island labels the tile from the period returned by the provider instead of hardcoding "5h." When a provider returns only one window, the tile expands rather than leaving a permanent no-data placeholder beside it.
The percentage can be shown as used or remaining, and the reset time gives the number context. This answers "how much weekly capacity is left?" It does not answer "how many tokens did this repository consume?"
2. Keep Codex freshness independent
A combined Claude and Codex dashboard still needs provider-scoped state. A successful Claude refresh must not make stale Codex data look current. Each provider needs its own value, error, and refresh timestamp so a partial failure remains visible.
The same rule applies after startup. Preserved values can prevent an empty flash, but the UI should not silently extend their freshness. A visible sync age and provider-specific error are more useful than a single green status for the whole dashboard.
3. Derive local token activity from Codex events
Codex session records can contain token usage for individual events. A local ledger should parse those events, keep input, output, and cached-token categories distinct, and deduplicate replayed records. It should use event time for day and week attribution, not the later scan time.
This is a different measurement surface from weekly quota. Provider quota can change without a one-to-one token explanation, and local logs can be incomplete or contain a model identifier the embedded price snapshot does not know.
4. Estimate value without claiming a bill
For known model identifiers, Agent Island can apply a dated price table to local token categories. The result is estimated API value. Unknown models remain unpriced instead of being silently mapped to a convenient rate.
Do not compare that estimate with a subscription charge and call the difference an accounting error. Included usage, provider rules, pricing changes, missing events, and different aggregation boundaries make exact reconciliation a separate experiment.
5. Preserve the local boundary
Agent Island reads the session records on the Mac and computes the ledger locally. Transcript content is not uploaded to an Agent Island service, and no Agent Island account is needed. Weekly and monthly cards remain local until the user explicitly copies or shares one.
Questions to ask any Codex usage tracker
- Does it show one current weekly window instead of a fictional 5-hour window?
- Are Codex freshness and errors independent from Claude?
- Does the token ledger deduplicate replayed events?
- Are unknown models visibly unpriced?
- Is estimated API value labeled separately from actual spend?
- Does it state which data remains local?
Current verified scope
The Codex weekly quota, local cost ledger, and report behavior described here is verified on macOS in Agent Island v1.7.1. The Windows package is publicly available, but this article does not claim Windows parity for these usage surfaces. It also makes no Codex quota-alarm claim.
Agent Island is free and MIT licensed. Read the Claude Code usage tracker for the two-window case, or inspect the implementation on GitHub.
← All posts