← Glossary

Human-in-the-loop gate

A workflow step that pauses a run in a review queue for a human decision before the run continues.

Last verified

A human-in-the-loop gate is a step in a deterministic workflow that pauses execution and waits for a person to act before the run continues. In Vocion, this is the approve step type on a workflow.yaml manifest (workflows/<slug>/workflow.yaml).

How it works

An approve step has a prompt (what the reviewer sees) and an optional reviews field naming the earlier step whose output is being judged. When the workflow runner reaches an approve step, the run stops and appears in the review queue until a human approves, rejects, or asks for a revision. Nothing downstream of the gate executes until that decision is recorded.

A related step type, ask, pauses for a human to supply text rather than judge existing output — for example, pasting a call transcript. If an ask step's default field interpolates to a non-empty value, the step completes automatically and never pauses, so the same workflow can serve both an automated caller and a person starting it by hand.

Example

steps:
  - name: transcript
    type: ask
    prompt: Paste the discovery call transcript.
    default: '{{input.transcript}}'
  - name: review-draft
    type: approve
    prompt: Approve the follow-up email before it sends.
    reviews: transcript
  - name: send
    type: action
    action: gmail.send
    input:
      body: '{{steps.review-draft.output.body}}'

Here, review-draft is the human-in-the-loop gate: the send action cannot run until a person approves the draft the review-draft step produced.

Why it matters

A gate is the difference between an agent that drafts and an agent that acts. Putting the pause in the workflow definition — rather than bolting a review step onto an already-autonomous agent — means the gate is versioned with the rest of the procedure, shows up in the same audit trail as every other step, and cannot be silently skipped by a code change elsewhere.