Installation
The core package gives you the primitives. Each runtime is a separate package that depends on the core, so you install only what you use.
pip install pyrulafrom pyrula import Either, Option, TryRuntime packages
Section titled “Runtime packages”| Package | Install | Import |
|---|---|---|
| Workflows | pip install pyrula-workflows | pyrula.workflows |
| Agents | pip install pyrula-agents | pyrula.agents |
| Kafka | pip install pyrula-kafka | pyrula.kafka |
| Cloud client | pip install pyrula-cloud-client | pyrula.cloud |
Installing any of these pulls in pyrula. The cloud client needs no code. See
Connect to Pyrula Cloud.
pyrula dev, the local dev server and run browser, needs the web stack. It ships as
an extra so a worker or a pyrula db install does not carry it:
pip install "pyrula-workflows[ui]"pyrula-agents already depends on it, so the extra is only needed for workflows.
Install everything
Section titled “Install everything”pip install 'pyrula[all]'Pulls the workflow, agent, Kafka, and cloud-client packages in one step.
Requirements
Section titled “Requirements”Python 3.11 or newer, and nothing else to try it. The Quickstart runs against an in-memory store with no broker, no API key, and no account.
For runs that outlive the process you need Valkey 7.4+ or Redis 7.0+. Event archival is optional and uses Postgres. Neither is required until you want durability across restarts.
Durability config
Section titled “Durability config”Workflows read their store and archival targets from the environment:
export PYRULA_VALKEY_URL=redis://localhost:6379export PYRULA_POSTGRES_DSN=postgresql://user:pass@localhost:5432/pyrula_eventsThe redis:// scheme covers both Valkey and Redis. Full config lives under
Workflows.
Check it
Section titled “Check it”python -c "from pyrula import Either, Option, Try; print('ok')"Next: the Quickstart.