Using uvx in GitHub Actions in a cache-friendly way

Nice practical CI pattern for teams using uvx as disposable tooling glue, especially because it avoids adding fake dependency files just to drive cache keys.

Logged at IST: 2026-07-14 08:12 IST

What it is: Simon Willison linking to his TIL on running uvx in GitHub Actions without re-downloading the package every run

Gist: The useful trick is to pin UV_EXCLUDE_NEWER to a date, use that same date in the GitHub Actions cache key, and set UV_OFFLINE=1 on cache hits. That gives a lightweight, file-free way to make uvx tool-name workflows cacheable, reproducible enough, and intentionally bustable by changing one date.

Newsletter angle: Nice practical CI pattern for teams using uvx as disposable tooling glue, especially because it avoids adding fake dependency files just to drive cache keys.

Embedded source