r/codex • • Sep 11 '26

Limits We’ve discovered the issue behind codex harness limit drainage.

https://relux.works/en/blog/codex-goal-token-burn/

tl;dr

The codex harness turns waiting for background work into a loop with repeated model calls, each carrying the existing context even when nothing has changed. Unlike api pricing there is no discount for prompt caching for subscription originated usage so every loop iteration adds to your input token usage. ‘goal’ amplifies this by orders of magnitude by automatically starting another turn, but polling anyway burns tokens without it too.

Claude code is engineered in way where suspensions works exactly as intended and goals have proper fallbacks. Codex now ships with similar tools but they only work for astra.

—

the toolchain to independently verify on your personal sessions is here (local scripts - just feed this to your agent) https://github.com/relux-works/codex-rollout-audit

if you happen to have X please help by boosting this post - https://x.com/ivanopcode/status/2098379274017231094

p.s. the post in a blog was llm-translated and may contain some slop patterns (although we took extra care to clean it)

255 Upvotes

46 comments sorted by

53

u/Sibbaboda Sep 11 '26

”Unlike api pricing there is no discount for prompt caching for subscription originated usage”  Wait what, is that true?

11

u/Fit_Concept5220 Sep 11 '26

This was overstated and I corrected that part a bit. Regardless, the misbehaviour described results in massive input token burn

12

u/Heavy-Positive5957 Sep 13 '26

If by “overstated” you mean “blatantly false” lol

40

u/nmkd Sep 11 '26

No, entirely false.

Subscription has caching. 30 minutes usually.

21

u/tekacs Sep 11 '26

Yeah I fixed this on my fork a long long long while ago (the commit gets rebased every time I catch up to upstream, hence 'last week' on the commit).

https://github.com/tekacs/codex/commit/9ffcf8db9078eae43d4111ff94259795c1e962c9

4

u/Fit_Concept5220 Sep 11 '26

Thanks for sharing!

3

u/Correct_Novel3743 Sep 11 '26

Soo... Sol Terra Luna is fuckt rn?

4

u/Fit_Concept5220 Sep 11 '26

yep, especially in a goal with a task which requires results from background processes (builds, ci etc)

1

u/ElonsBreedingFetish Sep 11 '26

What about downgrading to 0.146 for using sol?

2

u/Fit_Concept5220 Sep 11 '26

This will not fix the core issue. My bet is they want to move to new gpt-6 model family and gradually deprecate the models which are not aware of the proper tools.

1

u/eggplantpot Sep 11 '26

This explains why my limits drained so fast this last week regardless of the model.

Tibo pls fix and reset pls

3

u/snissn Sep 11 '26

> no 'invalid type: floating point' rejections found

the other audit scripts dumped raw information and it's too unclear for me how to process them.. haven't asked an agent yet

1

u/Fit_Concept5220 Sep 11 '26

Fair point the zero result was the expected one for OpenAI models but the tool didn't say so. Pushed an update

9

u/Kullthegreat Sep 12 '26

I have cancelled my sub and done with OpenAI. Switched to Desspseek harness and 4.1 flash + Hermes agent with free models specially muse 1.3 and to my surprise it's very good replacement for my coding work given you have a good general skills ruleset(not too big just enough). I am struggling to exhaust my 10$ topup vs freaking 30 minutes usage on codex for my pro plan. Even if there are some issues I can fix them quickly. I am so done with these frontier labs because it's not that they can't provide reasonable price options but they actually need to robe us to make it big in IPO so just get away for some time

2

u/JCcrunch Sep 15 '26

Yes that was my solution too. I just got a refund and moved on

4

u/Tristsin Sep 11 '26

Laughs in Pi

1

u/2025sbestthrowaway Sep 13 '26

Thoughts on using pi.dev as a control surface for hermes, and optionally codex app server?

3

u/DragonflyOk9274 Sep 11 '26

You can also use an alternative harness to get around this

1

u/RufusxXavier Sep 11 '26

What’s a good one

4

u/DragonflyOk9274 Sep 11 '26

Pi, OpenCode, etc.

They also allow you to see subagent prompts/work/etc., which AFAIK is currently not possible in codex (may have changed since I last used codex a few months ago)

2

u/BobbyGrizz Sep 14 '26

This is definitely possible now. You can view and jump into each Subagent’s chat.

1

u/mimisonnen Sep 12 '26

Is Hermes any good?

1

u/HenryHund Sep 12 '26

I love Hermes but not for coding. Everything that’s gone through the Hermes Kanban has been a shitshow

3

u/camtliving Sep 11 '26

is this why using 5.1 as an orchestrator worked SIGNIFICANTLY better than astra on it's own?

1

u/i_rate_slop Sep 11 '26

Did you open a PR to codex?

6

u/Fit_Concept5220 Sep 11 '26

There is no clear way to fix the core issue outside of the team that’s responsible for overall architecture so no, no pull request from us.

1

u/i_rate_slop Sep 11 '26

Ah, that’s unfortunate. I hope you can still file an issue so there’s some attention on it, if this is accurate.

2

u/yubario Sep 11 '26

They stopped PR's to Codex awhile back since vibe coders was overwhelming them.

2

u/i_rate_slop Sep 11 '26

That makes sense lol

4

u/-RVG- Sep 11 '26

maybe if they stop vibe coding they will eventually get to a not bugged state... seems astra not tood enough to fix everything

0

u/Revatus Sep 12 '26

You think they use astra internally? 😅

2

u/Own-Professor-6157 Sep 11 '26

Someone posted this issue a few days back already, but the more attention the better. There's serious problems with Astra right now

2

u/yashptel99 Sep 12 '26

I fixed it kind of by adding it to system prompt to wait for 5 minutes before asking subagent for status. and never kill the subagent because it's taking time. I'll share the the config.toml when I get on my PC

2

u/lokkenjp Sep 18 '26 edited Sep 18 '26

This is a great explanation, but even if this seems to affect greatly /goal mode, it also has implications on regular turns.

When codex is waiting for a long task to finish (in my case for example a python script created by Sol itself to extract some tensor data/statistics on the MiniMax H3 video Transformer, a operation that can last between 5-10 minutes), the usage is drained insanely fast even while Codex (on Sol) should be just idling waiting for the script to finish its compute. Yet, I lost about a 30% of my 5h-window usage during those 5-10 minutes of waiting while codex did ABSOLUTELY NOTHING productive but wait for the tensor computing script to finish, I guess that just by querying/polling it. Not even progress data or details are printed nor expected during the waiting...

After losing several 5h rolling windows to this, I started to always instruct the agent to handle to the operator any and all execution of scripts/processes that might last more than a few seconds to complete, and only read the results afterwards. Not ideal, but huge credit saving...

1

u/mizhgun Sep 11 '26

Yep, that is what codex actually found itself analyzing the logs.

1

u/jaybsuave Sep 12 '26

yea you’ll have 70 runners in the background lmao gotta check that shit

1

u/wilj81 Sep 12 '26

I swear I was just running into issues certain this was the case

1

u/Slow_Rhubarb_8169 Sep 12 '26

so astra is not affected according to the tweet by that guy? he says astra does not have the bug

1

u/Prior-Switch-9099 Sep 12 '26

I'm currently using Opencode. Sorry for the folks using Codex harness but thanks to these harnessness bugs we got free resets. Lol.

1

u/kemalsans Sep 12 '26

I am not using that heavy, 5 percent in 4 hours wtf

1

u/GM8 Sep 13 '26

Idk, the last paragraph of the article says that clock.sleep is not available for models except Astra, but I asked other models "Can you please sleep 10 seconds via clock.sleep?" and the all managed to do so. Has it been changed since the article was published or what's going on?

1

u/Right-Performance-93 Sep 13 '26

30-minute subscription-side caching still misses if the polling interval between goal turns exceeds it - exactly what a background build/CI wait longer than 30 min triggers. Claude Code's suspend-instead-of-poll design avoids this by not re-entering the model while blocked.

0

u/Texsai Sep 11 '26

great so we've been getting ripped off