uv python install: Install Managed Pythons
uv python install downloads a standalone managed CPython (or PyPy) build for the version you request.
uv python install removes the need for a system Python or a separate version manager in CI. It fetches a portable interpreter uv controls end to end.
What it does
uv python install downloads a standalone interpreter build from the python-build-standalone project and registers it for uv to use. You can install a specific version, several at once, or the version pinned by the project.
Common usage
uv python install 3.12
uv python install 3.11 3.12 3.13
uv python install pypy@3.10
uv python install # installs the project's pinned version
uv python listOptions
| Flag | What it does |
|---|---|
| <version> | Version request, e.g. 3.12, 3.12.4, pypy@3.10 |
| --reinstall | Reinstall even if the version is present |
| --mirror <url> | Use a mirror for the interpreter downloads |
| --default | Also expose the install as the default python |
In CI
Install the interpreter explicitly so the job does not depend on whatever the runner image ships. Set UV_PYTHON_INSTALL_DIR to a cached path to persist interpreters across runs. uv sync will auto-install a missing managed Python unless UV_PYTHON_DOWNLOADS=never is set.
Common errors in CI
"error: No download found for request: <version>" means there is no standalone build for that exact version or platform; pick a published version. "error: Failed to download ... operating system error" usually means no network egress or a proxy blocking the CDN; configure the proxy or --mirror. On musl-only images, a glibc build will fail to run with a loader error.