npx не является внутренней или внешней командой: как исправить ошибку

Ошибка npx не является внутренней или внешней командой, исполняемой программой или пакетным файлом означает одно: командная строка Windows не находит исполняемый файл npx ни в текущей папке, ни в каталогах, перечисленных в переменной окружения PATH. Чаще всего это происходит потому, что Node.js вообще не установлен в системе, установлен некорректно или терминал был открыт до установки и не подхватил обновлённые пути.

Утилита npx входит в состав npm (менеджера пакетов Node.js) и предназначена для запуска пакетов без глобальной установки — например, для создания проекта командой npx create-react-app. Если npm работает, а npx — нет, проблема обычно кроется в устаревшей версии npm или в повреждённой установке. Ниже разберём пошаговую диагностику и все рабочие способы устранения ошибки.

Проверка: установлен ли Node.js в системе

Первое действие — убедиться, что Node.js вообще присутствует на компьютере. Откройте командную строку (Win + Rcmd) и выполните две команды по очереди:

node -v

npm -v

Если обе команды возвращают номера версий, Node.js установлен, и дело в другом — переходите к проверке PATH. Если система отвечает той же ошибкой «не является командой» уже на node -v, значит, Node.js не установлен или его путь не прописан в системе.

⚠️ Внимание: если вы только что установили Node.js, а терминал был открыт до этого — полностью закройте и заново откройте командную строку. Запущенные окна терминала не перечитывают переменные окружения автоматически, и это одна из самых частых причин «фантомной» ошибки.

Установка или переустановка Node.js

Если Node.js отсутствует, его нужно установить с официального сайта nodejs.org. Возьмите версию LTS — она стабильнее и подходит для большинства задач. Во время установки обратите внимание на шаг с компонентами: галочка Add to PATH должна быть включена, именно она прописывает пути в систему.

Если Node.js уже стоял, но работает странно (например, node запускается, а npx — нет даже после перезапуска терминала), имеет смысл выполнить чистую переустановку:

  • 🗑️ Удалите Node.js через Параметры → Приложения → Установленные приложения
  • 📁 Проверьте, что папка C:\Program Files\nodejs удалена — если осталась, удалите вручную
  • 🧹 Очистите кэш-папки %AppData%\npm и %AppData%\npm-cache, если они существуют
  • 🔄 Перезагрузите компьютер и установите актуальную LTS-версию заново

☑️ Чистая переустановка Node.js

Выполнено: 0 / 6

Проверка и настройка переменной PATH

Когда Node.js установлен, но команда не находится, почти всегда виновата переменная окружения PATH. Проверьте, есть ли в ней путь к Node.js. Откройте Параметры → Система → О системе → Дополнительные параметры системы → Переменные среды и в системных переменных найдите Path.

В списке значений должен присутствовать путь C:\Program Files\nodejs\ (или тот каталог, куда вы ставили Node.js). Если его нет — добавьте вручную через кнопку «Создать». Для работы глобально установленных пакетов npm также полезен путь %AppData%\npm в пользовательских переменных.

Быстро проверить текущее содержимое PATH можно прямо в терминале:

echo %PATH%

Найдите в выводе фрагмент с nodejs. Отсутствует — значит, установщик не прописал путь, и его нужно добавить вручную, после чего перезапустить терминал.

📊 На каком этапе возникла ошибка npx?
Node.js вообще не был установлен
Установил, но терминал не видит команду
npm работает, а npx — нет
Ошибка появилась после обновления

Когда npm работает, а npx — нет

Отдельный сценарий: npm -v показывает версию, а npx выдаёт ошибку. Такое бывает при очень старых версиях npm — утилита npx появилась в составе npm начиная с версии 5.2.0, и в более ранних релизах её просто не существовало. Проверьте версию npm и при необходимости обновите её:

npm install -g npm@latest

Также возможна ситуация, когда файл npx.cmd повреждён или отсутствует в папке C:\Program Files\nodejs. Загляните в этот каталог: рядом с npm.cmd должны лежать npx и npx.cmd. Если их нет — самое надёжное решение: переустановка Node.js, описанная выше.

⚠️ Внимание: не копируйте файлы npx.cmd из чужих установок или скачанных архивов вручную — версии файлов должны соответствовать установленной версии npm, иначе возможны конфликты и непредсказуемые ошибки при запуске пакетов.

Особенности для PowerShell и альтернативных терминалов

В PowerShell ошибка может выглядеть иначе — система сообщает, что имя npx не распознано как имя командлета. Причины те же: PATH или отсутствие установки. Но есть нюанс: политика выполнения скриптов PowerShell иногда блокирует запуск npx.ps1. В этом случае сообщение будет о запрете выполнения сценариев, а не о «неизвестной команде».

Проверить текущую политику можно командой Get-ExecutionPolicy. Изменять её следует осознанно и только если вы понимаете последствия — подробности описаны в официальной документации Microsoft. Для большинства задач проще использовать обычную командную строку cmd, где это ограничение не действует.

Почему в VS Code ошибка, а в cmd всё работает

VS Code запускает встроенный терминал с теми переменными окружения, которые были на момент старта редактора. Если вы установили Node.js после запуска VS Code, полностью закройте редактор (включая значок в трее) и откройте заново — терминал подхватит обновлённый PATH.

Сводная таблица причин и решений

СимптомВероятная причинаРешение
node и npm тоже не находятсяNode.js не установленУстановить LTS-версию с nodejs.org
Ошибка сразу после установкиТерминал не перезапущенЗакрыть и открыть терминал заново
node -v работает, npx — нетНет пути в PATHДобавить C:\Program Files\nodejs\ в Path
npm работает, npx отсутствуетnpm старее 5.2.0 или повреждёнОбновить npm или переустановить Node.js
Ошибка только в VS CodeРедактор кэшировал окружениеПолностью перезапустить редактор

Как проверить, что проблема решена

После любого из исправлений откройте новое окно командной строки и выполните:

npx -v

Команда должна вернуть номер версии без ошибок. Для полной уверенности проверьте запуск реального пакета, например npx cowsay hello — утилита скачается во временный кэш и выполнится. Это подтвердит, что работает не только сам npx, но и вся цепочка: доступ к репозиторию npm, временные каталоги и запуск пакетов.

Если ошибка сохраняется после всех шагов, проверьте, не установлено ли несколько копий Node.js в разных каталогах (например, через nvm-windows и отдельный установщик одновременно) — конфликт путей в PATH может приводить к тому, что система находит «неполную» копию.

Часто задаваемые вопросы

Чем npx отличается от npm?

npm — менеджер пакетов: устанавливает и управляет зависимостями. npx — исполнитель пакетов: запускает инструменты без глобальной установки, скачивая их временно при необходимости.

Нужно ли устанавливать npx отдельно?

Нет. Начиная с npm версии 5.2.0 утилита npx входит в состав npm и ставится автоматически вместе с Node.js. Отдельная установка требуется только для очень старых версий, но правильнее обновить сам Node.js.

Ошибка появляется только в PowerShell, в cmd всё работает. Что делать?

Проверьте политику выполнения скриптов командой Get-ExecutionPolicy. Если она запрещает выполнение сценариев, изучите официальную документацию Microsoft по Set-ExecutionPolicy или просто работайте через cmd.

Можно ли исправить ошибку без переустановки Node.js?

Да, если Node.js установлен корректно, а проблема только в PATH — достаточно добавить путь C:\Program Files\nodejs\ в переменную Path и перезапустить терминал. Переустановка нужна при повреждённых или отсутствующих файлах.

Не мешает ли антивирус работе npx?

Возможная причина: некоторые антивирусы блокируют запуск скриптов из каталогов npm. Проверьте журнал блокировок вашего антивируса и при подтверждении добавьте папку Node.js в исключения.