Repository navigation
Feature request: Auto-resume paused Goals when quota refreshes #31386
Description
Summary
When a Codex Goal hits the 5-hour usage limit, the Goal already becomes paused and can be manually resumed after the quota refreshes. The missing feature is not another resume button. The request is for an opt-in automatic resume path that uses the existing paused Goal state and resumes the Goal once the quota window has refreshed.
Current behavior
When the 5-hour quota is exhausted during an active Goal:
- The Goal is paused because no more model calls can be made.
- After the quota refreshes, the user can manually resume the Goal.
- If the user is away, asleep, or not watching the machine, the Goal remains paused even though quota is available again.
This makes long-running Goals less useful for unattended or multi-hour coding workflows, because the Goal cannot continue across normal quota-window boundaries without manual intervention.
Requested behavior
Add an explicit opt-in auto-resume mode for paused Goals:
- When a Goal pauses because the 5-hour quota is exhausted, record that the pause reason is
usage_limit/quota_exhausted. - If the user enabled auto-resume for that Goal, schedule the existing Goal resume path for the quota reset time.
- When the quota refreshes, automatically resume the same paused Goal without requiring the user to click Resume or type “continue”.
- Resume from the existing Goal state and current task context, rather than starting a new task or requiring the user to restate the goal.
- Respect all existing safety and permission behavior. If the resumed Goal requires user approval, has stale workspace state, or cannot safely continue, keep it paused and show the reason instead of proceeding silently.
Not requested
- Not asking for a new one-click resume button. Manual resume already exists.
- Not asking Codex to bypass, ignore, or work around the 5-hour quota.
- Not asking Codex to keep making calls while quota is unavailable.
- Not asking for automatic resume unless the user has explicitly enabled it for the Goal/session.
Why this matters
For large coding tasks, the 5-hour quota boundary is a normal recoverable pause, not a true task failure. If the user has intentionally started a long-running Goal, it is reasonable to let that Goal continue automatically after the quota window refreshes, provided the user opted in and permissions remain valid.
Without this, Goals often require the user to manually check back after every quota reset, which weakens the usefulness of Goals for overnight or long-running work.
Possible implementation details
- Reuse the existing paused Goal state and manual resume mechanism.
- Add a per-Goal option such as “Auto-resume after quota refresh”.
- Store the quota reset timestamp from the rate-limit response.
- At or after the reset time, re-check quota availability before resuming.
- Preserve the Goal’s permission/sandbox/approval context when resuming.
- If permissions cannot be preserved, keep the Goal paused and show a clear message.
Acceptance criteria
- A Goal paused due to 5-hour quota exhaustion can automatically resume after quota refresh when the user has enabled auto-resume.
- The same behavior is not triggered for explicit user cancellation, unrecoverable errors, or approval-required states.
- The auto-resume path does not bypass quota checks; it waits until quota is available.
- Manual resume remains available and unchanged.
- The UI/logs clearly distinguish “paused due to quota, auto-resume scheduled” from “paused and waiting for user action”.
Related issues
- Auto Resume /Goal after limit reached once limit is reset (5h) #28931 requests auto-resume after the 5-hour limit resets. This issue is intended to clarify the narrower behavior: use the existing paused Goal state and existing resume path, rather than adding another manual resume UI.
- Bug report: Session resume after rate limit loses task intent and continues on wrong context #8310 discusses loss of task intent after resume. That is related but separate: this request is mainly about automatic continuation after quota refresh.
Activity
github-actions commentedon Jul 7, 2026
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
[-]Feature request: Auto-resume Goals after 5-hour quota refresh[/-][+]Feature request: Auto-resume paused Goals when quota refreshes[/+]Jegatheesh001 commentedon Oct 2, 2026
Any update on this request?
rostikowb commentedon Oct 11, 2026
up
Ian688 commentedon Oct 14, 2026
I built an independent macOS prototype to explore this workflow: Codex Relay.
It supports explicit per-session monitoring and two policies: recovery after quota exhaustion, or early pause to reserve quota with reset/remaining-quota recovery conditions. Ordinary continuation and formal Goal recovery are separate actions. Turn, Goal, and Relay status are shown independently, with read-only evidence.
A dedicated real Goal passed native pause → verified Accessibility Resume → owner-confirmed new execution turn, with one recovery attempt. Quota trigger readings were controlled in an isolated database; this was not a real account-exhaustion/full-reset-window test. Manual Goal pauses remain manual, and uncertain submissions do not automatically replay.
One useful finding: changing persisted Goal metadata to
activedid not wake the existing Desktop executor in our test. A native implementation should use the actual Goal execution lifecycle and confirm execution, rather than equating a successful state write or a Continue message with Goal recovery.The prototype is version-sensitive and is not presented as a substitute for native support. It offers a working reference for the opt-in policy, pause-reason distinctions, duplicate prevention, and decision UI described in this issue. English-first UI and Chinese support are included. I would welcome feedback from the team or other users testing this workflow.
songyb111-gachon commentedon Oct 18, 2026
For anyone on Windows who needs this before a native option lands: the advanced edition of Codex Auto Resume (v0.6.16, unofficial, MIT) does the opt-in part you describe - when the 5-hour limit pauses a Goal, it waits for the reset time Codex reports and then sets that same paused Goal active again through Codex's own app server, so the Goal carries on. It never creates a goal or changes what it says, and it is off until you turn it on. (@Ian688's Codex Relay above covers macOS.) A built-in toggle would still be the better fix.