An extremely fast Python package and project manager written in Rust, replacing pip, virtualenv, pyenv, pipx and more.
pypa/pipx
Installs and runs Python command-line applications in isolated environments so their dependencies never conflict with each other or the system.
- Stars
- 12,987
- Forks
- 639
- Open issues
- 0
- Last commit
- 14 hours ago
What is it?
pipx is a tool for installing and running end-user Python applications from the command line. Each application is placed in its own isolated virtual environment, and only its command-line entry points are exposed on your PATH, so installing one tool cannot break another or the system Python.
It covers three main jobs: installing an application with the install command, listing, upgrading or uninstalling installed applications, and running the latest version of an application in a temporary environment with the run command. It runs under regular user permissions and never calls sudo pip install. It uses uv when available and falls back to pip otherwise.
pipx is aimed at people who want tools like linters, formatters or utilities written in Python without managing virtual environments by hand. It is installed through Homebrew on macOS, Scoop on Windows, and the system package manager on Linux.
Key features
- 01Installs each application into its own isolated virtual environment.
- 02Exposes only the application's command-line entry points.
- 03Runs applications in temporary environments with the run command.
- 04Lists, upgrades and uninstalls installed applications cleanly.
- 05Operates under regular user permissions without sudo pip install.
- 06Uses uv when available and falls back to pip.
Use cases
- Installing Python-based command-line tools such as formatters or linters for daily use.
- Trying out a Python application once without leaving anything installed.
- Avoiding dependency conflicts between several Python CLI tools on one machine.
Quick start
- 1
Install pipx on macOS with Homebrew
brew install pipx - 2
Add pipx's bin directory to your PATH
pipx ensurepath - 3
Install an application such as pycowsay and run it
pipx install pycowsay - 4
Run an application without installing it
pipx run pycowsay moo
In collections
Topics
FAQ
- What is pipx?
- Installs and runs Python command-line applications in isolated environments so their dependencies never conflict with each other or the system. pipx is a tool for installing and running end-user Python applications from the command line. Each application is placed in its own isolated virtual environment, and only its command-line entry points are exposed on your PATH, so installing one tool cannot break another or the system Python.
- Is pipx free to use? What license does it have?
- pipx is open source under the MIT license. Check the license terms before using it in commercial products.
- Is pipx still maintained?
- Actively maintained. The last commit to pipx was on Nov 7, 2026.
- What can I use pipx for?
- Installing Python-based command-line tools such as formatters or linters for daily use. Trying out a Python application once without leaving anything installed. Avoiding dependency conflicts between several Python CLI tools on one machine.
- How do I install pipx?
- Install pipx on macOS with Homebrew: brew install pipx Add pipx's bin directory to your PATH: pipx ensurepath Install an application such as pycowsay and run it: pipx install pycowsay Run an application without installing it: pipx run pycowsay moo
- Where can I get pipx?
- The source code and installation instructions are on GitHub: https://github.com/pypa/pipx
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
The standard package installer for Python, used to install packages from the Python Package Index (PyPI) and other indexes.
A modern Python package and dependency manager that manages venvs, lockfiles and builds based on PEP 621 and PEP 517 metadata.
A tool for creating isolated Python virtual environments so each project can keep its own set of packages.
A command-line tool that creates isolated, reproducible development shells with project-specific packages from the Nix registry, without containers.
A minimalist, portable package manager for Windows that installs each package into its own directory with isolated environments.