pickley
Automate installation of standalone python CLIs
What it is and what it does
Pickley is a CLI tool installer that manages standalone Python command-line applications from PyPI. It works zero-configuration out of the box—drop it in ~/.local/bin and install any PyPI package with console_scripts entry points. Unlike pipx, pickley automatically upgrades installed CLIs as you use them, keeping them current without manual intervention. It supports version pinning, pre-releases, git branches, and bundled installations through optional configuration.
The tool is portable: all installations happen in the same folder where pickley itself resides, making it ideal for user-local or system-wide CLI management. It uses click for its command interface and runez for utility functions. Supports modern Python versions (3.10 through 3.14) on macOS, Linux, and Unix systems.
Use it for:
- Keep tox, hatch, and other development tools automatically up-to-date without manual upgrades or version conflicts.
- Bootstrap a portable CLI toolkit in ~/.local/bin that self-maintains and works across different machines.
- Install and manage multiple Python CLIs with version constraints (e.g., 'tox<4') while staying on the latest compatible release.
- Define bundles to install related CLI tools together (e.g., a 'dev' bundle with tox, pipenv, and pre-commit).
- Run Python CLIs on-demand with auto-install, similar to uvx but with persistent self-upgrading.
- Use a custom PyPI server index for air-gapped or private package installations.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Installs and auto-upgrades standalone Python CLI tools from PyPI into a portable directory, similar to pipx but with automatic self-upgrading as you use them.
Yes. Pickley is actively maintained, has low install friction, carries no known vulnerabilities, and solves a real problem—keeping standalone Python CLIs up-to-date without manual work. It's well-suited for developers who want a portable, zero-config CLI manager. The auto-upgrade feature and bundling support add value over simpler alternatives. Install it if you regularly use multiple Python command-line tools.
Install
pickley on PyPI
pip
pip install pickleyuv
uv add pickleypoetry
poetry add pickleyInstalling pickley
Before you install
Low friction: pure Python wheel with only two runtime dependencies (click and runez). Actively maintained with a recent release; last commit 2026-05-11 and status marked active.
License in practice
MIT license is permissive; you can use, modify, and distribute pickley freely with minimal restrictions.
Quickstart
# Bootstrap pickley to ~/.local/bin
curl -fsSL https://raw.githubusercontent.com/codrsquad/pickley/main/src/pickley/bstrap.py | /usr/bin/python3 -
# Install a CLI tool
pickley install tox
# List installed tools
pickley list
Requires Python 3.10 or later; curl and a POSIX-like shell for the bootstrap one-liner.
Verify before relying
- Whether auto-upgrade on use works reliably across all CLI tools or only those with specific entry-point structures.
- Performance impact of wrapper-based delivery vs. symlink delivery in real-world workflows.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — click, runez |
| Maintenance | actively maintained — 130 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 557,114/month — #6,013 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pickley-4.6.1-py3-none-any.whl
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pipmasterProgrammatically ensures Python packages are…
permissive · top 15,000 on PyPI
pbs-installerDownloads and installs python-build-standalone…
permissive · top 1,000 on PyPI
pexPex generates standalone, executable Python…
permissive · top 5,000 on PyPI
pip-toolspip-tools provides command-line tools to…
permissive · top 5,000 on PyPI
setupmetaReduces boilerplate in setup.py by…
permissive · top 5,000 on PyPI
PyScaffoldPyScaffold generates a complete Python project…
permissive · top 5,000 on PyPI
hatchHatch is a modern Python project manager that…
permissive · top 1,000 on PyPI
unidepUniDep unifies Conda and Pip dependency…
unclear · top 15,000 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
pystowPyStow provides a standardized way to store and…
permissive · top 15,000 on PyPI