Isolation Backends

Choose between uv tool and pipx for installing PraisonAI

PraisonAI’s installer keeps the CLI isolated from your global Python environment. It picks uv tool or pipx, bootstrapping uv when neither is present.

Diagram

Yes

No

Yes

No

Which backend?

Is uv installed?

uv tool\nFastest. Zero extra deps.

Is pipx installed?

pipx\nWell-known. Broad ecosystem.

bootstrap uv\nAuto-installed.

Backend Comparison

uv toolpipx
Isolation✅ Isolated✅ Isolated
Persistence✅ Permanent✅ Permanent
Speed⚡ Fastest🐢 Slower
PATH management~/.local/bin shimpipx ensurepath + ~/.local/bin shim
Extra installuv (auto-bootstrapped)pipx
Who manages envuvpipx
When it’s pickeduv present, or neither (bootstrapped)uv absent, pipx present

Using Each Backend

uv tool (recommended)

uv tool install creates a fully isolated environment managed by uv. The fastest option, and the installer auto-bootstraps uv when neither uv nor pipx is present.

bash
# Auto-detected if uv is installed (or bootstrapped if neither exists)
curl -fsSL https://raw.githubusercontent.com/MervinPraison/PraisonAI/main/install.sh | sh

# Force explicitly
PRAISONAI_INSTALLER=uv curl -fsSL https://raw.githubusercontent.com/MervinPraison/PraisonAI/main/install.sh | sh

# Or directly (no installer needed)
uv tool install praisonai

pipx

pipx install creates an isolated venv managed by pipx. Familiar to Python developers.

bash
# Auto-detected if uv is absent and pipx is installed
curl -fsSL https://raw.githubusercontent.com/MervinPraison/PraisonAI/main/install.sh | sh

# Force explicitly
PRAISONAI_INSTALLER=pipx curl -fsSL https://raw.githubusercontent.com/MervinPraison/PraisonAI/main/install.sh | sh

# Or directly (no installer needed)
pipx install praisonai

uvx (zero-install one-shot)

Runs PraisonAI in a temporary environment without a persistent install. Good for one-off commands.

bash
uvx praisonai "2+2"

Environment Variable

Force a manager without changing the install command:

bash
PRAISONAI_INSTALLER=pipx curl -fsSL https://raw.githubusercontent.com/MervinPraison/PraisonAI/main/install.sh | sh
PRAISONAI_INSTALLER=uv   curl -fsSL https://raw.githubusercontent.com/MervinPraison/PraisonAI/main/install.sh | sh

Valid values: uv, pipx. pipx errors if not installed; uv bootstraps itself when missing.

PATH Management

Both backends expose the CLI at ~/.local/bin/praisonai. The installer appends an idempotent block (grepped before writing) to your shell rc:

  • zsh → ~/.zshrc
  • bash → ~/.bashrc and the applicable login profile (~/.bash_profile → ~/.bash_login → ~/.profile)
  • fish → ~/.config/fish/config.fish
  • anything else → ~/.profile
bash
# bash / zsh
export PATH="$HOME/.local/bin:$PATH"
fish
# fish (fish_add_path when available, POSIX-safe fallback otherwise)
if type -q fish_add_path
    fish_add_path $HOME/.local/bin
else
    set -gx PATH $HOME/.local/bin $PATH
end

Uninstalling

Use the built-in self-management command — it removes any managed install via the detected manager.

praisonai uninstall

praisonai uninstall (or --yes for CI) removes the managed install cleanly


Related