Claude Code

Claude Code 2.1.318: loginExpiresAt warns ten days before your claude.ai login ends

3 min read AI-generated

The warning also goes to stderr on every claude -p run. And a mod's $.model.fork now takes an effort option, so a quick side job can run at low.

Featured image for "Claude Code 2.1.318: loginExpiresAt warns ten days before your claude.ai login ends"

Claude Code 2.1.318 landed on npm on Monday at 21:55 UTC. I covered 2.1.317 yesterday. This release is a lot longer and has one clear theme.

Your login no longer expires in silence

claude auth status now reports the end date of a stored claude.ai sign-in as loginExpiresAt. In claude -p JSON results the same value appears as credential_expires_at. And ten days before expiry, claude -p prints a one-line warning to stderr.

A related fix went in: when a stored claude.ai login hit its time limit, sign-in used to fail without explaining itself. Now it says so, and in claude -p it names claude auth login and claude setup-token.

If you run Claude Code unattended—in CI, on a schedule, on a self-hosted runner—this is the first time you get advance notice instead of a silent failure.

For mods: effort when forking

A mod’s $.model.fork now accepts an effort option. A short side job can run at low whatever effort the session uses, and the result reports which effort was actually sent. Claude Code also keeps a record of your answer when it asks whether to turn on a mod it wrote during the session.

Most of the fix list is about network home directories

The list is long, and a big share of it concerns configuration files. On network home directories, ~/.claude.json, the settings files and the stored login are now less often deleted, briefly emptied or replaced by an older copy. /logout, claude auth logout and claude mcp remove no longer report success when the file could not be written at all. And an empty ~/.claude.json with no backup is no longer treated as corrupted. Claude Code starts as if the file were simply missing.

Other fixes you will notice day to day:

  • --continue sometimes lost the earlier conversation after a malformed tool call’s retries ran out, a regression from 2.1.314.
  • macOS sessions with many running Bash commands stalled while memory grew.
  • Permission prompts were being answered by keys typed just after a message was sent.
  • The “Now using usage credits” notice reappeared roughly every 30 seconds while a background subagent was running.

One behaviour change worth knowing: started in an IDE terminal, Claude Code no longer installs or updates the IDE extension. Use /ide from an outside terminal, or your editor’s extensions view.

The value is in the lead time

Visible features are thin in this release. The payoff sits in two lines near the top: an expiry date you can query, and a warning that arrives ten days early. Anyone who has discovered on a Monday morning that a nightly run had been signed out since Friday knows what that is worth.

Sources

Claude CodeReleaseAuthenticationMods