Skip to main content
You will start the server, apply a session that contains one workflow, start that workflow with some input, and read the result.

Before you begin

  • A JDK, version 25, to run the server from source
  • git
  • curl (any HTTP client works; the examples show plain HTTP requests as well)
There are no packaged releases yet. A native binary and a container image can be built from source, see Deployment.

1. Run the server

The server listens on http://localhost:8080, on loopback only. Open that address for the web UI, or http://localhost:8080/swagger-ui.html for interactive API documentation.

2. Apply a session

A session groups workflows. This one holds a single workflow that reads a name from the start request and builds a greeting.
With curl, save the body as session.json and run:
The workflow has one node of each role: API_TRIGGER receives the payload you send when you start it, MAPPER builds a new record from it, and CONSOLE_TERMINAL ends the branch by logging what arrives.
Sessions are held in memory by default, so apply them again after a restart. See Persistence to keep them on disk or in PostgreSQL.

3. Start the workflow

The server answers 202 Accepted with an execution id in data.executionId. The execution runs in the background.

4. Watch it and read the result

Poll the status:
The run has a status and every node has one. SUCCESS means the execution finished normally. To follow a run live instead of polling, open the status stream, which uses server-sent events:

Read the logs

The log stream shows what each node produced as it ran:

Read the result

Logs are text for people. The result is what reached the terminal node, kept whole and typed:
Responses show the fields used here; the server returns more, such as timestamps and cursors.

What just happened

  1. Applying the session validated and stored the workflow.
  2. Starting it checked the limits, took a slot and returned an execution id.
  3. The trigger emitted one message carrying your payload. The mapper derived a new message from it, and the terminal received it as the result.
  4. Every step produced events that the status, log and result streams carried to you.

Next steps

More examples

Ten workflows for CI, quality gates, data pipelines, retries, notifications and LLM agents.

Connect an AI agent

Point Claude or any MCP client at /mcp and let it create and run workflows.

Run operating-system commands

The process plugin refuses every command until you allow-list it.

Understand the model

Sessions, nodes, ports, messages and executions in depth.

Explore the REST API

Guides for every endpoint, plus an interactive endpoint reference.