Claude Code ставится одной командой с сайта Anthropic. На macOS, Linux и в WSL это curl -fsSL https://claude.ai/install.sh | bash, в Windows PowerShell — irm https://claude.ai/install.ps1 | iex. Node.js для этого не нужен: установщик кладёт готовый двоичный файл и дальше обновляет его сам. Ниже — где взять установщик, что требуется системе, как убедиться, что всё встало, и что делать, если не встало.

Откуда скачивать Claude Code

Anthropic не раздаёт Claude Code через сторонние сайты и зеркала. Официальных точек всего несколько, и все они принадлежат Anthropic:

  • скрипты установки на claude.ai: install.sh, install.ps1, install.cmd;
  • сами сборки — downloads.claude.ai, туда обращается установщик;
  • пакет npm @anthropic-ai/claude-code;
  • cask Homebrew claude-code, пакет WinGet Anthropic.ClaudeCode и подписанные репозитории apt, dnf и apk на том же downloads.claude.ai;
  • репозиторий github.com/anthropics/claude-code;
  • документация code.claude.com/docs.

Запрос «claude code официальный сайт» регулярно приводит на страницы-двойники, которые предлагают «скачать установщик» отдельным файлом. Отличать подделку по дизайну бессмысленно, а вот подпись проверяется однозначно. Каждый релиз публикует manifest.json с контрольными суммами SHA256 всех платформенных бинарников, и сам манифест подписан GPG-ключом Anthropic с отпечатком 31DD DE24 DDFA B679 F42D 7BD2 BAA9 29FF 1A7E CACE. Проверка подписи манифеста тем самым проверяет и любой перечисленный в нём бинарник. Подписи манифеста публикуются для релизов начиная с 2.1.89, у более ранних есть только суммы без отдельной подписи.

Кроме этого, сборки несут платформенные подписи: macOS-бинарник подписан «Anthropic PBC» и нотаризован Apple (codesign --verify --verbose ./claude), Windows-бинарник подписан «Anthropic, PBC» (Get-AuthenticodeSignature .\claude.exe). Linux-бинарники по отдельности не подписываются — там источником доверия служит либо подпись манифеста, либо ключ репозитория, если вы ставите через apt, dnf или apk.

Если терминал не нужен вообще. У Claude Code есть графическое приложение Claude Code Desktop для macOS, Windows и Linux (последний в бете). Оно включает Claude Code внутри себя: ни Node.js, ни CLI отдельно ставить не требуется. Команда claude в терминале от него не появляется — для этого CLI ставится отдельно. Эта статья про CLI.

Требования к системе

Официальный список поддерживаемых конфигураций короткий:

  • Операционная система: macOS 13.0 и новее; Windows 10 1809 и новее или Windows Server 2019 и новее; Ubuntu 20.04 и новее; Debian 10 и новее; Alpine Linux 3.19 и новее.
  • Железо: от 4 ГБ оперативной памяти, процессор x64 или ARM64. 32-разрядные системы не поддерживаются.
  • Оболочка: Bash, Zsh, PowerShell или CMD.
  • Сеть: подключение к интернету обязательно и во время установки, и в работе.
  • Страна: из списка стран, поддерживаемых Anthropic.

Отдельная зависимость — ripgrep, поиск по файлам. Обычно он идёт в комплекте с Claude Code; исключение — Alpine и другие дистрибутивы на musl, про них ниже.

Про страну стоит сказать прямо, потому что это не формальность. Россия не входит в список поддерживаемых стран Anthropic — ни в перечень для Claude.ai, ни в перечень для API, — и оплата российскими картами не проходит. На практике из неподдерживаемого региона адрес установщика может вернуть HTML-страницу с текстом «App unavailable in region» вместо скрипта, и установка падает с синтаксической ошибкой. Обходные схемы мы не разбираем и не советуем; что это означает на практике — в статье Claude Code в России.

Установка на macOS и Linux

Нативный установщик

Рекомендуемый способ. Одна команда, Node.js не нужен, права администратора не нужны — всё ставится в домашний каталог:

curl -fsSL https://claude.ai/install.sh | bash

Тот же скрипт используется внутри WSL: вы запускаете его в терминале дистрибутива, а не в PowerShell.

Установщик кладёт запускающий файл в ~/.local/bin/claude. Это симлинк на конкретную версию в ~/.local/share/claude/versions/ — знание пригодится, когда придётся разбираться с PATH или с несколькими установками сразу. Нативные установки обновляются в фоне сами.

У релизов два канала: latest — по умолчанию, новые версии сразу после выпуска, и stable — версия примерно недельной давности, из которой выброшены релизы с крупными регрессиями. Канал выбирается в момент установки и становится каналом обновлений:

curl -fsSL https://claude.ai/install.sh | bash -s stable

Тем же способом ставится конкретная версия — вместо канала передаётся номер, например bash -s 2.1.89.

Homebrew

brew install --cask claude-code

В Homebrew два cask, и канал выбирается именно им, а не настройкой: claude-code — это stable, claude-code@latest — latest. Установки через Homebrew сами не обновляются, обновление ручное: brew upgrade claude-code или brew upgrade claude-code@latest в зависимости от того, что вы поставили. Старые версии Homebrew оставляет на диске, изредка имеет смысл делать brew cleanup.

apt, dnf и apk

Для Debian и Ubuntu, Fedora и RHEL, Alpine Anthropic держит подписанные репозитории с теми же двумя каналами. Смысл этого способа — в серверах и образах, где весь софт ставится системным пакетным менеджером: обновления приезжают обычным системным апгрейдом, а не через механизм Claude Code. Ключ репозитория тот же, с отпечатком 31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE; для apt его кладут в /etc/apt/keyrings/claude-code.asc, и если скачать ключ не удалось, apt update падает с NO_PUBKEY BAA929FF1A7ECACE.

Alpine и другие дистрибутивы на musl

В базовом образе Alpine нет ни bash, ни curl, поэтому документированная команда установки падает с not found раньше, чем что-либо начнёт скачиваться. Нужны обе программы для установки плюс libgcc, libstdc++ и ripgrep для работы:

apk add bash curl libgcc libstdc++ ripgrep

После этого в файле настроек settings.json переменной окружения USE_BUILTIN_RIPGREP задают значение 0, чтобы Claude Code использовал системный поиск, а не встроенный. Пакет ripgrep в Alpine лежит в репозитории community — если apk его не находит, репозиторий добавляют вручную.

Установка через npm

Claude Code остаётся глобальным пакетом npm:

npm install -g @anthropic-ai/claude-code

Важно понимать, что именно при этом происходит: npm ставит тот же самый нативный бинарник. Платформенный пакет вроде @anthropic-ai/claude-code-darwin-arm64 приезжает как optional-зависимость, шаг postinstall ставит его на место, и запущенный claude в работе Node не использует. Отсюда два следствия. Первое: ваш менеджер пакетов обязан разрешать optional-зависимости — при --omit=optional, --no-optional или --ignore-optional вместо бинарника останется заглушка. Второе: собранные бинарники есть только для восьми платформ — darwin-arm64, darwin-x64, linux-x64, linux-arm64, linux-x64-musl, linux-arm64-musl, win32-x64, win32-arm64.

Обновляется npm-установка командой npm install -g @anthropic-ai/claude-code@latest. Команда npm update -g уважает диапазон версий из первой установки и может не перевести вас на свежий релиз. Ставить через sudo npm install -g документация прямо не рекомендует — это ведёт к проблемам с правами.

Расхождение в официальных источниках. README репозитория на GitHub начинается со строки «Installation via npm is deprecated. Use one of the recommended methods below» и показывает бейдж «Node.js 18+». Страница документации устаревшим этот способ не называет — npm описан в разделе «Advanced installation options», — и требования там другие: начиная с версии 2.1.198 пакет требует Node.js 22 или новее, а на более старом Node установка не падает, а печатает предупреждение EBADENGINE и завершается успешно, потому что Node в работе всё равно не участвует. Обе страницы обновляются Anthropic, и противоречие в них живое. Практический вывод один: npm имеет смысл там, где установка уже завязана на npm (образ CI, корпоративное зеркало), в остальных случаях берите нативный установщик.

Установка на Windows

Windows поддерживается нативно, WSL для этого не обязателен. В PowerShell:

irm https://claude.ai/install.ps1 | iex

В CMD используется другой скрипт, и команда выглядит иначе:

curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

Права администратора не нужны. Заметная часть проблем на Windows возникает из-за перепутанной оболочки: сообщение 'irm' is not recognized означает, что вы в CMD, а The token '&&' is not a valid statement separator — что вы в PowerShell. Приглашение показывает PS C:\ в PowerShell и C:\ без PS в CMD. Есть и третий вариант — WinGet: winget install Anthropic.ClaudeCode, без автообновления.

Дальше начинается специфика, которой хватает на отдельный разбор: нужен ли Git for Windows и какую оболочку из-за него получит агент, чем нативный режим отличается от WSL 2 и почему песочница доступна только во втором. Всё это — в статье Claude Code на Windows; здесь достаточно сказать, что установочная команда своя для каждой оболочки, и на этом различия с остальными системами заканчиваются.

Проверка установки и первый запуск

Первая проверка — версия:

claude --version

Рабочая установка печатает номер и подпись, например 2.1.211 (Claude Code). Если вы ставили конкретную версию, здесь должна быть ровно она.

Вторая проверка глубже и полезнее:

claude doctor

Эта команда не запускает сессию. Она печатает диагностику установки и настроек только на чтение: состояние самой установки, ошибки разбора файлов настроек, предупреждения с предложенными исправлениями и результат последней попытки обновления. Если что-то ведёт себя странно, начинать разбор стоит с неё.

Первый запуск делается из каталога проекта:

cd /путь/к/проекту
claude

Авторизация

Claude Code требует аккаунта: Pro, Max, Team, Enterprise или Console. В бесплатном тарифе Claude.ai его нет. При первом запуске CLI откроет браузер и проведёт вас через вход. Исключение одно: если в окружении задана переменная ANTHROPIC_API_KEY, браузер не открывается — Claude Code один раз спросит подтверждение на использование этого ключа. Сменить аккаунт или войти заново можно командой /login прямо внутри сессии; после успешного входа учётные данные сохраняются и повторно вводить их не нужно.

Подписка и ключ Console — это разные модели оплаты, а не два способа войти в одно и то же. Подписка даёт лимиты на период, ключ Console — оплату по токенам из предоплаченного баланса, и при первом входе в Console автоматически создаётся рабочее пространство «Claude Code» для учёта расходов. Что во что обходится, разобрано в статье про цену Claude Code, а работа по ключу — в статье про Claude Code через API.

Типовые ошибки установки

Почти все они попадают в короткий список, и почти все чинятся без переустановки.

Что вы видитеЧто это значитЧто делать
command not found: claude, 'claude' is not recognized установка прошла, но каталог с бинарником не в PATH добавить в PATH ~/.local/bin (macOS, Linux) или %USERPROFILE%\.local\bin (Windows) и открыть новый терминал
syntax error near unexpected token '<', curl: (22) ... 403 по адресу установщика вернулась HTML-страница или ошибка вместо скрипта проверить доступность downloads.claude.ai; текст «App unavailable in region» на странице означает неподдерживаемый регион
A parameter cannot be found that matches parameter name 'fsSL' команда для macOS и Linux запущена в PowerShell, где curl — псевдоним Invoke-WebRequest использовать установщик для PowerShell
The token '&&' is not a valid statement separator команда для CMD запущена в PowerShell использовать установщик для своей оболочки
Killed, код выхода 137 на Linux процесс установки убит из-за нехватки памяти, типично для маленьких VPS освободить память или добавить swap: на установку нужно около 512 МБ свободной памяти
Error: claude native binary not installed npm пропустил optional-зависимость или шаг postinstall переустановить без --ignore-scripts и --omit=optional либо выполнить node node_modules/@anthropic-ai/claude-code/install.cjs
npm error code ENOTEMPTY npm не смог переименовать каталог старого пакета при обновлении удалить каталог, названный в строке npm error path, и повторить установку
running scripts is disabled on this system политика выполнения PowerShell блокирует .ps1-обёртки, которые создаёт npm разрешить локальные скрипты для пользователя, вызывать claude.cmd или перейти на нативный установщик
App unavailable in region страна не входит в список поддерживаемых установка в этом регионе не предусмотрена

Отдельный случай — когда claude запускается, но ведёт себя не как ожидается или показывает старую версию. Обычно это две установки сразу: например, остался глобальный пакет npm, а рядом появился нативный. Команда which -a claude покажет все найденные в PATH; на Windows похожий эффект даёт старая версия Claude Desktop, регистрирующая свой Claude.exe в каталоге WindowsApps с более высоким приоритетом.

Обновление и удаление

Нативные установки обновляются сами: Claude Code проверяет обновления при запуске и периодически во время работы, загружает их в фоне, а новая версия вступает в силу при следующем старте. Применить обновление немедленно:

claude update

Если вы уже на свежей версии, команда так и скажет. Установки через Homebrew, WinGet, apt, dnf и apk по умолчанию не обновляются автоматически — им нужны brew upgrade claude-code, winget upgrade Anthropic.ClaudeCode или обычный системный апгрейд соответственно.

Канал обновлений переключается настройкой autoUpdatesChannel в файле настроек (значения "latest" и "stable") или через /config внутри сессии. Полностью выключить фоновую проверку можно переменной DISABLE_AUTOUPDATER со значением "1" в ключе env того же файла; ручной claude update при этом продолжит работать.

Удаление зависит от способа установки. Нативная на macOS и Linux — два файла:

rm -f ~/.local/bin/claude
rm -rf ~/.local/share/claude

В Windows PowerShell удаляют %USERPROFILE%\.local\bin\claude.exe и каталог %USERPROFILE%\.local\share\claude. Для остальных способов — brew uninstall --cask claude-code, winget uninstall Anthropic.ClaudeCode, npm uninstall -g @anthropic-ai/claude-code, для пакетных менеджеров Linux дополнительно убирают репозиторий и ключ.

Настройки, история сессий, разрешения и конфигурация MCP лежат отдельно — в ~/.claude и ~/.claude.json. Для переустановки удалять их не нужно, а их удаление необратимо. И учтите: каталог ~/.claude пересоздадут расширение для VS Code, плагин для JetBrains и десктопное приложение, если хоть что-то из этого осталось в системе.

Какой способ выбрать

СпособКому подходитОбновления
Нативный установщик почти всем: Node.js не нужен, ставится в домашний каталог, без прав администратора сами, в фоне
Homebrew (macOS, Linux) если остальной софт на машине уже живёт в Homebrew вручную, brew upgrade
WinGet (Windows) если пакеты на машине ставятся через WinGet вручную, winget upgrade
apt, dnf, apk (Linux) серверы и образы, где всё ставится системным пакетным менеджером обычным системным апгрейдом
npm окружения, уже завязанные на npm; README называет способ устаревшим вручную, установкой @latest
Desktop-приложение если терминал не нужен вовсе; команду claude оно не добавляет сами

Короткий чек-лист приёмки, чтобы не возвращаться к установке потом:

  1. claude --version печатает номер версии и (Claude Code).
  2. claude doctor не показывает ошибок в файлах настроек.
  3. which -a claude находит ровно одну установку.
  4. claude, запущенный в каталоге проекта, доводит вход до конца и открывает сессию.
  5. Вы понимаете, чем оплачивается работа: подпиской или ключом Console.

Установка — самая простая часть. Дальше начинается то, ради чего инструмент и ставят: как формулировать задачи, что делать с контекстом и почему сессия иногда упирается в лимиты. Про повседневную работу — в статье как пользоваться Claude Code, а если вы ещё выбираете между инструментами, полезно сравнение Claude Code и Codex. Если проекта, на котором всё это можно попробовать, пока нет, начните с разбора вайбкодинга с нуля.