install
Install a Python version.
Usage
scuv install [version] [options]
Arguments
| Argument | Required | Default | Description |
|---|---|---|---|
version | No | latest | Python version (e.g., 3.12, 3.11.8) |
Options
| Option | Description |
|---|---|
--latest | Install latest stable Python (default) |
--stable | Install oldest fully-supported Python (3.10) |
--json | Output result as JSON |
What gets installed where
The interpreter itself lands in uv’s own directory
(~/.local/share/uv/python/...); scuv records nothing about it beyond what
uv python list reports.
Since uv 0.8.0 there is a second effect worth knowing about: uv python install also links a versioned executable onto your PATH — typically
~/.local/bin/python3.13 — so the interpreter is reachable without going
through a virtual environment at all.
$ ls -l ~/.local/bin/python3.14
~/.local/bin/python3.14 -> ~/.local/share/uv/python/cpython-3.14.../bin/python3.14
That executable points at the bare interpreter: standard library only, and you
cannot install packages into it. Use a scuv environment for anything past a
quick python3.14 -c '...'.
uv itself accepts --no-bin to skip the link, but scuv install does not
currently forward flags to uv, so there is no way to opt out through scuv. Run
uv python install --no-bin <version> directly if you need that.
Version Resolution
- No argument or
--latest: installs latest Python 3.x --stable: installs Python 3.10 (oldest with active security support)3.12: installs latest 3.12.x patch3.12.3: installs exact version
Examples
scuv install # Install latest
scuv install --latest # Same as above
scuv install --stable # Install Python 3.10
scuv install 3.12 # Install latest 3.12.x
scuv install 3.12.3 # Install exact 3.12.3
Note: Python versions are managed by uv.
Python Discovery
You don’t always need scuv install. When you run scuv create, uv searches for a matching Python in this order:
- uv-managed — installed via
scuv installoruv python install - System PATH — Homebrew, apt, pyenv, or any Python on your
PATH - Platform-specific — Windows registry, Microsoft Store
# See all Python versions uv can find
uv python list
# Example output:
# cpython-3.13.1 /opt/homebrew/bin/python3.13 (system)
# cpython-3.12.8 ~/.local/share/uv/python/... (managed)
# cpython-3.11.5 /usr/bin/python3.11 (system)
# Use system Python directly — no scuv install needed
scuv create myenv 3.13
If the requested version isn’t found anywhere, scuv create will fail with an error. Use scuv install <version> to download it first.
See also: Python Management for custom Python paths, environment variables, and migration.