False positive 'Update available' banner when already on latest version

Status Fixed / completed
Reported on v2.1.92
Maintainer reply ✓ Yes — ashwin-ant
Activity 5 comments · opened Apr 16, 2026 · closed Apr 18, 2026
💡 Likely answer: A maintainer (ashwin-ant, collaborator) responded on this thread — see the highlighted reply below.

Description

The status bar (bottom right) persistently shows "Update available! Run: brew upgrade claude-code" even though the installed version is already the latest.

Steps to Reproduce

  1. Install claude-code via Homebrew (brew install claude-code)
  2. Observe the "Update available" banner in the bottom-right of the Claude Code window
  3. Run brew upgrade claude-code — reports already up to date
  4. Run brew reinstall claude-code — banner persists after restart

Environment

  • Installed version: 2.1.92 (confirmed via claude --version)
  • Homebrew cask version: 2.1.92 (confirmed via brew info --json=v2 claude-code)
  • brew outdated claude-code: returns nothing (no update available)
  • Platform: macOS (Darwin 24.6.0, Apple Silicon)
  • Install method: Homebrew cask

Verification

All of the following confirm no update is actually available:

$ claude --version
2.1.92 (Claude Code)

$ brew info claude-code
==> claude-code (Claude Code): 2.1.92
Installed: 2.1.92

$ brew outdated claude-code
(no output)

Expected Behavior

The "Update available" banner should not appear when the installed version matches the latest available version.

Actual Behavior

The banner persists across restarts and even after brew reinstall. There is no local cache file to clear that resolves it. The update check mechanism appears to be out of sync with the actual latest version.

View original on GitHub ↗

5 Comments

github-actions[bot] · 4 months ago

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/41840
  2. https://github.com/anthropics/claude-code/issues/41947
  3. https://github.com/anthropics/claude-code/issues/18055

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

VoitihovichP · 4 months ago

try

brew uninstall --cask claude-code
brew install --cask claude-code@latest

nkorf-adastra · 4 months ago

I dug into the binary to figure out what's actually going on here. The root cause is pretty straightforward.

There are two Homebrew casks: claude-code (stable) and claude-code@latest. The PackageManagerAutoUpdater detects the Homebrew install by checking if the exec path contains /Caskroom/, then extracts the cask name from the path. Since the cask name isn't claude-code@latest, it defaults the update channel to "stable". It then fetches the latest version from npm's stable dist-tag — currently 2.1.112 — and compares it against the installed 2.1.92. Naturally 2.1.92 < 2.1.112, so it renders the "Update available" banner telling you to brew upgrade claude-code.

The problem is that brew upgrade claude-code only has 2.1.92. The CLI never actually checks what version Homebrew has available — it just compares against npm and assumes brew can deliver it.

Installed (brew claude-code):      2.1.92
Homebrew claude-code@latest cask:  2.1.112
npm stable dist-tag:               2.1.112

A fix would be either:

  1. When the install method is homebrew, query brew info (or the Homebrew API) for the actual available cask version, and only show the banner if that version is newer than what's installed
  2. Or, if querying brew is too slow/unreliable, at least suppress the banner when brew upgrade would be a no-op (i.e. installed version matches the cask version)

For now, users on the stable cask can work around this by installing claude-code@latest instead:

brew uninstall claude-code
brew install claude-code@latest
ashwin-ant collaborator · 4 months ago

This was fixed in v2.1.101 — Homebrew installs now check the actual cask version on formulae.brew.sh, eliminating false 'Update available' banners. If you're still seeing this in the latest version, please comment with your version and repro and we'll reopen.

github-actions[bot] · 4 months ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.