Native installs update themselves in the background and take effect next launch, so most of the time you do nothing. When you need it now, run claude update. Everything else on this page is for the installs that never auto-update, and for the ones that quietly stopped.
1. Check your version
claude --version
Prints something like 2.1.211 (Claude Code). If this says command not found, the update isn’t your problem — see fixing command not found.
2. Update now
claude update
Applies a pending update immediately instead of waiting for the next background check. On success it reports Successfully updated from <old version> to version <new version>; if you were already current it says Claude Code is up to date.
3. Package managers do not auto-update
This is the part that catches people. Homebrew, WinGet, apt, dnf and apk installs do not update through Claude Code — claude update just reports that it is up to date:
brew upgrade claude-code # or claude-code@latest
winget upgrade Anthropic.ClaudeCode
npm install -g @anthropic-ai/claude-code@latest
Pick the line matching how you installed. The npm one has changed: use @latest explicitly, because npm update -g obeys the semver range from your original install and can leave you behind.
4. When an update stalls
claude doctor
Prints read-only install and settings diagnostics without starting a session — including the result of the most recent update attempt. The usual causes are a non-writable npm global directory (never fix that with sudo) and a custom launcher script at ~/.local/bin/claude that the installer now leaves alone. Remove that launcher and re-run claude update to hand control back.
5. Choose how fast updates arrive
{ "autoUpdatesChannel": "stable" }
Add this to your settings.json to track the stable channel — roughly a week behind, skipping releases with major regressions — instead of the default latest. To stop background updating entirely, set DISABLE_AUTOUPDATER to "1" under env; claude update still works.
A slash command or flag you read about but don’t have is almost always a version gap, not a bug. Fresh install instead? See install Claude Code on Windows and the official setup docs.