Skip to content

fix: document false-positive update banner and add update-checker plugin (#18047)#55834

Open
SebTardif wants to merge 1 commit intoanthropics:mainfrom
SebTardif:fix/18047-update-banner-workaround
Open

fix: document false-positive update banner and add update-checker plugin (#18047)#55834
SebTardif wants to merge 1 commit intoanthropics:mainfrom
SebTardif:fix/18047-update-banner-workaround

Conversation

@SebTardif
Copy link
Copy Markdown

Summary

Addresses #18047 — the "Update available!" banner fires for Homebrew and WinGet users even when no update is available, because Claude Code checks the npm registry regardless of installation method.

This affects users across macOS, Windows, and Linux/WSL (see also #33155, #41947, #44773, #46550, #47900).

Changes

1. README.md — Known Issues section

  • Root cause explanation (npm registry vs package-manager version lag)
  • Per-platform verification commands (brew info, winget list, npm outdated)
  • DISABLE_AUTOUPDATER=1 workaround with both temporary and persistent examples (bash + PowerShell)
  • Note that the banner auto-resolves once registries catch up

2. plugins/update-checker — new SessionStart hook plugin

A lightweight plugin that detects the actual installation method and checks the correct package source:

Method Detection Version source
Homebrew brew info --cask claude-code Homebrew cask formula
WinGet winget show WinGet manifest
npm npm view npm registry

At session start it injects accurate update context, e.g.:

Update check (homebrew): Claude Code 2.1.73 is the latest version available via homebrew. If you see an "Update available" banner it is a false positive caused by the npm registry being ahead of your package manager.

Testing

  • Script syntax validated (bash -n)
  • Tested on WSL with both Homebrew and WinGet accessible — correctly prioritizes Homebrew
  • Version comparison verified for equal, newer, and older version cases
  • All JSON files validated

Related issues

Address anthropics#18047 — the 'Update available!' banner fires for Homebrew and
WinGet users even when no update is available, because Claude Code
checks the npm registry regardless of installation method.

Changes:
- README.md: add Known Issues section with root cause, per-platform
  verification commands, and DISABLE_AUTOUPDATER workaround
- plugins/update-checker: new SessionStart hook plugin that detects the
  installation method (brew/winget/npm), queries the correct package
  source, and injects accurate update status into the session context

Fixes anthropics#18047
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant