Apps

uv Unused Packages

uv keeps a shared package cache for Python downloads and build artifacts, including wheel archives, source distribution tarballs, unpacked package trees, and metadata used to satisfy installs quickly across projects. Over time that cache accumulates packages no environment still references, especially after dependency upgrades, virtual environment rebuilds, and switching Python versions or indexes. Kudu removes only uv packages the tool itself marks as unused by running uv's native cache-prune logic against the configured cache location, leaving active environments, project files, settings, accounts, and passwords untouched.

Why clean uv Unused Packages?

  • Repeated dependency churn leaves old wheel files and source tarballs behind, so the cache grows steadily and you notice uv using far more disk space than your current projects justify
  • Recreated virtual environments stop referencing earlier package builds, but their cached archives remain, which shows up as large cache folders even after deleting old projects
  • Packages built for older Python ABI tags and platforms can linger after interpreter upgrades, so you keep paying the disk cost for artifacts uv will no longer reuse
  • Switching package indexes or resolving to newer versions leaves superseded downloads in the shared cache, making storage usage balloon while installs no longer benefit from those files
  • Long-lived caches often contain many near-duplicate wheels from frequent pin changes, and the symptom is a cache directory measured in gigabytes despite only a handful of active environments
  • Cleaning unused entries reduces the amount of stale package material uv has to track in its cache store, which makes it easier to inspect and troubleshoot what is actually being reused
What gets cleaned

Cache paths Kudu targets

Windows

~

macOS

~

Linux

~
Frequently asked

Common questions about uv Unused Packages

Free & open source

Download Kudu and reclaim your disk space.

Available on Windows, macOS, and Linux. No account required, no feature gates, no telemetry without consent. All cleaning targets are open source and community-auditable.