A session-limit reset isn't available right now.
The message
A session-limit reset isn't available right now.What it means
The reset wasn't on offer for the limit you're at. You haven't used up the week's reset (that prints a line with a date on it), and a failed check prints its own try-again line.
What to do
Run it while you're stopped at the five-hour session limit, with lower-priority mode switched off. If you're at that limit and still get this line, the server has left your account out, and there's no setting on your side that changes it.
You're stopped at a usage limit, you type /limit-reset, and Claude Code answers with a single line and no reason:
A session-limit reset isn't available right now.
The command is hidden from the command list and missing from the published reference, so I read the strings and the logic in the shipped binary instead (version 2.1.280). It comes down to the reset not being offered for the limit you're at, and most of the reasons it wouldn't be are right there in the code.
What the message rules out
My first guess was that the week's reset had already gone. Turns out the command has separate lines for that and for the other failures you'd guess first, and it prints those instead when they apply.
If you've already used the week's reset, the line says so and gives a date:
Weekly reset used · available again Sep 29
If Claude Code couldn't reach the server to ask, you're told to try again:
Couldn't reset your session limit right now · try again in a moment
A sign-in problem has its own line too, pointing you at /login. So the bare sentence means none of those happened. In the code it's the fall-through after both checks, and it's also what comes back when the server turns down the claim itself with an answer of ineligible. Unlike the other lines, it can't be reworded from Anthropic's side: it's a fixed string, while the rest can be swapped out by a remote config blob.
The checks that have to pass first
Before the reset counts as offered, Claude Code tests all of these, and a single miss gives you the line at the top of this page:
- you're signed in with a Claude subscription, and the account isn't on usage-based billing
- the limit status the server sent back is a refusal with a reset time on it
- you aren't running on extra usage (overage) at that moment
- the limit you've hit is the five-hour session limit, labeled
five_hourin the code - the server's answer puts your account in the
resetarm, with a reset marked available - the reset time is still in the future
- lower-priority mode isn't running
- the command's client config, keyed
tengu_nifty_lemur, hasenabledset totrue
Running it at the wrong moment gets the same line
Several of those checks are about timing, which I didn't expect, and Claude Code runs them locally before it bothers the server. Type /limit-reset before you've hit anything and you get the refusal. The same happens if what stopped you is the weekly limit, since the reset only covers the five-hour one, and if you're carrying on with extra usage.
Lower-priority mode is a bit of a trap here. If you took the /low-priority offer at your limit, the reset stops being offered while that mode is on. Run /low-priority again to switch it off, then try the reset. (The lower-priority side has its own refusal, which we took apart on its own page.)
When the server says no, it doesn't tell you why
If you're genuinely stopped at the five-hour limit and still get this line, the decision came from the server. When Claude Code asks about a limit, the answer carries a small status block with an eligible flag, an arm that is either control or reset, and a reason when you're ruled out.
The reasons the client knows about are tier, tenure, surface, mobile, cli_version, not_at_wall, weekly_limit, no_weekly_limit, other_experiment, extra_usage, unavailable and unknown. Claude Code writes that reason to its telemetry and prints none of it. I think the arm field matters most. It marks a staged experiment (the client only reads the arm, it never picks one), and an account in the control group is never offered the reset at all.
Granted, one of those reasons is yours to fix. cli_version reads like an out-of-date client, so update first. Plan, account age, the surface you're on and the experiment group are all set on Anthropic's side.
What it looks like when the reset is offered
When every check passes, the reset shows up without you asking. The limit menu gains an entry that reads Reset your session limit now, and the offer line spells out the ration:
/limit-reset to reset your session limit now · uses weekly limit · 1/week
Taking it prints a line that ends by reminding you the weekly limit is untouched:
Session limit reset · next reset available Sep 29 · your weekly limit still applies
The same binary carries a second, newer reset program under a different config key. If /limit-reset on your machine describes itself as "Use an available limit reset and keep working", you're on that one, and its refusals are worded differently from everything on this page.
Related pages
We wrote up what the command resets and what it leaves alone in Claude Code's /limit-reset, and what it actually resets. If you typed it into claude -p or a script and got /limit-reset isn't available in this environment. instead, that's a different problem with a simpler fix, covered on its own page.
Other lines the same feature prints
Match yours against these if the one at the top of the page is not quite it. They come from the same code and mean related things.
❯ /limit-reset ⎿ A session-limit reset isn't available right now./limit-reset ⎿ A session-limit reset isn't available right now./limit-reset to reset your session limit now · uses weekly limit · 1/weekReset your session limit nowSession limit reset · next reset available Sep 29 · your weekly limit still appliesWeekly reset used · available again Sep 29Couldn't reset your session limit right now · try again in a momentYour session limit is already being reset · one momentCouldn't reset your session limit with this login · run /login, then try again