Skip to main content
Loops support two HITL modes: start confirmation (pause before the first iteration) and iteration review (pause between iterations for human feedback). All HITL settings are configured via HumanReview.

Start Confirmation

When requires_confirmation=True, the loop pauses before executing:
  • Confirm: Execute the loop iterations
  • Reject: Skip the entire loop

Parameters

Loop Behavior

The confirmation happens once before the loop starts. Individual iterations do not pause for confirmation. For per-iteration pauses, see Iteration Review.

Iteration Review

Set requires_iteration_review=True to pause between loop iterations. The workflow pauses after each non-final iteration that would otherwise continue. The reviewer can accept the result (stopping the loop) or reject to run another iteration.
In Agno v2.7.2, resuming a rejected iteration review assumes that each loop iteration contains one child step. Use iteration review with a single child Step until multi-step resume grouping is supported.

Iteration Review Parameters

Iteration Review Behavior

Iteration review requirements appear in run_output.steps_requiring_output_review, the same property used for step output review.
requires_iteration_review is only supported on Loop. Passing it to Step or Router raises a ValueError.

With end_condition

The end_condition function receives the current iteration’s outputs and returns True to stop the loop. Confirmation happens before any iteration:

Timeout

timeout and on_timeout only apply to Step confirmation and output-review pauses. Loop pauses wait until they are resolved. See Timeout.

Streaming

Handle loop HITL in streaming workflows:

Developer Resources