
## Summary Partially resolves #5561. Haven't added overrides support yet but I can add it tomorrow if the current approach for constraints is ok. ## Test Plan `cargo test` Manually checked trace logs after changing the constraints.
128 KiB
CLI Reference
uv
An extremely fast Python package manager.
Usage
uv [OPTIONS] <COMMAND>
Commands
uv pip
Manage Python packages with a pip-compatible interface
uv tool
Run and manage tools provided by Python packages (experimental)
uv python
Manage Python versions and installations (experimental)
uv init
Create a new project (experimental)
uv run
Run a command in an environment (experimental)
uv sync
Update the project’s environment to match the project’s dependencies (experimental)
uv lock
Create or update a lockfile for the project’s dependencies (experimental)
uv add
Add one or more packages to the project’s dependencies (experimental)
uv remove
Remove one or more packages from the project’s dependencies (experimental)
uv tree
Display the dependency tree for the project (experimental)
uv venv
Create a virtual environment
uv cache
Manage the cache
uv version
Display uv’s version
uv help
Display documentation for a command
uv pip
Manage Python packages with a pip-compatible interface
Usage
uv pip [OPTIONS] <COMMAND>
Commands
uv pip compile
Compile a
requirements.in
file to arequirements.txt
fileuv pip sync
Sync an environment with a
requirements.txt
fileuv pip install
Install packages into an environment
uv pip uninstall
Uninstall packages from an environment
uv pip freeze
List, in requirements format, packages installed in an environment
uv pip list
List, in tabular format, packages installed in an environment
uv pip show
Show information about one or more installed packages
uv pip tree
Display the dependency tree for an environment
uv pip check
Verify installed packages have compatible dependencies
uv pip compile
Compile a requirements.in
file to a requirements.txt
file
Usage
uv pip compile [OPTIONS] <SRC_FILE>...
Arguments
SRC_FILE
Include all packages listed in the given
requirements.in
files.If a
pyproject.toml
,setup.py
, orsetup.cfg
file is provided, uv will extract the requirements for the relevant project.If
-
is provided, then requirements will be read from stdin.
Options
--constraint
,-c
constraintConstrain versions using the given requirements files.
Constraints files are
requirements.txt
-like files that only control the version of a requirement that’s installed. However, including a package in a constraints file will not trigger the installation of that package.This is equivalent to pip’s
--constraint
option.--override
overrideOverride versions using the given requirements files.
Overrides files are
requirements.txt
-like files that force a specific version of a requirement to be installed, regardless of the requirements declared by any constituent package, and regardless of whether this would be considered an invalid resolution.While constraints are additive, in that they’re combined with the requirements of the constituent packages, overrides are absolute, in that they completely replace the requirements of the constituent packages.
--build-constraint
,-b
build-constraintConstrain build dependencies using the given requirements files when building source distributions.
Constraints files are
requirements.txt
-like files that only control the version of a requirement that’s installed. However, including a package in a constraints file will not trigger the installation of that package.--extra
extraInclude optional dependencies from the extra group name; may be provided more than once.
Only applies to
pyproject.toml
,setup.py
, andsetup.cfg
sources.--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
This option is only used when building source distributions.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--refresh-package
refresh-packageRefresh cached data for a specific package
--output-file
,-o
output-fileWrite the compiled requirements to the given
requirements.txt
file.If the file already exists, the existing versions will be preferred when resolving dependencies, unless
--upgrade
is also specified.--annotation-style
annotation-styleThe style of the annotation comments included in the output file, used to indicate the source of each package.
Defaults to
split
.--custom-compile-command
custom-compile-commandThe header comment to include at the top of the output file generated by
uv pip compile
.Used to reflect custom build scripts and commands that wrap
uv pip compile
.--python
pythonThe Python interpreter against which to compile the requirements.
By default, uv uses the virtual environment in the current working directory or any parent directory, falling back to searching for a Python executable in
PATH
. The--python
option allows you to specify a different interpreter.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--no-binary
no-binaryDon’t install pre-built wheels.
The given packages will be built and installed from source. The resolver will still use pre-built wheels to extract package metadata, if available.
Multiple packages may be provided. Disable binaries for all packages with
:all:
. Clear previously specified packages with:none:
.--only-binary
only-binaryOnly use pre-built wheels; don’t build source distributions.
When enabled, resolving will not run code from the given packages. The cached wheels of already-built source distributions will be reused, but operations that require building distributions will exit with an error.
Multiple packages may be provided. Disable binaries for all packages with
:all:
. Clear previously specified packages with:none:
.--python-version
,-p
python-versionThe minimum Python version that should be supported by the resolved requirements (e.g.,
3.8
or3.8.17
).If a patch version is omitted, the minimum patch version is assumed. For example,
3.8
is mapped to3.8.0
.--python-platform
python-platformThe platform for which requirements should be resolved.
Represented as a "target triple", a string that describes the target platform in terms of its CPU, vendor, and operating system name, like
x86_64-unknown-linux-gnu
oraaarch64-apple-darwin
.--no-emit-package
no-emit-packageSpecify a package to omit from the output resolution. Its dependencies will still be included in the resolution. Equivalent to pip-compile’s
--unsafe-package
option--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv pip sync
Sync an environment with a requirements.txt
file
Usage
uv pip sync [OPTIONS] <SRC_FILE>...
Arguments
SRC_FILE
Include all packages listed in the given
requirements.txt
files.If a
pyproject.toml
,setup.py
, orsetup.cfg
file is provided, uv will extract the requirements for the relevant project.If
-
is provided, then requirements will be read from stdin.
Options
--constraint
,-c
constraintConstrain versions using the given requirements files.
Constraints files are
requirements.txt
-like files that only control the version of a requirement that’s installed. However, including a package in a constraints file will not trigger the installation of that package.This is equivalent to pip’s
--constraint
option.--build-constraint
,-b
build-constraintConstrain build dependencies using the given requirements files when building source distributions.
Constraints files are
requirements.txt
-like files that only control the version of a requirement that’s installed. However, including a package in a constraints file will not trigger the installation of that package.--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--reinstall-package
reinstall-packageReinstall a specific package, regardless of whether it’s already installed. Implies
--refresh-package
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--refresh-package
refresh-packageRefresh cached data for a specific package
--python
,-p
pythonThe Python interpreter into which packages should be installed.
By default, uv installs into the virtual environment in the current working directory or any parent directory. The
--python
option allows you to specify a different interpreter, which is intended for use in continuous integration (CI) environments or other automated workflows.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--target
targetInstall packages into the specified directory, rather than into the virtual or system Python environment. The packages will be installed at the top-level of the directory
--prefix
prefixInstall packages into
lib
,bin
, and other top-level folders under the specified directory, as if a virtual environment were present at that location.In general, prefer the use of
--python
to install into an alternate environment, as scripts and other artifacts installed via--prefix
will reference the installing interpreter, rather than any interpreter added to the--prefix
directory, rendering them non-portable.--no-binary
no-binaryDon’t install pre-built wheels.
The given packages will be built and installed from source. The resolver will still use pre-built wheels to extract package metadata, if available.
Multiple packages may be provided. Disable binaries for all packages with
:all:
. Clear previously specified packages with:none:
.--only-binary
only-binaryOnly use pre-built wheels; don’t build source distributions.
When enabled, resolving will not run code from the given packages. The cached wheels of already-built source distributions will be reused, but operations that require building distributions will exit with an error.
Multiple packages may be provided. Disable binaries for all packages with
:all:
. Clear previously specified packages with:none:
.--python-version
python-versionThe minimum Python version that should be supported by the requirements (e.g.,
3.7
or3.7.9
).If a patch version is omitted, the minimum patch version is assumed. For example,
3.7
is mapped to3.7.0
.--python-platform
python-platformThe platform for which requirements should be installed.
Represented as a "target triple", a string that describes the target platform in terms of its CPU, vendor, and operating system name, like
x86_64-unknown-linux-gnu
oraaarch64-apple-darwin
.WARNING: When specified, uv will select wheels that are compatible with the target platform; as a result, the installed distributions may not be compatible with the current platform. Conversely, any distributions that are built from source may be incompatible with the target platform, as they will be built for the current platform. The
--python-platform
option is intended for advanced use cases.--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv pip install
Install packages into an environment
Usage
uv pip install [OPTIONS] <PACKAGE|--requirement <REQUIREMENT>|--editable <EDITABLE>>
Arguments
PACKAGE
Install all listed packages
Options
--requirement
,-r
requirementInstall all packages listed in the given
requirements.txt
files.If a
pyproject.toml
,setup.py
, orsetup.cfg
file is provided, uv will extract the requirements for the relevant project.If
-
is provided, then requirements will be read from stdin.--editable
,-e
editableInstall the editable package based on the provided local file path
--constraint
,-c
constraintConstrain versions using the given requirements files.
Constraints files are
requirements.txt
-like files that only control the version of a requirement that’s installed. However, including a package in a constraints file will not trigger the installation of that package.This is equivalent to pip’s
--constraint
option.--override
overrideOverride versions using the given requirements files.
Overrides files are
requirements.txt
-like files that force a specific version of a requirement to be installed, regardless of the requirements declared by any constituent package, and regardless of whether this would be considered an invalid resolution.While constraints are additive, in that they’re combined with the requirements of the constituent packages, overrides are absolute, in that they completely replace the requirements of the constituent packages.
--build-constraint
,-b
build-constraintConstrain build dependencies using the given requirements files when building source distributions.
Constraints files are
requirements.txt
-like files that only control the version of a requirement that’s installed. However, including a package in a constraints file will not trigger the installation of that package.--extra
extraInclude optional dependencies from the extra group name; may be provided more than once.
Only applies to
pyproject.toml
,setup.py
, andsetup.cfg
sources.--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--reinstall-package
reinstall-packageReinstall a specific package, regardless of whether it’s already installed. Implies
--refresh-package
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--refresh-package
refresh-packageRefresh cached data for a specific package
--python
,-p
pythonThe Python interpreter into which packages should be installed.
By default, uv installs into the virtual environment in the current working directory or any parent directory. The
--python
option allows you to specify a different interpreter, which is intended for use in continuous integration (CI) environments or other automated workflows.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--target
targetInstall packages into the specified directory, rather than into the virtual or system Python environment. The packages will be installed at the top-level of the directory
--prefix
prefixInstall packages into
lib
,bin
, and other top-level folders under the specified directory, as if a virtual environment were present at that location.In general, prefer the use of
--python
to install into an alternate environment, as scripts and other artifacts installed via--prefix
will reference the installing interpreter, rather than any interpreter added to the--prefix
directory, rendering them non-portable.--no-binary
no-binaryDon’t install pre-built wheels.
The given packages will be built and installed from source. The resolver will still use pre-built wheels to extract package metadata, if available.
Multiple packages may be provided. Disable binaries for all packages with
:all:
. Clear previously specified packages with:none:
.--only-binary
only-binaryOnly use pre-built wheels; don’t build source distributions.
When enabled, resolving will not run code from the given packages. The cached wheels of already-built source distributions will be reused, but operations that require building distributions will exit with an error.
Multiple packages may be provided. Disable binaries for all packages with
:all:
. Clear previously specified packages with:none:
.--python-version
python-versionThe minimum Python version that should be supported by the requirements (e.g.,
3.7
or3.7.9
).If a patch version is omitted, the minimum patch version is assumed. For example,
3.7
is mapped to3.7.0
.--python-platform
python-platformThe platform for which requirements should be installed.
Represented as a "target triple", a string that describes the target platform in terms of its CPU, vendor, and operating system name, like
x86_64-unknown-linux-gnu
oraaarch64-apple-darwin
.WARNING: When specified, uv will select wheels that are compatible with the target platform; as a result, the installed distributions may not be compatible with the current platform. Conversely, any distributions that are built from source may be incompatible with the target platform, as they will be built for the current platform. The
--python-platform
option is intended for advanced use cases.--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv pip uninstall
Uninstall packages from an environment
Usage
uv pip uninstall [OPTIONS] <PACKAGE|--requirement <REQUIREMENT>>
Arguments
PACKAGE
Uninstall all listed packages
Options
--requirement
,-r
requirementUninstall all packages listed in the given requirements files
--python
,-p
pythonThe Python interpreter from which packages should be uninstalled.
By default, uv uninstalls from the virtual environment in the current working directory or any parent directory. The
--python
option allows you to specify a different interpreter, which is intended for use in continuous integration (CI) environments or other automated workflows.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for remote requirements files.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--target
targetUninstall packages from the specified
--target
directory--prefix
prefixUninstall packages from the specified
--prefix
directory--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv pip freeze
List, in requirements format, packages installed in an environment
Usage
uv pip freeze [OPTIONS]
Options
--python
,-p
pythonThe Python interpreter for which packages should be listed.
By default, uv lists packages in the currently activated virtual environment, or a virtual environment (
.venv
) located in the current working directory or any parent directory, falling back to the system Python if no virtual environment is found.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv pip list
List, in tabular format, packages installed in an environment
Usage
uv pip list [OPTIONS]
Options
--exclude
excludeExclude the specified package(s) from the output
--format
formatSelect the output format between:
columns
(default),freeze
, orjson
--python
,-p
pythonThe Python interpreter for which packages should be listed.
By default, uv lists packages in the currently activated virtual environment, or a virtual environment (
.venv
) located in the current working directory or any parent directory, falling back to the system Python if no virtual environment is found.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv pip show
Show information about one or more installed packages
Usage
uv pip show [OPTIONS] [PACKAGE]...
Arguments
PACKAGE
The package(s) to display
Options
--python
,-p
pythonThe Python interpreter for which packages should be listed.
By default, uv lists packages in the currently activated virtual environment, or a virtual environment (
.venv
) located in the current working directory or any parent directory, falling back to the system Python if no virtual environment is found.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv pip tree
Display the dependency tree for an environment
Usage
uv pip tree [OPTIONS]
Options
--depth
,-d
depthMaximum display depth of the dependency tree
--prune
prunePrune the given package from the display of the dependency tree
--package
packageDisplay only the specified packages
--python
,-p
pythonThe Python interpreter for which packages should be listed.
By default, uv lists packages in the currently activated virtual environment, or a virtual environment (
.venv
) located in the current working directory or any parent directory, falling back to the system Python if no virtual environment is found.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv pip check
Verify installed packages have compatible dependencies
Usage
uv pip check [OPTIONS]
Options
--python
,-p
pythonThe Python interpreter for which packages should be listed.
By default, uv lists packages in the currently activated virtual environment, or a virtual environment (
.venv
) located in the current working directory or any parent directory, falling back to the system Python if no virtual environment is found.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv tool
Run and manage tools provided by Python packages (experimental)
Usage
uv tool [OPTIONS] <COMMAND>
Commands
uv tool run
Run a tool
uv tool install
Install a tool
uv tool list
List installed tools
uv tool uninstall
Uninstall a tool
uv tool update-shell
Ensure that the tool executable directory is on
PATH
uv tool dir
Show the tools directory
uv tool run
Run a tool
Usage
uv tool run [OPTIONS] [COMMAND]
Options
--from
fromUse the given package to provide the command.
By default, the package name is assumed to match the command name.
--with
withRun with the given packages installed
--with-requirements
with-requirementsRun with all packages listed in the given
requirements.txt
files--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--reinstall-package
reinstall-packageReinstall a specific package, regardless of whether it’s already installed. Implies
--refresh-package
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--no-build-package
no-build-packageDon’t build source distributions for a specific package
--no-binary-package
no-binary-packageDon’t install pre-built wheels for a specific package
--refresh-package
refresh-packageRefresh cached data for a specific package
--python
,-p
pythonThe Python interpreter to use to build the run environment.
By default, uv uses the virtual environment in the current working directory or any parent directory, falling back to searching for a Python executable in
PATH
. The--python
option allows you to specify a different interpreter.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv tool install
Install a tool
Usage
uv tool install [OPTIONS] <PACKAGE>
Arguments
PACKAGE
The package to install commands from
Options
--with
withInclude the following extra requirements
--with-requirements
with-requirementsRun all requirements listed in the given
requirements.txt
files--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--reinstall-package
reinstall-packageReinstall a specific package, regardless of whether it’s already installed. Implies
--refresh-package
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--no-build-package
no-build-packageDon’t build source distributions for a specific package
--no-binary-package
no-binary-packageDon’t install pre-built wheels for a specific package
--refresh-package
refresh-packageRefresh cached data for a specific package
--python
,-p
pythonThe Python interpreter to use to build the tool environment.
By default, uv will search for a Python executable in the
PATH
. uv ignores virtual environments while looking for interpreter for tools. The--python
option allows you to specify a different interpreter.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv tool list
List installed tools
Usage
uv tool list [OPTIONS]
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv tool uninstall
Uninstall a tool
Usage
uv tool uninstall [OPTIONS] <NAME>
Arguments
NAME
The name of the tool to uninstall
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv tool update-shell
Ensure that the tool executable directory is on PATH
Usage
uv tool update-shell [OPTIONS]
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv tool dir
Show the tools directory
Usage
uv tool dir [OPTIONS]
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv python
Manage Python versions and installations (experimental)
Usage
uv python [OPTIONS] <COMMAND>
Commands
uv python list
List the available Python installations
uv python install
Download and install Python versions
uv python find
Search for a Python installation
uv python pin
Pin to a specific Python version
uv python dir
Show the uv Python installation directory
uv python uninstall
Uninstall Python versions
uv python list
List the available Python installations
Usage
uv python list [OPTIONS]
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv python install
Download and install Python versions
Usage
uv python install [OPTIONS] [TARGETS]...
Arguments
TARGETS
The Python version(s) to install.
If not provided, the requested Python version(s) will be read from the
.python-versions
or.python-version
files. If neither file is present, uv will check if it has installed any Python versions. If not, it will install the latest stable version of Python.
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv python find
Search for a Python installation
Usage
uv python find [OPTIONS] [REQUEST]
Arguments
REQUEST
The Python request
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv python pin
Pin to a specific Python version
Usage
uv python pin [OPTIONS] [REQUEST]
Arguments
REQUEST
The Python version
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv python dir
Show the uv Python installation directory
Usage
uv python dir [OPTIONS]
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv python uninstall
Uninstall Python versions
Usage
uv python uninstall [OPTIONS] <TARGETS>...
Arguments
TARGETS
The Python version(s) to uninstall
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv init
Create a new project (experimental)
Usage
uv init [OPTIONS] [PATH]
Arguments
PATH
The path of the project
Options
--name
nameThe name of the project, defaults to the name of the directory
--python
,-p
pythonThe Python interpreter to use to determine the minimum supported Python version.
By default, uv uses the virtual environment in the current working directory or any parent directory, falling back to searching for a Python executable in
PATH
. The--python
option allows you to specify a different interpreter.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv run
Run a command in an environment (experimental)
Usage
uv run [OPTIONS] <COMMAND>
Options
--extra
extraInclude optional dependencies from the extra group name; may be provided more than once.
Only applies to
pyproject.toml
,setup.py
, andsetup.cfg
sources.--with
withRun with the given packages installed
--with-requirements
with-requirementsRun with all packages listed in the given
requirements.txt
files.Using
pyproject.toml
,setup.py
, orsetup.cfg
files is not allowed.--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--reinstall-package
reinstall-packageReinstall a specific package, regardless of whether it’s already installed. Implies
--refresh-package
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--no-build-package
no-build-packageDon’t build source distributions for a specific package
--no-binary-package
no-binary-packageDon’t install pre-built wheels for a specific package
--refresh-package
refresh-packageRefresh cached data for a specific package
--package
packageRun the command in a specific package in the workspace
--python
,-p
pythonThe Python interpreter to use to build the run environment.
By default, uv uses the virtual environment in the current working directory or any parent directory, falling back to searching for a Python executable in
PATH
. The--python
option allows you to specify a different interpreter.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv sync
Update the project's environment to match the project's dependencies (experimental)
Usage
uv sync [OPTIONS]
Options
--extra
extraInclude optional dependencies from the extra group name; may be provided more than once.
Only applies to
pyproject.toml
,setup.py
, andsetup.cfg
sources.--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--reinstall-package
reinstall-packageReinstall a specific package, regardless of whether it’s already installed. Implies
--refresh-package
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--no-build-package
no-build-packageDon’t build source distributions for a specific package
--no-binary-package
no-binary-packageDon’t install pre-built wheels for a specific package
--refresh-package
refresh-packageRefresh cached data for a specific package
--package
packageSync a specific package in the workspace
--python
,-p
pythonThe Python interpreter to use to build the run environment.
By default, uv uses the virtual environment in the current working directory or any parent directory, falling back to searching for a Python executable in
PATH
. The--python
option allows you to specify a different interpreter.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv lock
Create or update a lockfile for the project's dependencies (experimental)
Usage
uv lock [OPTIONS]
Options
--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
This option is only used when building source distributions.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--no-build-package
no-build-packageDon’t build source distributions for a specific package
--no-binary-package
no-binary-packageDon’t install pre-built wheels for a specific package
--refresh-package
refresh-packageRefresh cached data for a specific package
--python
,-p
pythonThe Python interpreter to use to build the run environment.
By default, uv uses the virtual environment in the current working directory or any parent directory, falling back to searching for a Python executable in
PATH
. The--python
option allows you to specify a different interpreter.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv add
Add one or more packages to the project's dependencies (experimental)
Usage
uv add [OPTIONS] <REQUIREMENTS>...
Arguments
REQUIREMENTS
The packages to add, as PEP 508 requirements (e.g.,
ruff==0.5.0
)
Options
--optional
optionalAdd the requirements to the specified optional dependency group
--rev
revSpecific commit to use when adding from Git
--tag
tagTag to use when adding from git
--branch
branchBranch to use when adding from git
--extra
extraExtras to activate for the dependency; may be provided more than once
--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--reinstall-package
reinstall-packageReinstall a specific package, regardless of whether it’s already installed. Implies
--refresh-package
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--no-build-package
no-build-packageDon’t build source distributions for a specific package
--no-binary-package
no-binary-packageDon’t install pre-built wheels for a specific package
--refresh-package
refresh-packageRefresh cached data for a specific package
--package
packageAdd the dependency to a specific package in the workspace
--python
,-p
pythonThe Python interpreter into which packages should be installed.
By default, uv installs into the virtual environment in the current working directory or any parent directory. The
--python
option allows you to specify a different interpreter, which is intended for use in continuous integration (CI) environments or other automated workflows.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv remove
Remove one or more packages from the project's dependencies (experimental)
Usage
uv remove [OPTIONS] <REQUIREMENTS>...
Arguments
REQUIREMENTS
The names of the packages to remove (e.g.,
ruff
)
Options
--optional
optionalRemove the requirements from the specified optional dependency group
--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--reinstall-package
reinstall-packageReinstall a specific package, regardless of whether it’s already installed. Implies
--refresh-package
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--no-build-package
no-build-packageDon’t build source distributions for a specific package
--no-binary-package
no-binary-packageDon’t install pre-built wheels for a specific package
--refresh-package
refresh-packageRefresh cached data for a specific package
--package
packageRemove the dependency from a specific package in the workspace
--python
,-p
pythonThe Python interpreter into which packages should be installed.
By default, uv installs into the virtual environment in the current working directory or any parent directory. The
--python
option allows you to specify a different interpreter, which is intended for use in continuous integration (CI) environments or other automated workflows.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv tree
Display the dependency tree for the project (experimental)
Usage
uv tree [OPTIONS]
Options
--depth
,-d
depthMaximum display depth of the dependency tree
--prune
prunePrune the given package from the display of the dependency tree
--package
packageDisplay only the specified packages
--no-build-package
no-build-packageDon’t build source distributions for a specific package
--no-binary-package
no-binary-packageDon’t install pre-built wheels for a specific package
--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--upgrade-package
,-P
upgrade-packageAllow upgrades for a specific package, ignoring pinned versions in any existing output file
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--resolution
resolutionThe strategy to use when selecting between the different compatible versions for a given package requirement.
By default, uv will use the latest compatible version of each package (
highest
).--prerelease
prereleaseThe strategy to use when considering pre-release versions.
By default, uv will accept pre-releases for packages that only publish pre-releases, along with first-party requirements that contain an explicit pre-release marker in the declared specifiers (
if-necessary-or-explicit
).--config-setting
,-C
config-settingSettings to pass to the PEP 517 build backend, specified as
KEY=VALUE
pairs--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
This option is only used when building source distributions.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--python
,-p
pythonThe Python interpreter for which packages should be listed.
By default, uv installs into the virtual environment in the current working directory or any parent directory. The
--python
option allows you to specify a different interpreter, which is intended for use in continuous integration (CI) environments or other automated workflows.Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv venv
Create a virtual environment
Usage
uv venv [OPTIONS] [NAME]
Arguments
NAME
The path to the virtual environment to create
Options
--python
,-p
pythonThe Python interpreter to use for the virtual environment.
Supported formats:
3.10
looks for an installed Python 3.10 usingpy --list-paths
on Windows, orpython3.10
on Linux and macOS.python3.10
orpython.exe
looks for a binary with the given name inPATH
./home/ferris/.local/bin/python3.10
uses the exact Python at the given path.
Note that this is different from
--python-version
inpip compile
, which takes3.10
or3.10.13
and doesn’t look for a Python interpreter on disk.--prompt
promptProvide an alternative prompt prefix for the virtual environment.
The default behavior depends on whether the virtual environment path is provided:
- If provided (
uv venv project
), the prompt is set to the virtual environment’s directory name. - If not provided (
uv venv
), the prompt is set to the current directory’s name.
Possible values:
.
: Use the current directory name.- Any string: Use the given string.
- If provided (
--index-url
,-i
index-urlThe URL of the Python package index (by default: <https://pypi.org/simple>).
Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
The index given by this flag is given lower priority than all other indexes specified via the
--extra-index-url
flag.--extra-index-url
extra-index-urlExtra URLs of package indexes to use, in addition to
--index-url
.Accepts either a repository compliant with PEP 503 (the simple repository API), or a local directory laid out in the same format.
All indexes provided via this flag take priority over the index specified by
--index-url
(which defaults to PyPI). When multiple--extra-index-url
flags are provided, earlier values take priority.--find-links
,-f
find-linksLocations to search for candidate distributions, in addition to those found in the registry indexes.
If a path, the target must be a directory that contains packages as wheel files (
.whl
) or source distributions (.tar.gz
or.zip
) at the top level.If a URL, the page must contain a flat list of links to package files adhering to the formats described above.
--index-strategy
index-strategyThe strategy to use when resolving against multiple index URLs.
By default, uv will stop at the first index on which a given package is available, and limit resolutions to those present on that first index (
first-match
). This prevents "dependency confusion" attacks, whereby an attack can upload a malicious package under the same name to a secondary.--keyring-provider
keyring-providerAttempt to use
keyring
for authentication for index URLs.At present, only
--keyring-provider subprocess
is supported, which configures uv to use thekeyring
CLI to handle authentication.Defaults to
disabled
.--exclude-newer
exclude-newerLimit candidate packages to those that were uploaded prior to the given date.
Accepts both RFC 3339 timestamps (e.g.,
2006-12-02T02:07:43Z
) and UTC dates in the same format (e.g.,2006-12-02
).--link-mode
link-modeThe method to use when installing packages from the global cache.
This option is only used for installing seed packages.
Defaults to
clone
(also known as Copy-on-Write) on macOS, andhardlink
on Linux and Windows.--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv cache
Manage the cache
Usage
uv cache [OPTIONS] <COMMAND>
Commands
uv cache clean
Clear the cache, removing all entries or those linked to specific packages
uv cache prune
Prune all unreachable objects from the cache
uv cache dir
Show the cache directory
uv cache clean
Clear the cache, removing all entries or those linked to specific packages
Usage
uv cache clean [OPTIONS] [PACKAGE]...
Arguments
PACKAGE
The packages to remove from the cache
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv cache prune
Prune all unreachable objects from the cache
Usage
uv cache prune [OPTIONS]
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv cache dir
Show the cache directory
Usage
uv cache dir [OPTIONS]
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv version
Display uv's version
Usage
uv version [OPTIONS]
Options
--output-format
output-format--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration
uv help
Display documentation for a command
Usage
uv help [OPTIONS] [COMMAND]...
Arguments
COMMAND
Options
--cache-dir
cache-dirPath to the cache directory.
Defaults to
$HOME/Library/Caches/uv
on macOS,$XDG_CACHE_HOME/uv
or$HOME/.cache/uv
on Linux, and{FOLDERID_LocalAppData}\uv\cache
on Windows.--python-preference
python-preferenceWhether to prefer using Python installations that are already present on the system, or those that are downloaded and installed by uv
--python-fetch
python-fetchWhether to automatically download Python when required
--color
color-choiceControl colors in output
--config-file
config-fileThe path to a
uv.toml
file to use for configuration