Skip to content

[feature] Display reset date at codex-multi-auth check #633

Description

@the-nexi

Show weekly and 5-hour reset timestamps in codex-multi-auth check

Problem Statement

The codex-multi-auth check command displays the remaining weekly and short-term quota percentages for each account, but it does not show when those limits reset.

Current output:

[alpha@catalyst ~]$ codex-multi-auth check
Checking 2 account(s) with quick check + live check...
Model probe: gpt-5.6-sol | prompt family gpt-5.2 | tool search yes | computer use yes
  ✓ Account 1 (Personal (role:owner) [id:xxxxxx], 1@example.com, id:xxxxxx) | live session OK (7d 93% | quota 100%)
  ✓ Account 2 (Personal (role:owner) [id:xxxxxx], 2@example.com, id:xxxxxx) | live session OK (7d 98% | quota 100%)

Users must currently check the reset time elsewhere or estimate it manually. This makes it harder to understand account availability and plan legitimate personal development work.

Proposed Solution

Display the reset timestamp alongside both the weekly and 5-hour usage limits when the reset information is available.

Proposed output:

[alpha@catalyst ~]$ codex-multi-auth check
Checking 2 account(s) with quick check + live check...
Model probe: gpt-5.6-sol | prompt family gpt-5.2 | tool search yes | computer use yes
  ✓ Account 1 (Personal (role:owner) [id:xxxxxx], 1@example.com, id:xxxxxx) | live session OK (7d 93%, resets Jul 29, 2026 1:50 PM | 5h 100%, resets Jul 22, 2026 6:10 PM)
  ✓ Account 2 (Personal (role:owner) [id:xxxxxx], 2@example.com, id:xxxxxx) | live session OK (7d 98%, resets Jul 29, 2026 2:15 PM | 5h 100%, resets Jul 22, 2026 6:35 PM)

Expected behavior:

  • Show separate reset timestamps for the weekly and 5-hour limits.
  • Format timestamps in a readable form, such as Jul 29, 2026 1:50 PM.
  • Use the local system timezone, or clearly document the timezone used.
  • Preserve the existing output when reset timestamp data is unavailable.
  • Avoid failing the account check solely because a reset timestamp is missing or invalid.

This would let users understand both remaining capacity and when each usage window becomes available again from a single command.

Alternatives Considered

  1. Continue displaying only percentages.

    This keeps the output compact but does not tell users when limits reset.

  2. Add a separate verbose or details command.

    This could reduce the default output size, but reset timestamps are directly relevant to the quota summary already shown by check.

  3. Add reset timestamps only to structured output such as JSON.

    Structured output would be useful for automation, but users running the normal command would still need another step to retrieve basic reset information.

  4. Display relative durations such as resets in 3d 4h.

    Relative durations are compact, but absolute timestamps are easier to use for planning and are less ambiguous when sharing command output.

Scope

In scope

  • Reading the weekly reset timestamp from the existing account or quota response.
  • Reading the 5-hour reset timestamp from the existing account or quota response.
  • Formatting both timestamps for terminal output.
  • Displaying each reset timestamp next to its corresponding quota percentage.
  • Handling missing, null, or malformed reset values without failing the full check.
  • Adding or updating unit and command-level tests for the output.

Out of scope

  • Changing quota calculations or reset behavior.
  • Modifying account selection or authentication behavior.
  • Circumventing, extending, or bypassing usage limits.
  • Automatically switching accounts based on reset time.
  • Adding scheduling, notifications, or background monitoring.
  • Introducing multi-user or resale functionality.

Validation Plan

Manual testing and Unit-tests.

Command-level validation

Run:

codex-multi-auth check

Confirm that each successfully checked account displays:

  • The weekly remaining percentage.
  • The weekly reset timestamp.
  • The 5-hour remaining percentage.
  • The 5-hour reset timestamp.

Example expected account line:

✓ Account 1 (...) | live session OK (7d 93%, resets Jul 29, 2026 1:50 PM | 5h 100%, resets Jul 22, 2026 6:10 PM)

Also validate an account response where one or both reset timestamps are unavailable. The command should complete successfully and either omit the unavailable timestamp or display a consistent fallback such as reset unknown.

Compliance Confirmation

  • This proposal is for legitimate personal development workflows.
  • This proposal does not request bypassing OpenAI controls or policies.
  • This proposal does not introduce multi-tenant resale behavior.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions