SpolettaDocs

The OPM language

Processes

A process is something that happens: a step of the flow. Every process has a name and a kind, which says who or what carries it out. Its icon colour on the board tells the kinds apart.

On the boardCarried out byTypical use
FixAgent · default model
An AI coding agent in the worker, optionally in git checkouts of the flow’s repositories and with MCP servers.Write, analyse and fix code; research; draft; decide; review.
Fetch ticketScript
A bash script in the worker, with curl and jq.Call an API, run a build, transform JSON: the same way every time.
ApproveHuman
A person, in the Spoletta UI.Approve or send back work; fill in what a run starts from.
FetchSentry · shop
Spoletta itself, calling Sentry’s issues API.Fetch the issues a flow works through.
Each exceptionFlow
A board of processes of its own, zoomed into.Group steps; run steps once per item of a list.
Tell the teamProcedure
Another flow, a procedure, run as a run of its own.Reuse a flow across jobs.

Change a process's kind under Type in its settings: Agent, Script, Human, Flow, Procedure or Sentry. Links that no longer fit the new kind are dropped. A flow process is drawn with a double border, a procedure with a dashed one, as it runs a flow kept elsewhere.

What a process does to objects

A process acts only through its links. It takes objects (input links, into the top of its card) and yields them (output links, from the bottom). What it takes, it is given as input; what it yields, it must hand back. The exact meaning of each link is on the next page, Procedural links.

Settings every process shares

SettingApplies toEffect
Needs (quorum)every kind but humanRun once this many of its inputs exist and hold their conditions, rather than all of them. See Branches.
Timeout (s)agent, script, SentryThe step fails after this many seconds (1 to 86400).
Retriesagent, script, SentryHow many more times a failed step is tried (0 to 5), each try a step of its own.
Roundsagent reviewersHow often it may send work back before that fails it (1 to 20, default 3). See Review loops.

Each kind has settings of its own (an agent's prompt and model, a script's code, a Sentry query): see Scripts, Sentry and tools.

OPL

Fix is an agent process, which an AI agent carries out.

Fetch ticket is a script process.

Approve is a human process, which a person carries out.

Each exception is a flow process, made of processes of its own.

Fetch is a Sentry process, which fetches issues.

Tell the team is a procedure, which runs the flow Announce change.

Spoletta · spoletta.comBusiness processes, drawn and run.