«irm не является внутренней или внешней командой»: как поставить Claude Code на Windows

Советы5 мин чтенияClaudeSkills
«irm не является внутренней или внешней командой»: как поставить Claude Code на Windows

Почему команда не распознаётся

Ты вставил команду установки Claude Code в терминал и получил «irm не является внутренней или внешней командой». Ничего не сломалось и переустанавливать Windows не нужно: команда просто попала не в тот терминал.

irm — это не Claude Code и не отдельная программа, а сокращённая запись (алиас) командлета PowerShell Invoke-RestMethod. Он отправляет HTTP- и HTTPS-запросы и возвращает ответ сервера. Живёт он внутри PowerShell, поэтому cmd.exe о нём не знает и честно сообщает, что такой команды у него нет.

Anthropic описывает эту ошибку в инструкции по установке: сообщение 'irm' is not recognized as an internal or external command означает, что установка запущена в CMD, а не в PowerShell. Обратный случай из той же инструкции: The token '&&' is not a valid statement separator появляется, когда команда для CMD запущена в PowerShell.

Как за пять секунд понять, где ты находишься

Посмотри на приглашение перед курсором.

В PowerShell оно начинается с PS: например, PS C:\Users\ТвоёИмя>. В CMD префикса нет — только C:\Users\ТвоёИмя>. Разница в две буквы, а от неё зависит, какую команду вводить дальше.

Правильная команда для твоего терминала

Для PowerShell:

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

Здесь irm скачивает установочный скрипт, а iex (сокращение от Invoke-Expression) выполняет его содержимое прямо в текущей сессии.

Для CMD:

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

Права администратора не нужны ни в одном из двух вариантов: установщик раскладывает файлы в пользовательскую папку, а не в системную.

Если не хочется разбираться с разницей терминалов

Есть два способа установки, которые не зависят от того, PowerShell у тебя или CMD.

WinGet. В Windows 11 и актуальной Windows 10 он уже стоит:

winget install Anthropic.ClaudeCode

npm. Если у тебя есть Node.js, тот же бинарник ставится через npm:

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

Anthropic предупреждает: не используй sudo npm install -g — это приводит к проблемам с правами. WinGet-версия сама не обновляется: раз в пару недель запускай winget upgrade Anthropic.ClaudeCode. npm-установка обновляется в фоне, как нативная, — отдельной команды для этого не нужно.

Ты точно в PowerShell, а команда всё равно не найдена

Такое бывает редко, но проверить стоит. Введи:

Get-Command irm

Если PowerShell показывает командлет и его модуль — алиас на месте, и ошибка пришла из другого окна. Если отвечает, что команда не найдена, открой PowerShell заново из меню «Пуск» (или pwsh, если у тебя PowerShell 7) и посмотри версию:

$PSVersionTable.PSVersion

Microsoft перечисляет irm среди алиасов Invoke-RestMethod для всех платформ, так что в поддерживаемой версии PowerShell он есть — а вот в старых сборках или в урезанных терминалах от сторонних IDE всякое случается. Запустить установку из обычного PowerShell проще, чем искать причину.

Политика выполнения скриптов тут обычно ни при чём

Совет «выполни Set-ExecutionPolicy Bypass» встречается в каждом обсуждении этой ошибки, и он не про неё. Политика выполнения управляет запуском скриптов, а сообщение про irm появляется раньше, чем PowerShell дойдёт до выполнения.

Microsoft прямо пишет, что политика выполнения — не граница безопасности, а дополнительный барьер: содержимое скрипта можно набрать в командной строке, когда запустить файл нельзя. Команда irm ... | iex передаёт содержимое скрипта в память, а не запускает файл .ps1, поэтому она идёт мимо этой проверки. Если политика всё-таки мешает, текст ошибки будет другим — что-то вроде «cannot be loaded because running scripts is disabled on this system». Вот на такое сообщение Set-ExecutionPolicy действительно влияет.

Установка прошла, но claude не запускается

Сначала открой новое окно терминала: PATH обновляется при старте, и в старом окне новая команда не появится.

Дальше проверь установку:

claude --version

Работающая установка печатает номер версии. Если хочешь больше деталей, есть claude doctor: он показывает диагностику установки и настроек, включая найденные проблемы, и не запускает сессию.

Что понадобится после установки

Claude Code требует платный аккаунт: Pro, Max, Team, Enterprise или Console. Бесплатный план claude.ai доступа к Claude Code не даёт — в возможностях Pro «Claude Code» указан отдельным пунктом. Так что перед установкой стоит решить, какой тариф брать: разбор тарифов с лимитами лежит в статье Claude Code: цена и подписка, а способы оплаты из России — в гайде по Claude Code в России.

Полная пошаговая установка со всеми вариантами — в статье установка Claude Code на Windows. Она длиннее: там про Node.js, Git для Windows, WSL и настройку терминала.

Итого

«irm не является внутренней или внешней командой» — это не поломка, а подсказка: ты в CMD. Что делать по шагам:

  1. Посмотри на приглашение. Есть PS — ты в PowerShell, нет — в CMD.
  2. В PowerShell ставь Claude Code командой irm https://claude.ai/install.ps1 | iex.
  3. В CMD используй curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd.
  4. Не хочешь думать о терминалах — ставь через winget install Anthropic.ClaudeCode.
  5. После установки открой новое окно и проверь claude --version.

Политика выполнения скриптов тут ни при чём: за ошибку с irm отвечает терминал, а не настройки безопасности PowerShell.

Скачайте Яндекс Браузер с нейросетью