LinuxCommandLibrary
GitHubF-DroidGoogle Play Store

pyra

Modern Python package and project manager built in Rust

TLDR

Install a specific Python interpreter version
$ pyra python install [3.12]
copy
Initialize a new project pinned to a Python version
$ pyra init --python [3.12]
copy
Add a dependency to the current project
$ pyra add [requests]
copy
Remove a dependency from the current project
$ pyra remove [requests]
copy
Sync the environment with the lockfile
$ pyra sync
copy
Run a script or command through the managed environment
$ pyra run [script.py]
copy
Show the dependency tree
$ pyra tree
copy
Update Pyra itself
$ pyra self update
copy

SYNOPSIS

pyra command [subcommand] [options] [args]

DESCRIPTION

pyra is a modern Python package and project manager written in Rust. It unifies Python version management, project initialization, dependency resolution, environment synchronization, and script execution under a single deterministic pipeline.Projects declare intent in pyproject.toml and Pyra writes the fully-resolved state to pylock.toml. Running pyra sync then reconciles the local virtual environment exactly to the lockfile, so the same lockfile always yields the same environment across machines.Compared with traditional tools like pip and venv, Pyra replaces the chain of pyenv + virtualenv + pip + pip-tools with one binary that handles the full lifecycle — install, add, lock, sync, run — without network calls at run time beyond what is needed to fetch declared packages.

PARAMETERS

python install version

Install a specific Python interpreter version managed by Pyra.
init [--python version]
Initialize a new project, generating pyproject.toml and pylock.toml.
add package [package ...]
Add one or more dependencies to pyproject.toml and update the lockfile.
remove package [package ...]
Remove dependencies from pyproject.toml and update the lockfile.
sync
Reconcile the local virtual environment with pylock.toml.
lock
Resolve dependencies and write the precise state to pylock.toml.
run command
Execute a script or command inside the synchronized environment.
tree
Show the resolved dependency tree for the current project.
info
Show project metadata, Python version, and environment details.
cache
Inspect or manage Pyra's on-disk cache.
self update
Update Pyra itself to the latest version.

CONFIGURATION

Project configuration lives in pyproject.toml (declared intent). The precise installed state is written to pylock.toml. Both files should be checked into version control.

CAVEATS

Pyra is under active development; command names and flags may change before a stable release. Its lockfile format (pylock.toml) is Pyra-specific and not yet interchangeable with other Python tools.

HISTORY

pyra was created as a Rust-based alternative to the fragmented Python tooling landscape, taking design cues from tools like uv, poetry, and pdm while focusing on deterministic environment reproduction through a dedicated lockfile.

SEE ALSO

uv(1), pip(1), poetry(1), pdm(1), python(1)

Copied to clipboard
Kai