uv
101
uv is a fast, modern Python package manager optimized for speed and simplicity—ideal for pentesting and red team workflows where rapid setup matters. It replaces traditional tools like pip, virtualenv, and pip-tools by combining their capabilities into one streamlined utility written in Rust.
With uv, it's easy to create isolated environments, install packages from PyPI or Git repositories, and generate lockfiles for consistent, reproducible tool setups. This makes it well-suited for scenarios where fast deployment and clean dependency management are critical.
Usage
# Update uv
uv self update
# List available Python versions
$ uv python list
# Install a tool with a specific Python version
$ uv tool install --python 3.13 creds
# Uninstall the specified Python version
$ uv python uninstall 3.13# Install a package using the pypi name:
uv tool install DefaultCreds_cheat_sheet
# Install a tool using its GitHub repo:
uv tool install git+https://github.com/Pennyw0rth/NetExec
# Run an installed package
uv run creds search tomcat
# Upgrade a package
uv tool upgrade netexecThe above step added the dependencies metadata within the main script:
We can edit the shebang to make it easier to run with uv:
Resources
A great tutorial from 0xdf: Python UV for Hackers (video)
Last updated
Was this helpful?