Pyve — Wrangle your virtual environments

A single, easy entry point for Python virtual environments.

Pyve orchestrates Python virtual environments (init, auto-activate, purge) — auto-detects and configures asdf/pyenv, venv/micromamba, and direnv.

Quick Start

# Install Pyve via Homebrew
brew install pointmatic/tap/pyve

# Initialize your project environment
cd ~/my-project
pyve --init

# Run commands inside the environment
pyve run python --version
pyve run pytest tests/

Features

Everything you need to manage Python environments, in one tool.

One-Command Setup

Initialize Python version, virtual environment, direnv, and .gitignore in a single pyve --init.

🔄

Dual Backends

Choose venv for pure-Python projects or micromamba for scientific/ML stacks — auto-detected from project files.

Deterministic Execution

Run commands inside the project environment with pyve run — no manual activation, no shell state.

🚫

Clean Teardown

pyve --purge removes all artifacts while preserving your secrets and user data.

CI/CD Ready

Non-interactive flags (--no-direnv, --auto-bootstrap, --strict) for reproducible pipelines.

🔍

Environment Diagnostics

pyve doctor and pyve --validate report health, version compatibility, and lock file status.

🔧

Isolated Test Runner

pyve test runs pytest in a dedicated dev/test environment that survives force re-initialization.

📦

Zero Dependencies

Pure Bash script — no runtime dependencies, no daemons, no background processes.

Why Pyve?

Make things easy and natural, but avoid being invasive.

One-command environment setup (pyve --init)
Dual backend support — venv (pip) and micromamba (conda-compatible)
Automatic Python version management via asdf or pyenv
direnv integration for seamless shell activation
CI/CD-ready with non-interactive flags
Clean teardown with pyve --purge — preserves your secrets
Zero runtime dependencies — pure Bash, no daemons

Pyve is a focused command-line tool that provides a single, deterministic entry point for setting up and managing Python virtual environments on macOS and Linux. It orchestrates Python version management (asdf or pyenv), virtual environments (venv or micromamba), and direnv integration in one script. It supports interactive workflows with auto-activation and non-interactive CI/CD pipelines with explicit execution via pyve run.