Advanced setup
System requirements, platform-specific installation, version management, and uninstallation for Claude Code.
This page covers system requirements, platform-specific installation details, updates, and uninstallation. For a guided walkthrough of your first session, see the quickstart. If you've never used a terminal before, see the terminal guide.
System requirements
Claude Code runs on the following platforms and configurations:
- Operating system:
- macOS 13.0+
- Windows 10 1809+ or Windows Server 2019+
- Ubuntu 20.04+
- Debian 10+
- Alpine Linux 3.19+
- Hardware: 4 GB+ RAM
- Network: internet connection required. See network configuration.
- Shell: Bash, Zsh, PowerShell, or CMD. On Windows, Git for Windows is required.
- Location: Anthropic supported countries
Additional dependencies
- ripgrep: usually included with Claude Code. If search fails, see search troubleshooting.
Install Claude Code
TIP
Prefer a graphical interface? The Desktop app lets you use Claude Code without the terminal. Download it for macOS or Windows.
New to the terminal? See the terminal guide for step-by-step instructions.
To install Claude Code, use one of the following methods:
Native Install (Recommended)
macOS, Linux, WSL:
curl -fsSL https://claude.ai/install.sh | bashWindows PowerShell:
irm https://claude.ai/install.ps1 | iexWindows CMD:
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmdWindows requires Git for Windows. Install it first if you don't have it.
INFO
Native installations automatically update in the background to keep you on the latest version.
Homebrew
brew install --cask claude-codeINFO
Homebrew installations do not auto-update. Run brew upgrade claude-code periodically to get the latest features and security fixes.
WinGet
winget install Anthropic.ClaudeCodeINFO
WinGet installations do not auto-update. Run winget upgrade Anthropic.ClaudeCode periodically to get the latest features and security fixes.
After installation completes, open a terminal in the project you want to work in and start Claude Code:
claudeIf you encounter any issues during installation, see the troubleshooting guide.
Set up on Windows
Claude Code on Windows requires Git for Windows or WSL. You can launch claude from PowerShell, CMD, or Git Bash. Claude Code uses Git Bash internally to run commands. You do not need to run PowerShell as Administrator.
Option 1: Native Windows with Git Bash
Install Git for Windows, then run the install command from PowerShell or CMD.
If Claude Code can't find your Git Bash installation, set the path in your settings.json file:
{
"env": {
"CLAUDE_CODE_GIT_BASH_PATH": "C:\\Program Files\\Git\\bin\\bash.exe"
}
}Claude Code can also run PowerShell natively on Windows as an opt-in preview. See PowerShell tool for setup and limitations.
Option 2: WSL
Both WSL 1 and WSL 2 are supported. WSL 2 supports sandboxing for enhanced security. WSL 1 does not support sandboxing.
Alpine Linux and musl-based distributions
The native installer on Alpine and other musl/uClibc-based distributions requires libgcc, libstdc++, and ripgrep. Install these using your distribution's package manager, then set USE_BUILTIN_RIPGREP=0.
This example installs the required packages on Alpine:
apk add libgcc libstdc++ ripgrepThen set USE_BUILTIN_RIPGREP to 0 in your settings.json file:
{
"env": {
"USE_BUILTIN_RIPGREP": "0"
}
}Verify your installation
After installing, confirm Claude Code is working:
claude --versionFor a more detailed check of your installation and configuration, run claude doctor:
claude doctorAuthenticate
Claude Code requires a Pro, Max, Teams, Enterprise, or Console account. The free Claude.ai plan does not include Claude Code access. You can also use Claude Code with a third-party API provider like Amazon Bedrock, Google Vertex AI, or Microsoft Foundry.
After installing, log in by running claude and following the browser prompts. See Authentication for all account types and team setup options.
Update Claude Code
Native installations automatically update in the background. You can configure the release channel to control whether you receive updates immediately or on a delayed stable schedule, or disable auto-updates entirely. Homebrew and WinGet installations require manual updates.
Auto-updates
Claude Code checks for updates on startup and periodically while running. Updates download and install in the background, then take effect the next time you start Claude Code.
INFO
Homebrew and WinGet installations do not auto-update. Use brew upgrade claude-code or winget upgrade Anthropic.ClaudeCode to update manually.
Known issue: Claude Code may notify you of updates before the new version is available in these package managers. If an upgrade fails, wait and try again later.
Homebrew keeps old versions on disk after upgrades. Run brew cleanup claude-code periodically to reclaim disk space.
Configure release channel
Control which release channel Claude Code follows for auto-updates and claude update with the autoUpdatesChannel setting:
"latest", the default: receive new features as soon as they're released"stable": use a version that is typically about one week old, skipping releases with major regressions
Configure this via /config → Auto-update channel, or add it to your settings.json file:
{
"autoUpdatesChannel": "stable"
}For enterprise deployments, you can enforce a consistent release channel across your organization using managed settings.
Disable auto-updates
Set DISABLE_AUTOUPDATER to "1" in the env key of your settings.json file:
{
"env": {
"DISABLE_AUTOUPDATER": "1"
}
}Update manually
To apply an update immediately without waiting for the next background check, run:
claude updateAdvanced installation options
These options are for version pinning, migrating from npm, and verifying binary integrity.
Install a specific version
The native installer accepts either a specific version number or a release channel (latest or stable). The channel you choose at install time becomes your default for auto-updates. See configure release channel for more information.
To install the latest version (default):
macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bashWindows PowerShell
irm https://claude.ai/install.ps1 | iexWindows CMD
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmdTo install the stable version:
macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bash -s stableWindows PowerShell
& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) stableWindows CMD
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd stable && del install.cmdTo install a specific version number:
macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bash -s 1.0.58Windows PowerShell
& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) 1.0.58Windows CMD
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd 1.0.58 && del install.cmdDeprecated npm installation
npm installation is deprecated. The native installer is faster, requires no dependencies, and auto-updates in the background. Use the native installation method when possible.
Migrate from npm to native
If you previously installed Claude Code with npm, switch to the native installer:
# Install the native binary
curl -fsSL https://claude.ai/install.sh | bash
# Remove the old npm installation
npm uninstall -g @anthropic-ai/claude-codeYou can also run claude install from an existing npm installation to install the native binary alongside it, then remove the npm version.
Install with npm
If you need npm installation for compatibility reasons, you must have Node.js 18+ installed. Install the package globally:
npm install -g @anthropic-ai/claude-codeWARNING
Do NOT use sudo npm install -g as this can lead to permission issues and security risks. If you encounter permission errors, see troubleshooting permission errors.
Binary integrity and code signing
You can verify the integrity of Claude Code binaries using SHA256 checksums and code signatures.
- SHA256 checksums for all platforms are published in the release manifests at
https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/{VERSION}/manifest.json. Replace{VERSION}with a version number such as2.0.30. - Signed binaries are distributed for the following platforms:
- macOS: signed by "Anthropic PBC" and notarized by Apple
- Windows: signed by "Anthropic, PBC"
Uninstall Claude Code
To remove Claude Code, follow the instructions for your installation method.
Native installation
Remove the Claude Code binary and version files:
macOS, Linux, WSL
rm -f ~/.local/bin/claude
rm -rf ~/.local/share/claudeWindows PowerShell
Remove-Item -Path "$env:USERPROFILE\.local\bin\claude.exe" -Force
Remove-Item -Path "$env:USERPROFILE\.local\share\claude" -Recurse -ForceHomebrew installation
Remove the Homebrew cask:
brew uninstall --cask claude-codeWinGet installation
Remove the WinGet package:
winget uninstall Anthropic.ClaudeCodenpm
Remove the global npm package:
npm uninstall -g @anthropic-ai/claude-codeRemove configuration files
WARNING
Removing configuration files will delete all your settings, allowed tools, MCP server configurations, and session history.
To remove Claude Code settings and cached data:
macOS, Linux, WSL
# Remove user settings and state
rm -rf ~/.claude
rm ~/.claude.json
# Remove project-specific settings (run from your project directory)
rm -rf .claude
rm -f .mcp.jsonWindows PowerShell
# Remove user settings and state
Remove-Item -Path "$env:USERPROFILE\.claude" -Recurse -Force
Remove-Item -Path "$env:USERPROFILE\.claude.json" -Force
# Remove project-specific settings (run from your project directory)
Remove-Item -Path ".claude" -Recurse -Force
Remove-Item -Path ".mcp.json" -Force