Quick Start

Install WOML, write one readable workflow, validate it, and create your first durable run.

Prerequisites

Before installing WOML, make sure your environment has:

  • Bun 1.3.14 or later for authored JavaScript and CLI runtime support.
  • Linux, macOS, or Windows with a supported prebuilt native engine target.
  • A writable project directory for normal .woml/ runtime state.

Install WOML

WOML is distributed as the global woml-cli package. Install it with one package manager:

Terminal
npm install --global woml-cli
# or
bun add --global woml-cli
# or
pnpm add --global woml-cli

Verify the installation:

Terminal
woml --version
woml --help

Create a workflow

Create hello.woml with a manual trigger and two sequential steps:

WOML
<woml>
  <workflow id="hello" name="Hello WOML" version="1.0.0">
    <triggers>
      <manual id="start" />
    </triggers>

    <steps>
      <step id="prepare" name="Prepare greeting">
        <script>
          return { name: context.payload.name ?? "World" };
        </script>
      </step>

      <step id="greet" name="Build message">
        <script>
          return { message: `Hello ${context.steps.prepare.name}` };
        </script>
      </step>
    </steps>
  </workflow>
</woml>

The prepare result is recorded durably under context.steps.prepare. The greet step reads that result without relying on mutable process memory.

Validate the workflow

Run the compiler without activating triggers or executing scripts:

Terminal
woml check hello.woml

Run the workflow

Activate the workflow:

Terminal
woml run hello.woml

Press Enter to create a manual run. WOML stays active so the trigger can create additional runs; press Ctrl+C to stop the process.

Next steps