[BUG] `claude update` reports stale version and prints success message before update message on repeat runs
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Running claude update twice in a row shows two bugs:
- The second run still reports the old "Current version" even though the
The previous run reported a successful update to the new version, suggesting
The version check isn't reading the newly installed binary or the update
It isn't actually persisting.
- On the second run, the "Successfully updated..." message is printed
BEFORE the "Updating to X..." message, i.e., the messages appear out of
logical order (success is reported before the update action that
presumably produces it).
What Should Happen?
- After a successful update, subsequent runs of
claude update(or
claude --version) should reflect the newly installed version as the
"Current version", not the old one.
- Status messages should always print in logical/chronological order:
"Updating to X..." before "Successfully updated to X".
Error Messages/Logs
First run:
PS C:\Users\Yorha2P> claude update
Current version: 2.1.200
Checking for updates to latest version...
Updating to 2.1.201...
Successfully updated from 2.1.200 to version 2.1.201
Second run (immediately after):
PS C:\Users\Yorha2P> claude update
Current version: 2.1.200
Checking for updates to latest version...
Successfully updated from 2.1.200 to version 2.1.201
Updating to 2.1.201...
Steps to Reproduce
- On Windows, using PowerShell 7.7.0-preview.2, run
claude updatewhen
an update is available (e.g., 2.1.200 -> 2.1.201).
- Observe the update completes and reports success.
- Immediately run
claude updateagain. - Observe "Current version" still shows the old version (2.1.200) instead
of the newly updated one (2.1.201), and the order of the "Updating to..."
and "Successfully updated..." log lines are reversed compared to the
first run.
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.200
Claude Code Version
claude --version
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
PowerShell 7.7.0-preview.2
Suspect the version-check logic may be reading from a cached path or a
different install location than the one actually updated, runningGet-Command claude | Select-Object -ExpandProperty Source may help
Identify if multiple binaries are on PATH.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗