Running an outdated terminal assistant feels like driving with the parking brake on. You lose new features, miss model support and hit bugs that the team already fixed. Learning how to update claude code removes that friction in about a minute and this guide shows you every route.
Your best method depends on how you installed the tool. Native installs update themselves. While Homebrew WinGet and npm installs need a nudge from you. Read on find your setup and run the right command with confidence.
Why Updating Claude Code Pays Off Fast
Each release brings sharper performance, new commands and support for the latest models. A stale version can also break integrations. Such as MCP servers and hooks, without any obvious warning.
Security matters too. Updates patch authentication, permission and sandboxing issues that older builds still carry.
Knowing how to update claude code also protects your workflow. A newly launched model may require a newer client so an old install can leave you stuck on the sidelines.
Check Your Version First
Before you change anything, see what you run today. Open your terminal and type this:
claude –version
A healthy install prints a number such as 2.1.211. Write it down so you can compare it after the update.
Next, run a quick health scan. The claude doctor command reports your install type, settings problems and the result of the last update attempt. It starts no session and changes nothing.
Finally, list every copy of the program on your system with which -a claude. One line means one install. Several lines mean competing copies which cause most “stuck version” headaches.
Identify Your Install Type
Your install method decides who handles updates. Match your setup in the table below then jump to the right command.
| Install Method | Updates Automatically? | Manual Update Command |
| Native installer | Yes, in the background | claude update |
| Homebrew | No (opt-in available) | brew upgrade claude-code |
| WinGet | No (opt-in available) | winget upgrade Anthropic.ClaudeCode |
| apt (Debian, Ubuntu) | No | sudo apt update && sudo apt upgrade claude-code |
| npm global | Only if the folder is writable | npm install -g @anthropic-ai/claude-code@latest |
Not sure which row fits you? Run claude doctor. It names your install type right at the top.
How to Update Claude Code Step by Step

Start with the simplest path. If you used the native installer type claude update and press Enter. The tool checks your release channel and installs anything newer.
You will see a message that reports the move from your old version to the new one. If you already run the newest build then it tells you that you have up to date. For the latest installation and update guidance, check Anthropic’s official Claude Code update instructions before changing your setup.
Homebrew users run brew upgrade claude-code. If you chose the latest channel cask, run brew upgrade claude-code@latest instead. Windows users on WinGet run the command from the table above.
Linux users on apt run the combined update and upgrade line. Package managers on Fedora, RHEL and Alpine have matching upgrade commands.
After any method finishes, open a fresh terminal window. Then run claude –version and compare the number with the one you wrote down earlier.
Skip the npm Update Trap
Many guides tell npm users to run npm update -g. That command follows the version range from your original install so it may leave you behind the newest release.
Use the explicit route instead
npm install -g @anthropic-ai/claude-code@latest
This command pulls the newest published build every time. Also, never add sudo to a global npm install. It invites permission trouble and security risk.
Check your Node.js version too. The npm package asks for Node.js 22 or later. Older versions print a warning during install though the tool usually still runs.
Honestly the native installer or Homebrew saves you these chores. Switching takes a few minutes and removes npm permission headaches for good.
Pick the Right Release Channel
Claude Code offers two channels. You choose how fast new builds reach you and the right pick depends on your tolerance for surprises.
| Feature | Latest Channel | Stable Channel |
| Release timing | Same day as launch | Roughly one week behind |
| Best for | Solo builders, early adopters | Teams, shared machines |
| Risk level | Higher | Lower |
| New model access | Immediate | Possible delay |
Change the channel inside a session with the /config command and look for the auto update channel option. You can also edit the autoUpdatesChannel value in your settings.json file.
Want a safety floor? Set minimumVersion in the same file. Background updates then refuse to install anything older than that number so a channel switch never pushes you backward. Claude Code also offers automated workflows beyond keeping the tool updated. Learn how Claude Auto Mode works and how it can change the way you manage coding tasks.
Fix Claude Code Update Errors Quickly
Most failures trace back to a handful of causes. Work through these checks before you reinstall anything:
- Command not found: Your install folder is missing from PATH. Add it to your shell profile then open a new terminal.
- Permission denied on npm: The global folder is read only for your user. Move to a native or Homebrew install instead of forcing sudo.
- Update notice but nothing new: The package manager has not published the release yet. Wait a short while and try again.
- Old version after updating: Your terminal cached the old binary. Quit the app completely, reopen it and check again.
- Update seems to do nothing: Run claude doctor and read the last update result for a specific message.
- Network blocked: Corporate firewalls sometimes stop downloads. Ask your IT team to allow the required hosts.
Each fix takes under two minutes. Start at the top and stop when the problem clears.
Why Your Version Won’t Update
A stubborn version number almost always means two copies live on your machine. Your shell launches the old one while the other copy quietly updates.
Run which -a claude and count the lines. Then check the usual hiding spots: ~/.local/bin/claude for the native install, ~/.claude/local/ for a legacy local install and your global npm packages.
Keep one install and remove the rest. For example, npm uninstall -g @anthropic-ai/claude-code clears the npm copy. Double-check any path before you delete it, because removal commands do not ask for confirmation.
Open a new terminal afterward. You should see one path and the current version number.
Tame Auto Updates on Your Terms
Some people love silent updates. Others need a fixed version for a project or a team standard. Claude Code supports both styles.
You can switch off background checks in the env section of your settings.json file. Manual updates still work in that mode. A stricter setting blocks every update path. Which suits organizations that distribute the tool through their own channels.
Homebrew and WinGet users can opt in to automatic upgrades through a package manager setting. Claude Code then runs the upgrade for you and asks you to restart on success. WinGet may refuse while the program runs, because Windows locks the executable.
Shared network storage deserves extra care. When many machines run the same binary from one folder, an in place upgrade can delete a file that another session still needs. Install each version in its own folder and let your own tooling handle the rollout.
Install a Specific Version on Purpose
Sometimes the newest build is not the right build. Perhaps a teammate needs the same version or you want to test a fix before rolling it out.
The native installer accepts a version number so you can pin an exact release during install. It also accepts a channel name which sets your default for later updates.
Pair this habit with a calendar reminder or a short team note. A pinned version works great until everyone forgets about it and then it quietly becomes a liability.
Build a Reliable Claude Code Update Routine

Good habits beat heroic fixes. Pick a routine that fits your install type and stick with it.
Native users can relax, since the tool handles itself. Just glance at claude doctor once a month. Homebrew, WinGet and apt users should upgrade weekly, ideally during a calm moment before a big task.
Always verify the result. A ten second version check catches silent failures long before they ruin a deadline.
Final Thoughts
Keeping your terminal assistant fresh takes less effort than most people expect. Once you know how to update claude code for your install type, the process becomes a quick, boring habit which is exactly what you want.
Check your version, run the matching command and confirm the result in a new terminal. If a problem appears, start with claude doctor and hunt for duplicate installs.
FAQs
How do I update Claude Code in VS Code?
Open the Extensions view in Visual Studio Code search for Claude Code and click Update if a button shows up. Then reload the window. You can also open the integrated terminal. Run claude update, for the command line tool. Check the result with claude –version.
How do I update Claude Code in the terminal?
Open any terminal and run claude update. The tool checks your release channel and installs a newer build when one exists. Homebrew users run brew upgrade claude-code instead and npm users reinstall with the latest tag. Open a fresh window afterward and run claude –version to confirm the new number.
How do I update Claude Code in Ubuntu?
Ubuntu users on the native installer run claude update. If you installed through the apt repository, run sudo apt update && sudo apt upgrade claude-code. Packages from apt do not update themselves through Claude Code so repeat this command regularly. Confirm the new build with claude –version.
How do I update Claude Code in Windows?
Windows users on the native installer open PowerShell or CMD and run claude update. WinGet users run winget upgrade Anthropic.ClaudeCode. Close Claude Code first, because Windows locks a running executable and can block the upgrade. Open a new window afterward and run claude –version to verify. a new window afterward and run claude –version to verify.
