Repository navigation
Enforceable task budgets and clearer usage controls in Codex #45536
Description
What variant of Codex are you using?
Codex Desktop app on Windows
What feature would you like to see?
Feature request: Enforceable task budgets and clearer usage controls in Codex
The problem
As a paying Codex user, I need better control over how much of my allowance a task consumes, especially when using Astra.
I use Codex for substantial, ongoing personal projects. I have invested time in explicit efficiency instructions and reusable workflows intended to prevent repeated reading, redundant checks, oversized outputs, and unnecessary work. However, Codex does not consistently follow those instructions.
When that happens, I pay twice: the unwanted work consumes my allowance, and identifying and correcting it consumes additional usage and my time. Asking the assistant to follow instructions more carefully does not provide a dependable spending control.
I have also seen other users report unexpectedly high Astra usage. Those reports do not establish a shared cause, but they reinforce the need for clearer visibility and controls.
Requested features
-
Enforceable per-task budgets
Let me limit the allowance a task may consume. Enforce that limit in the application, with a clean checkpoint and a request for approval before further work. -
An estimate before expensive work
Show an approximate usage range before starting a substantial task. Clearly identify uncertainty and warn me if the task is exceeding the estimate. -
Live, understandable usage reporting
Show how much allowance the current task has consumed, alongside the remaining short-term and weekly allowance. Explain how reported token usage relates to subscription limits. -
Visibility into avoidable work
Provide a concise breakdown of usage associated with reasoning, tools, subagents, and retries. Make repeated operations visible so users can understand where their allowance went. -
Application-enforced efficiency and scope controls
Offer controls for limiting retries, repeated retrieval, subagent activity, and expansion beyond the requested task. These controls should remain effective throughout long tasks and context compaction. -
Cost-aware model choices
Before starting, help users judge whether a less expensive model is suitable. Ask before switching to a model that would consume allowance faster.
Expected result
I should be able to authorize a task with a clear budget, see its usage as it runs, and trust that Codex will stop before exceeding that budget without approval.
I understand that difficult tasks can require substantial computation and that estimates cannot be exact. The request is for predictable controls, transparent accounting, and protection against avoidable consumption.
Efficiency should be a dependable product feature, not something users must repeatedly persuade the assistant to practice.
Additional information
No response
Activity
github-actions commentedon Sep 14, 2026
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
mschilingno commentedon Sep 15, 2026
marketinglior-pixel commentedon Sep 15, 2026
Yeah. "Asking the assistant to follow instructions more carefully does not provide a dependable spending control" is the whole problem in one sentence.
Weekly and 5-hour windows are real, but they're clock-scoped. One task can still chew through a window (or two consecutive ones) while the account meter looks fine until it's suddenly empty. Prompt efficiency is advisory; it doesn't enforce a number on this job.
What you're asking in (1) feels right to me: a budget on the task, checked in the app before the next call, then a checkpoint and explicit approval if you want more. I've been poking at the same shape outside Codex with a shared
task_refand a preflight that can returnapproved: falseso your code decides what happens next. Not perfect, but at least the ceiling isn't hoping the model remembers.Curious whether you'd keep one budget ID across compaction / long sessions, or reset when context folds.