Глобальный параметр –require-virtualenv завершает изменяющую окружение команду pip, если активный интерпретатор не принадлежит venv. Ошибка защищает заранее.

Включите защиту постоянно

Задайте PIP_REQUIRE_VIRTUALENV=true в профиле разработчика или CI, чтобы случайная команда install не записала пакет в системный либо пользовательский Python.

PIP_REQUIRE_VIRTUALENV=true python -m pip install package_name

Создайте среду явно

После отказа создайте venv нужным интерпретатором, вызывайте его python по абсолютному пути и сначала обновляйте инструменты только тогда, когда проект действительно требует конкретной версии для своей проверенной сборочной цепочки.

Не блокируйте диагностику

В современных выпусках pip проверочные команды check и freeze могут работать даже при включенной защите, поскольку они не изменяют установленные файлы среды.

Эта настройка снижает риск ошибочной установки, но не заменяет права доступа и системную политику, если пользователь способен отключить переменную вручную.

Среду создавайте по инструкции pip и venv. Параметр описывает общий справочник pip.