Use case · LlamaIndex

Human-in-the-loop approvals for LlamaIndex agents

LlamaIndex agents and query engines can call tools that change the world. Gate the risky ones with a single gate.require() so a human approves before the tool runs, and every decision lands in a tamper-evident audit trail.

await gate.require("record.delete", { id });
// the agent tool waits for approval, else fails closed

Where it fits

  • Gate a tool in a LlamaIndex agent or workflow
  • Approve only high-risk actions by policy
  • Prove who approved each tool call over data

Frequently asked questions

How do I add human approval to a LlamaIndex agent?+

Call gate.require() inside the tool the agent invokes. The agent step blocks on the human verdict, proceeds on approve, and fails closed on reject or timeout — with a tamper-evident record and no custom callback plumbing.

Does it work with LlamaIndex Workflows?+

Yes. Because Seal is a plain async call, you can place it inside a workflow step or an agent tool wherever an irreversible action happens.