UV Global Environment Manager
Bring the convenience of reusable global environments to the speed and simplicity of UV, with seamless multi-shell and cross-platform support.
UV provides an excellent project-oriented workflow, but not every Python task needs its own project. This tool brings the convenience of reusable global environments to UV, allowing you to create, manage, and quickly switch between isolated environments for experimentation, automation, utilities, development tools, and other recurring tasks.
Built with native integration for Windows and Linux designed to work across the same shells supported by UV, it provides a consistent workflow without relying on platform-specific scripts. When an experiment grows into a real project, the active environment can also be used as the starting point for a standard UV project, making the transition from experimentation to development straightforward.
Installation
UV must be installed and available globally through the system PATH.
The recommended way to install UV Global Environment Manager is through UV's tool management:
uv tool install uv-global-manager
uv tool update-shell
Once installed, the uve command will be available globally.
Run uve setup to configure the shell integration and explore the available setup options.
Why Global Virtual Environments?
Not every Python task needs a dedicated project. Reusable environments are useful whenever you need an isolated, persistent Python environment for a specific purpose.
Many everyday tasks do not belong to a dedicated project:
- Testing new Python libraries.
- Running utility scripts.
- Experimenting with new technologies.
- Maintaining automation tools.
- Building dedicated data science environments.
- Keeping separate environments for different Python versions.
- Creating specialized environments with pre-installed applications such as Spyder, Jupyter, or scientific libraries.
For example, a dedicated environment can provide a Python-based workflow similar to MATLAB by installing Spyder and the required scientific libraries. Other environments can be tailored to any of the use cases above, with each environment remaining fully isolated from the system Python while being immediately available whenever needed.
Reusable environments therefore complement project-specific environments by providing persistent, purpose-built Python installations for tasks that do not require a dedicated project.
Features
- Manage reusable global virtual environments (create, activate, list, and remove).
- Bootstrap standard UV projects from the active environment.
- Support Windows and Linux.
- Support the same shells supported by UV.
- Provide native shell integration across supported platforms.
- Automatically initialize and maintain the required manager infrastructure.
Available Commands
The CLI provides dedicated commands for managing environments, integrating with the current shell, and transitioning from reusable environments to standard UV projects. Run uve help <command> to view the complete help, including available options and examples for any command.
| Command | Description |
|---|---|
uve create |
Creates a reusable global virtual environment using any Python version supported by UV. The selected Python version can be downloaded automatically by UV when needed, and dependencies can optionally be installed from a requirements file during creation. |
uve list |
Lists managed environments and provides filtering and inspection options, including Python implementation, version, size, and environment statistics. |
uve activate |
Activates a managed environment in the current shell using the appropriate shell integration, making its Python interpreter and installed tools immediately available. |
uve delete |
Removes a managed environment, with protection against deleting the environment currently in use. |
uve make-project |
Bootstraps a standard UV project from the currently active global environment, carrying its Python configuration and dependencies into the new project while allowing the resulting project to be customized through UV's project options. |
uve setup |
Configures the manager and its shell integration, with automatic setup available for normal installations and additional resources for users who prefer to perform the setup manually. |
Acknowledgments
This project would not be possible without:
- Shellingham, by Tzu-ping Chung.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file uv_global_manager-1.0.3.tar.gz.
File metadata
- Download URL: uv_global_manager-1.0.3.tar.gz
- Upload date:
- Size: 27.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc3b2b4b0992c8db1baa1b7ea137b7adfd5dcb6e93e36af836fbeb6d2a99f902
|
|
| MD5 |
28141f2a71f45f588919eb1ad59c10c0
|
|
| BLAKE2b-256 |
6be6e52c238280736b61e504cdcedb3627ff43cd1692edbd3d877a12333049f9
|
File details
Details for the file uv_global_manager-1.0.3-py3-none-any.whl.
File metadata
- Download URL: uv_global_manager-1.0.3-py3-none-any.whl
- Upload date:
- Size: 40.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e13bc9b2aa22ae5bf3fe25b20b80741840c8c67c1f0b372ba1c60f15b99afcb
|
|
| MD5 |
6b9ac82da74f421e375bc20c8bf607ca
|
|
| BLAKE2b-256 |
943a6a88bc5cb5d36b36b5f7197e35f2797fef3039b75eab8cec2e9023af8d85
|