Skip to main content
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:

Additional dependencies

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: After installation completes, open a terminal in the project you want to work in and start Claude Code:
claude
If 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++ ripgrep
Then 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 --version
For a more detailed check of your installation and configuration, run claude doctor:
claude doctor

Authenticate

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 /configAuto-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 update

Advanced 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
To install the stable version:
curl -fsSL https://claude.ai/install.sh | bash -s stable
To install a specific version number:
curl -fsSL https://claude.ai/install.sh | bash -s 1.0.58

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 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-code
You 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 as 2.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

Homebrew installation

Remove the Homebrew cask:
brew uninstall --cask claude-code

WinGet installation

Remove the WinGet package:
winget uninstall Anthropic.ClaudeCode

npm

Remove the global npm package:
npm uninstall -g @anthropic-ai/claude-code

Remove 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