Skip to main content
Routers support three HITL modes: user selection (user chooses routes), confirmation (user approves automated routing), and output review (review router output after execution). HITL settings are configured via HumanReview. The one exception is allow_multiple_selections, which is set directly on the Router.

User Selection

Let users choose which route(s) to execute. The router pauses and presents available choices.

Parameters

Selection Methods

Multiple Selection

Allow users to select multiple routes. Selected routes execute in sequence.
Handle multiple selections:
The selected steps execute in the order they were selected. Unknown names are skipped with a warning.

Confirmation Mode

Confirm automated routing decisions. A selector function determines the route, but the user must approve before execution.
Handle confirmation:

Confirmation Parameters

Output Review

Review a router’s output after execution. If rejected, the reviewer can pick a different route. Set on_reject=OnReject.retry to re-route on rejection. See the dedicated Output Review page for full details.
The router executes the selected branch, then pauses for review. On rejection with OnReject.retry, the workflow re-pauses for route selection so the reviewer can pick a different branch.

Output Review Parameters

Comparing HITL Modes

Use user selection when the user should decide the path. Use confirmation when the system decides but needs human approval. Use output review when the result matters more than the route chosen.

Timeout

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

Streaming

Handle router HITL in streaming workflows:

Developer Resources