Skip to content
Technical preview. This site is published for review. Everything on it, including the API, tokens and module protocol, is subject to change.
Status and roadmap

Status and roadmap

AutoFlow is in early access for GitLab teams: a workflow starts through the AutoFlow gRPC API, and there is no beta or GA label yet. The end state is an AutoFlow-only Relay deployed on Theseus, first for GitLab.com and later for self-managed Kubernetes.

Available today

AreaStatusNotes
gRPC API: StartWorkflow, GetWorkflow, CancelWorkflow, SendToWorkflowChannelAvailablePolling GetWorkflow is the only way to observe progress; there is no callback or stream.
Starlark surface: main(w, ...), gather, select, channel, sleep, timer, poll, derived_action, struct, module, time, json, mathAvailableSee Starlark.
Durable timers, channels, poll, child workflowsAvailableA waiting workflow holds no resources.
gitlab module: call_api, post_valueAvailableCalls the GitLab REST API; authentication comes from the headers the workflow passes.
policy module: evaluatePartialReturns ALLOW until a policy source is wired, and needs an AutoFlow build that includes the policy engine.
event module: emitPartialPublishes CloudEvents; loads only when Relay’s events platform is enabled.
gitlab-function module: runAvailableThe deployment functions module (builtin:// functions); its GitLab token comes from AutoFlow’s environment.
autoflow CLI: run, get, cancelAvailableSubmits a workflow definition to a running AutoFlow instance and waits for the result.
Limits100 KiB per workflow definition, 30 days lifetime by default and 60 at most, 10,000 channel values per workflow. See Limits.

In design

AreaStatusNotes
A new shape for the Workflow and Execution APIsPlannedProposed in ADR 0011; the current RPCs, messages and tokens are subject to change.
Third-party remote modulesPartialThe protocol exists on the AutoFlow side: ModuleAPI and ModuleTunnelAPI are gRPC and protobuf, so a module can be written in any language, and the Go SDK in pkg/autoflow implements them. Credential issuance for module agents does not exist yet, so new capabilities ship compiled in, built with the SDK.
Log streaming and a UIPlannedprint output goes to AutoFlow’s log; there is no user-facing stream or workflow view.
Local try-out via CaproniPlannedComing as part of AutoFlow on Theseus.
AutoFlow-only Relay on Theseus and RunwayPlannedOne kas process with only the AutoFlow module, deployed from a chart: the caproni rig first, then Runway staging, production on GitLab.com and self-managed Kubernetes.

The Theseus epic states one constraint openly: Theseus reaches self-managed customers only through Kubernetes, so a Linux package installation without a cluster gets no AutoFlow through this path. Relay itself stays where it is today for its other modules.

Where it runs today

AutoFlow keeps workflow state in PostgreSQL 17 (one central database plus one or more workflow databases, no extensions, no superuser) and coordinates its instances through Redis. A workflow starts only through the gRPC API, called by GitLab features and by the autoflow command line tool. Workflow data is retained for 90 days.

Last updated on