Open source workflow engine

Fast and durable workflow orchestration, open and self-hosted

Define workflows in OSML — the Open State Machine Language — and run them on Statum: a journal-first, Postgres-backed engine that runs express workflows in-process and long-running ones as durable, crash-safe steps.

9
OSML state types
6
Task backends
2
Express & Standard modes

Everything you need to orchestrate work

A production-oriented engine with an open language, express or durable execution, and no vendor lock-in.

ƒ

OSML language

Task, Choice, Parallel, Map, Wait, Pass, Succeed, Fail and StartExecution — defined in portable JSON with a published JSON Schema.

Express & Standard

Express runs workflows in-process to completion — low latency, ideal for short-lived work. Standard steps through a durable Postgres queue with crash-safe recovery.

Journal-first

An append-only event journal is the source of truth. Execution state is a projection replayed from the journal — auditable for every mode, crash-safe for Standard.

Multiple task backends

Inline JavaScript (GraalVM), HTTP calls, Java handlers, task tokens, activities, and human approval — plus a plugin SPI.

Retry & Catch

Per-state retries with backoff and error catching, JSONPath and optional JSONata I/O, intrinsics, and cooperative cancellation.

Versioning & aliases

Publish new versions, pin aliases, run sync or async, and observe every transition with Micrometer/Prometheus metrics.

Try OSML in your browser

Edit a workflow, watch the diagram update live, and validate against the OSML schema. Connect a Statum engine to execute it end to end.

How it works

From a JSON definition to a fast or durable, observable execution in four steps.

1

Define OSML

Describe states, transitions, retries and error handling in JSON.

2

Register

Publish the machine to Statum over REST and get a versioned name.

3

Execute

Run express workflows in-process or start Standard executions on the durable step queue.

4

Inspect

Replay the journal, view history, and debug step by step in the self-hosted console.

Own your orchestration layer

Open State Machine is free and self-hosted. Run Statum next to your services and keep your workflows portable.