Pyrula
Pyrula runs durable workflows and LLM agents that survive crashes and resume where
they left off. Over Kafka, an agent’s output and its offset commit can be bound into
one transaction for read-process-write pipelines. Underneath
is a fast, typed functional core (Either, Option, Try, immutable IList/IMap,
Rust-backed serde) that everything is built on.
Durable, replayable, exactly-once. Three commands to a running workflow you can watch, with no broker, no API key, and no account:
pip install "pyrula-workflows[ui]"pyrula initpyrula dev --openEach piece ships as its own package and depends on the core, so you install only what you use. See Install for the full set.
Core
Primitives
Rust-backed Either, Option, Try, immutable IList/IMap, serde.
Durable
Workflows
Append-only run streams. Replay after a crash, resume where you left off.
Build
Agents
The @agent / @tool model, streaming, and an HTTP surface.
Stream
Kafka
confluent-kafka semantics with explicit timeouts and EOS.
The Quickstart walks through what those three commands write and what the run’s event stream shows you.