[Bug] Auto-update fails to update symlink to latest downloaded version
Bug Description
Title: Auto-update downloads new versions but fails to update symlink
Description:
Auto-update mechanism downloads new versions to ~/.local/share/claude/versions/ but does not update the symlink at ~/.local/bin/claude, leaving the CLI stuck on an old version.
Expected behavior:
When a new version is downloaded, the symlink should be updated to point to the latest version.
Actual behavior:
- New versions are downloaded (2.1.5, 2.1.9 were present in versions directory)
- Symlink remains pointing to old version (2.1.2)
- claude update reports "Claude Code is up to date" despite newer versions being available
- claude --version shows old version
Environment:
- macOS (Darwin 25.0.0)
- Native installation at ~/.local/bin/claude
- autoUpdatesChannel: "latest" configured
- DISABLE_AUTOUPDATER not set
Investigation:
$ ls ~/.local/share/claude/versions/
2.1.2 2.1.5 2.1.9 # 2.1.9 already downloaded
$ ls -la ~/.local/bin/claude
claude -> ~/.local/share/claude/versions/2.1.2 # Still pointing to old version
$ claude update
Claude Code is up to date (2.1.2) # Incorrectly reports as up to date
Workaround:
Manually updating symlink: ln -sf ~/.local/share/claude/versions/2.1.9 ~/.local/bin/claude
Symlink was reverted automatically after manual fix.
- Fixed symlink to 2.1.9 manually
- After some time, symlink was reverted to 2.1.2
- Timestamp shows active process is overwriting the symlink
This indicates something is actively reverting the symlink to an old version, not just failing to update it.
Environment Info
- Platform: darwin
- Terminal: vscode
- Version: 2.1.2
- Feedback ID: 0a686907-3ca1-4ff4-b1d6-960995959283
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗