Update Claude Code

Quick answer. A native install of Claude Code auto-updates in the background; to force it, run claude update. A Homebrew install updates with brew upgrade claude-code@latest. The simplest way to keep Claude Code current and your setup clean is the free app Set Up Your Mac for Claude Code, which installs Claude Code, keeps it updated, and verifies it works.

claude update

✓ Every command verified on macOS 26.5, 2026-06-26, arm64.

Download the app "Set Up Your Mac for Claude Code"

This page covers Claude Code, the command-line coding tool you run with the claude command. How you update depends on how you installed it. For the graphical Claude Desktop app, see Claude Code vs Claude Desktop.

Update a native install

A native install (curl … | bash) auto-updates in the background: Claude Code checks on startup, downloads the new version, and applies it the next time you start. To force an update now:

claude update

To see the result of the last update attempt:

claude doctor

Update a Homebrew install

A Homebrew install does not auto-update. Upgrade the cask yourself (use plain claude-code if you installed the stable cask):

brew upgrade claude-code@latest

To make Homebrew run that upgrade for you, set CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE=1 in your shell profile. Release channels and the auto-update flag are covered on Brew Install Claude Code.

Updated but the version didn't change

The usual cause is conflicting installs — more than one claude on your PATH, so the shell keeps launching an old copy. List every claude on PATH (more than one path means a conflict):

which -a claude

Then check the three places a binary can come from (No such file or directory just means nothing is installed there):

ls -la ~/.local/bin/claude                         # native install
ls -la ~/.claude/local/                            # legacy npm local install
npm -g ls @anthropic-ai/claude-code 2>/dev/null    # npm global install

Keep one install — we favor a Homebrew or native install — and remove the extras. Run only the removal lines for the copies you don't want:

npm uninstall -g @anthropic-ai/claude-code         # remove npm global
rm -rf ~/.claude/local                             # remove the legacy npm install (documented legacy-install removal)
brew uninstall --cask claude-code@latest           # remove a Homebrew install (or plain claude-code)

The rm -rf ~/.claude/local line is Anthropic's documented way to remove the legacy local install; check the path before running it, since rm -rf deletes without asking. If the new version still doesn't appear, open a new terminal window so the shell re-reads PATH. For a command not found error, see command not found: claude.

Before you update: Claude Code needs a developer environment — a terminal, Homebrew, the Xcode Command Line Tools, git, and a paid Claude plan. See Prerequisites for Claude Code, or let the app above set it all up.

Download the app "Set Up Your Mac for Claude Code"

Sources

Command verification

Every command on this page was executed top-to-bottom on a clean macOS 26.5 (arm64) system on 2026-06-26.

CommandStatusResolved version
claude updatepass
claude updatepass
claude doctorskipped
brew upgrade claude-code@latestpass
which -a claudepass
ls -la ~/.local/bin/claudeinfo
ls -la ~/.claude/local/info
npm -g ls @anthropic-ai/claude-code 2>/dev/nullinfo
npm uninstall -g @anthropic-ai/claude-codepass
rm -rf ~/.claude/localpass
brew uninstall --cask claude-code@latestpass

Verification run 20260626T230924Z.