Docs / Reference

Steps and connections

Triggers

Kind (trigger.kind)Fields
node_event — When something happensworkspaces (list), node_types (list), event_kinds (Created, Updated, Deleted), paths (globs; ** crosses folders), property_filters (a property → value or { $eq, $ne, $in, $exists, $gt, $lt } map, matched before a run exists), ignore_automation_writes (boolean).
schedule — Before or after a dateanchor (the subject set: self, parent or a reference over a workspace, path glob and type filter), the date property, offset_days, window_hours, timezone.
cron — On a repeating schedulecron (five fields), timezone.
http — When something calls this URLNone. The address is minted on first compile and shown in the editor; the request body is the run’s input and its node_path, when present, becomes the subject.
manual — Only when I run itNone. Run now asks for a subject.

A condition on the automation (REL) runs after a run has started; prefer the trigger’s own filters.

Steps

Every step has uuid (its id), label, and optionally condition (a REL guard evaluated before the step runs) and on_error.

Element typeFields
studio:StepFunction — Run a functionfunction_ref (envelope), arguments (object; templates allowed in any string).
studio:StepAgent — Ask an agentagent (envelope), instruction (template), output_schema (JSON schema object), output_key; decide + min_confidence; tools + max_iterations; compete + competitors (list of envelopes) + referee (envelope) + referee_instruction + max_rounds.
studio:StepHumanTask — Ask a personassignee_mode (specific, or a resolver), assignee (envelope into raisin:access_control), task_type (action, review, input, approval), prompt (template), options (list of { label, value }), due_in_hours.
studio:StepChat — Talk it throughagent, participant_mode, participant, system_prompt (template), max_turns, allow_ai_end, output_schema.
studio:StepWebhook — Call a URLurl, method, headers, body (object or template).
studio:StepWait — Waitduration_seconds or until (template resolving to a date).

References are envelopes: { raisin:ref: <path or id>, raisin:workspace: <workspace> }.

Connections

kindFieldsFollowed when
nextlabelAlways. Several out of one step run in parallel.
conditioncondition (REL) or label (when the source decides)The condition is true, or the agent chose this label.
errorThe step failed. Compiled with no hidden retries in front of it.
timeoutThe step’s deadline passed.

Every connection has id, source and target (step ids).

Conditions

Conditions are REL expressions over the run’s variables:

steps.review.action == 'send'
steps.classify.structured_output.priority == 'urgent' && steps.read.awaiting_reply
visits.draft < 3
steps.__subject.subject.status != 'archived'

Operators: ==, !=, <, <=, >, >=, &&, ||, !, string and number literals, property access with .. A property that does not exist is null; compare against it rather than calling methods on it.

Shapes

You wantDraw
A branchSeveral condition connections out of one step; a next connection as the fallback.
Parallel workSeveral next connections out of one step.
A joinSeveral connections into one step. It runs once every incoming branch has arrived.
A loopA condition connection back to an earlier step, bounded with visits.<id> < N.
An error pathAn error connection; add a timeout one beside it for a step that may never answer.
A retry with backoffAn error connection into a Wait step, then a connection back, bounded by visits.

What the health check refuses or warns about

CodeMeaning
decide_no_branches (error)A step that chooses has no condition connections to choose from.
decide_one_branch (warning)Only one branch — the agent has nothing to decide.
guard_on_failure_edge (error)A condition on an error or timeout connection; failure paths are unconditional.
error_edge_without_timeout (warning)A function step recovers from failure but not from never answering.
timeout_edge_no_deadline (warning)A person step has a timeout path but no deadline.
chat_no_participant (error)A conversation with nobody to talk to.
compete_too_few, compete_no_referee (error)A competition needs two competitors and a referee.
unbounded cycle (warning)A loop with no condition connection on it.

Errors stop compilation; warnings compile.

Pilot documentation. Studio is in a partner pilot. Screens and YAML shown here are current as of the version noted on each page; tell your Maravilla contact when something does not match what you see.