Advanced setup ↗
noOriginal Documentation
Documentation Index#
Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt Use this file to discover all available pages before exploring further.
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#
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:
macOS, Linux, WSL:
curl -fsSL https://claude.ai/install.sh | bash
```
**Windows PowerShell:**
```powershell
irm https://claude.ai/install.ps1 | iex
```
**Windows CMD:**
```batch
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
```
**Windows requires [Git for Windows](https://git-scm.com/downloads/win).** Install it first if you don't have it.
<span class="callout-start" data-callout-type="info"></span>
Native installations automatically update in the background to keep you on the latest version.
<span class="callout-end"></span>
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Homebrew"></span>
```bash
brew install --cask claude-code
```
<span class="callout-start" data-callout-type="info"></span>
Homebrew installations do not auto-update. Run `brew upgrade claude-code` periodically to get the latest features and security fixes.
<span class="callout-end"></span>
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="WinGet"></span>
```powershell
winget install Anthropic.ClaudeCode
```
<span class="callout-start" data-callout-type="info"></span>
WinGet installations do not auto-update. Run `winget upgrade Anthropic.ClaudeCode` periodically to get the latest features and security fixes.
<span class="callout-end"></span>
<span class="tab-end"></span>
<span class="tab-group-end"></span>
After installation completes, open a terminal in the project you want to work in and start Claude Code:
```bash
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"
}
}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.
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):
curl -fsSL https://claude.ai/install.sh | bash
```
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Windows PowerShell"></span>
```powershell
irm https://claude.ai/install.ps1 | iex
```
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Windows CMD"></span>
```batch
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
```
<span class="tab-end"></span>
<span class="tab-group-end"></span>
To install the stable version:
<span class="tab-group-start"></span>
<span class="tab-start" data-tab-title="macOS, Linux, WSL"></span>
```bash
curl -fsSL https://claude.ai/install.sh | bash -s stable
```
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Windows PowerShell"></span>
```powershell
& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) stable
```
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Windows CMD"></span>
```batch
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd stable && del install.cmd
```
<span class="tab-end"></span>
<span class="tab-group-end"></span>
To install a specific version number:
<span class="tab-group-start"></span>
<span class="tab-start" data-tab-title="macOS, Linux, WSL"></span>
```bash
curl -fsSL https://claude.ai/install.sh | bash -s 1.0.58
```
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Windows PowerShell"></span>
```powershell
& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) 1.0.58
```
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Windows CMD"></span>
```batch
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd 1.0.58 && del install.cmd
```
<span class="tab-end"></span>
<span class="tab-group-end"></span>
### Deprecated npm installation
npm installation is deprecated. The native installer is faster, requires no dependencies, and auto-updates in the background. Use the [native installation](#install-claude-code) method when possible.
#### Migrate from npm to native
If you previously installed Claude Code with npm, switch to the native installer:
```bash
# 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-code
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:
rm -f ~/.local/bin/claude
rm -rf ~/.local/share/claude
```
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Windows PowerShell"></span>
```powershell
Remove-Item -Path "$env:USERPROFILE\.local\bin\claude.exe" -Force
Remove-Item -Path "$env:USERPROFILE\.local\share\claude" -Recurse -Force
```
<span class="tab-end"></span>
<span class="tab-group-end"></span>
### Homebrew installation
Remove the Homebrew cask:
```bash
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#
Removing configuration files will delete all your settings, allowed tools, MCP server configurations, and session history.
To remove Claude Code settings and cached data:
# 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.json
```
<span class="tab-end"></span>
<span class="tab-start" data-tab-title="Windows PowerShell"></span>
```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
```
<span class="tab-end"></span>
<span class="tab-group-end"></span>