Skip to content
Latchkey

uv self update: Upgrade the uv Binary

uv self update upgrades the uv executable to the latest release when uv was installed via the standalone installer.

uv self update keeps the binary current, but in CI you usually pin the version instead so behavior does not change mid-pipeline.

What it does

uv self update downloads and replaces the uv binary with the newest release. It only works for standalone-installer installs; a uv installed via pip or a package manager must be upgraded through that manager instead.

Common usage

Terminal
uv self update
uv self update 0.5.0
uv --version
# pin uv in CI via the setup action input instead

Options

Argument / FlagWhat it does
(no arg)Update to the latest release
<version>Update (or downgrade) to a specific version
--token <token>GitHub token to avoid rate limits when fetching

In CI

Prefer pinning uv (for example, the version input on astral-sh/setup-uv, or installing a fixed version) over self update, so the toolchain is reproducible. If you must update in a job, pass --token to dodge GitHub API rate limits on shared runners.

Common errors in CI

"error: Self-update is only available for uv binaries installed via the standalone installer" means uv came from pip or a distro package; upgrade it there instead. "API rate limit exceeded" when checking releases is fixed with --token. A read-only install location yields a permission error replacing the binary.

Related guides

Run this faster and cheaper on Latchkey managed runners. Start free →