Перейти к основному содержимому

Все возможности

На этой странице перечислены пользовательские возможности NVM for Windows v2. Список взят из продукта (CLI, shim, настройки и лицензионные ограничения), а не только из раздела Features. См. Что нового в v2 для короткой сводки.

Среда выполнения​

ВозможностьОписание
Режимы работыРежим shim или link. Режим можно сменить в любой момент.
Режим shimShim на Zig перехватывает node и команды менеджеров пакетов. См. node shim и Package Manager Shims.
Режим linkJunction в PATH указывает на активный каталог Node.js. Перехвата команд нет.
Разовая смена версииПередайте --nvm-use или --nvm-use=<version> shim-команде. NVM снимает этот флаг до запуска Node.js.
Показать разрешённый NodeПередайте --nvm-which shim-команде. Shim печатает источник, запрошенную версию, эффективную версию, путь, затем запускает Node.js.
On / offnvm on управляет Node.js. nvm off прекращает управление и снимает .nodejs.
Без обязательных прав администратораТипичные пользовательские операции не требуют прав администратора.

Установка и версии​

ВозможностьОписание
InstallУстановка одной или нескольких версий Node.js. Спецификации: latest, lts, lts/<codename> и x.x.x.
Параллельные установкиКаждая запрошенная версия ставится в своей goroutine.
Компактные архивы .7zЗагрузки — архивы Windows .7z (x64 или arm64). Объём примерно на 40% меньше.
Нативная распаковкаNVM использует установленный 7-Zip, если он есть. Иначе встроенный распаковщик.
Принудительная переустановка--force делает резервную копию существующей версии, затем ставит её заново.
Небезопасный TLS--insecure или allow_insecure_downloads допускает просроченные или недействительные сертификаты TLS.
Копирование глобальных модулей--copy-from копирует globals из другой установленной версии. --from ставит их заново.
Автоустановка globalsauto_installed_modules ставит заданный набор globals с каждой новой версией Node.js.
Native toolsnvm install native-tools запускает новейший install_tools.bat после проверки Authenticode. allow_tool_install может это запретить.
UninstallУдаление одной или нескольких версий. --purge также чистит кэш. --from-apps — тихое удаление из «Приложения и возможности».
UseНазначить версию по умолчанию. --install может поставить отсутствующую. --local берёт последнюю установленную частичную версию.
Use latestnvm use latest выбирает новейший установленный semver с node.exe.
Use LTSnvm use lts или nvm use lts <codename>.
Use lastВернуть предыдущую версию по умолчанию (last_version).
List installedСписок установленных версий. Помечает default. JSON и фильтр major.
List releasesКаталог загрузок. Помечает установленные, кэшированные, LTS и security-релизы.
DefaultПоказать версию по умолчанию и предыдущую.
ПсевдонимыИмя версии через nvm alias. Зарезервированные имена вроде latest и lts запрещены.
Архитектура процессаАрхитектура архива следует процессу NVM (amd64 → x64). Флага --arch нет.

Автоматизация​

ВозможностьОписание
Разрешение версийВерсия из спецификатора, алиаса, имени LTS или файла проекта.
Файлы версийПо умолчанию: .nvmrc, .node-version, package.json и package-lock.json. Список можно изменить.
PinЗаписать версию в detect-файл или в package.json engines. Опциональная установка.
Auto-use по каталогуВ режиме shim читает файлы проекта и запускает этот Node.js без смены системного default.
Автоустановка отсутствующих версийУстановка нужной версии, если проекту её ещё нет.
Запрос автоустановкиauto_install_prompt спрашивает перед этой установкой.
Reshimnvm reshim пересобирает global module shims и заново доверяет entrypoint менеджеров пакетов.
Job objectДочерние процессы reshim завершаются вместе с родителем, чтобы не блокировать установки.

Кэш и офлайн​

ВозможностьОписание
Кэш загрузокАрхивы Node.js на диске. --cache / --no-cache перекрывают cache_downloads.
Cache addЗагрузка в кэш без установки.
Cache list / removeСписок или удаление архивов, метаданных, меток malware, malware.db и JWT зеркала.
Локальные установкиlocal_dir — источник архивов. local_install_only никогда не уходит в сеть.
Изолированные установкиair_gapped пропускает live JWKS, использует офлайн COSE и кэшированный Authenticode. Certified MSI кладёт seed malware.db при сборке; live-лента важнее, когда доступна. Пропуск скана только если нет доверенного db.
Зеркала загрузокУпорядоченные зеркала Node.js и URL реестра npm. Побеждает первый успешный ответ.
Сетевые дедлайныБюджеты каталога, зеркала, reachability и загрузки. --relax-deadlines и --timeout-*-ms перекрывают их. nvm doctor может измерить их.

Безопасность​

ВозможностьОписание
AuthenticodeWinVerifyTrust для node.exe и бинарников менеджеров пакетов. См. Понимание безопасности.
Разрешённые издателиallowed_signers — список организаций. allowed_thumbprints закрепляет leaf сертификата.
Отзывauthenticode_revocation: online, cached или disabled. В air-gapped предпочтителен cached.
Verify cacheПодписанный кэш доверенных бинарников. Промах запускает полный Authenticode. nvm reshim засевает его заново.
Ужесточение DACLЗащищённые DACL на деревьях install, data, .shim и proxy. nvm doctor --autofix может восстановить их.
Самопроверка shimShim, запущенный из .shim, сравнивает себя с установленным shim.
Контроль каталогаProxy блокирует менеджеры пакетов, если каталог активной версии Node.js доступен другим пользователям на запись (NVM4305).
Доверие делегированной командеProxy отклоняет неизвестный, без подписи или недоверенный entrypoint менеджера пакетов (NVM4306). Выполните nvm firewall trust module <name>.
Malicious Package BlockerПоиск имени/версии OpenSSF в подписанном malware.db. Не сканер файлов. Включён по умолчанию в режиме shim.
Проверки прямых зависимостейCommunity Builds проверяют именованный пакет и прямые зависимости package.json. Lockfile не читают.
Проверки транзитивных зависимостейCertified Builds также читают lockfile проекта. Проверяют его при запуске node в каталоге проекта.
Список разрешений malwareШаблоны HKLM, которые снимают попадание OpenSSF. Сравнение по байтам. * снимает все попадания OpenSSF.
Список блокировки организацииТолько Certified Builds. Дополнительные шаблоны блокировки HKLM. Community Builds игнорируют этот список.
Конфликт доверия malwareТолько Certified Builds. prevent (по умолчанию) всё равно блокирует доверенное или одобренное попадание OpenSSF. continue пропускает такое доверие.
Пропуск проверок malwareskip_malware_checks пропускает поиск в shim. Файл определений всё равно обновляется. HKLM важнее.
NVM FirewallВаши списки версий, модулей и доверия. Это не Malicious Package Blocker.
Version firewallGovernance. nvm firewall allow version и deny version пишут VersionAllowList / VersionBlockList. Без лицензии Governance списки игнорируются.
Module firewallGovernance. Разрешение или запрет установок npm/pnpm/yarn/npx/vlt по локальным спискам. Без лицензии Governance списки игнорируются.
Trust firewallCommunity Builds и Certified Builds. nvm firewall trust module и distrust module. Семена по умолчанию: npm, npx, yarn, yarnpkg, corepack, pnpm и vlt.
Действие для недоверенного модуляprompt, allow или deny, когда global CLI сам обновляется.
Модель прав NodeShim добавляет --permission (Node 23+) или --experimental-permission (20–22).
Default / allowed grantsВставка --allow-* из политики. Удаление токенов --allow-* вызывающего, которых нет в списке.
Аудит grantСобытие nodejs.permission_grants, когда флаги переданы, применены или удалены. Команда всё равно выполняется.
Заморозка V8Shim добавляет --frozen-intrinsics (Node 12+).
Запрет evalShim добавляет --disallow-code-generation-from-strings.
Минимальный возраст пакетаCooldown для npm/npx/pnpm/yarn/yarnpkg, vlt и bun/bunx (если обёртка bun включена). Governance может форсировать.
Несовпадение менеджера пакетовpm_mismatch_action: ignore, warn или error, когда npm/pnpm/yarn не совпадает с Node.js.

Менеджеры пакетов​

ВозможностьОписание
Package Manager ShimsПрокси npm, npx, yarn, pnpm и похожих команд через proxy.exe.
Global Module ShimsReshim пишет shim в PATH для глобальных CLI.
CorepackProxy направляет yarn/pnpm через corepack.js. Reshim при enable, disable, prepare, hydrate и use.
vltProxy считает vlt менеджером пакетов для argv firewall и global reshim.
Обёртка bunОбёртка уже установленного bun / bunx для проверок OpenSSF. NVM не ставит bun и не переключает версии bun. По умолчанию выкл. в Community Builds. Вкл. в Certified Builds.

Интеграция с Windows​

ВозможностьОписание
Интеграция с приложениями WindowsКаждая установленная версия Node.js видна в «Приложения и возможности».
Журналирование событийCommunity Builds пишут критические события в журнал Windows Application.
Структурированное журналированиеДополнение Advanced Logging для Certified Builds. Добавляет EventName и Payload для SIEM. См. SIEM.
Уведомления на рабочем столеНативный Windows Notification Center. Пропущенные уведомления остаются, пока вы их не подтвердите. Обновление, установка или применение сборки прямо из уведомления.
Коллекции уведомленийMute Releases, Hotfixes, Pre-releases или News в параметрах Windows. nvm config не переключает mute ОС.
Интеграция с реестром WindowsПользовательские настройки в HKCU. На Certified Builds политика машины может перекрыть их.
Протокол nvm://Действия уведомлений: upgrade (Update / Install / Apply), Trust firewall и mute уведомлений определений malware.
Подпись кодаCommunity Builds и Certified Builds подписаны кодом. Издатель — Author Software Inc.

Конфигурация и диагностика​

ВозможностьОписание
Confignvm config: list, get, set, reset и docs. Политика HKLM важнее HKCU.
EnvОтчёт среды: зеркала, размеры, антивирус, флаги прав, лицензия. Есть JSON.
DoctorПоиск и ремонт типичных проблем. --autofix может восстановить DACL и verify-cache.
UpgradeОбновление NVM for Windows. disable_upgrade блокирует обновление из приложения.
Новости и релизыФоновый sync показывает уведомления новостей и обновлений. disable_announcements скрывает их. Предупреждения об истечении лицензии остаются.
Задача syncФоновый цикл: лицензия, определения malware, новости и релизы.

Сборки, политика и дополнения​

ВозможностьОписание
Dual BuildsCommunity Builds (MIT) и Certified Builds (EULA). См. Выбор сборки.
Режим Community-функцийCertified Build без коммерческой лицензии продолжает работать с возможностями Community.
ЛицензияСкрытая nvm license пишет HKLM. Certified Builds, Advanced Logging и Governance требуют sitewide-лицензию.
Уведомления об истечении лицензииCertified Builds предупреждают за 7, 3 и 1 день, в день истечения и ежедневно в 7-дневном grace.
Author MirrorХост Governance https://mirror.author.io/runtime/nodejs. Списки версий в JWT. EOL/ALPHA/MAINTENANCE требуют этот хост.
Базовый HTTP-проксиURL прокси, user:pass или Bearer. Fallback WinINET. Community Builds и Certified Builds.
Расширенный проксиIWA (NTLM/Negotiate) и PAC/WPAD. Дополнение Governance.
Административные шаблоныADMX/ADML блокируют или перекрывают настройки. См. Administrative Templates и Governance.
Active DirectoryРазвёртывание Certified Builds через GPO.
IntuneРазвёртывание Certified Builds как Win32-приложение. Установщик работает от System.
Trust ArtifactsПодписанный перечень материалов (SBOM), Аттестации SLSA, Результаты SAST, Отчёт по open-source лицензиям, and Отчёты VEX. Дополнение Certified Builds.
OEM / заводские образыПреднастройка NVM for Windows в образе Windows.