Skip to main content
Human steps pause a workflow until a manual decision or additional information is provided. Declare them with createHuman and reuse them across workflows.
  • The output of fetchDraftApplication is injected into manualReview (output.current) and delivered to the client through pendingHuman.output.
  • The human response becomes the input of finalizeDecision, which can also access the original data via context.initialInput.

Execution cycle

run.resumeWithHumanInput validates the response using the human step schema and resumes the workflow until completion.

Best practices

  • Use stable identifiers for human steps—workflow resumes rely on them.
  • Send rich metadata in output to simplify UI rendering (summaries, links, stats).
  • Record step:human:* events in your observability platform to track turnaround times.