OptionalactionRun this action once per iteration.
Path in the payload to the array to iterate over.
OptionalcontinueKeep going if an iteration fails (default: false).
OptionaldelayDelay between iterations, in milliseconds (default: 0).
OptionalexecutionOne at a time, or several at once (default: 'sequential').
OptionalindexVariable name for the loop index (default: "index").
OptionalitemVariable name for the current item (default: "item").
OptionalmaxCeiling on concurrent iterations when executionMode is 'parallel' (default: 10).
OptionalmaxMaximum iterations (undefined = 1000, 0 = unlimited, >0 = limit).
OptionalpromptA prompt run once per loop iteration.
OptionalsubRun this sub-agent once per iteration.
A ForEach step: run the body once per item in a collection.
This mirrors
ForEachOperationin @memberjunction/ai-core-plus field for field, on purpose. That interface is already the universal loop shape every agent type uses — flow agents convert their stored step configuration into it, loop agents receive it from the model. Defining a second, near-identical shape here is how the two would drift: a field added to one and not the other makes the compile silently lossy, and the loss shows up as a loop that ignores a setting its author set. Keep them identical; ifForEachOperationgains a field, add it here in the same edit.