> ## Documentation Index
> Fetch the complete documentation index at: https://agno-v2-codex-docs-audit-20260719-0149.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Human In The Loop

> Browse agent examples for confirmation, user input, external execution, and approval-backed HITL.

| Example                                                                                                                   | Description                                                                                                                                          |
| ------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Agentic User Input](/examples/agents/human-in-the-loop/agentic-user-input)                                               | Let the agent request missing fields at runtime with UserControlFlowTools, then continue the run.                                                    |
| [Confirmation Advanced](/examples/agents/human-in-the-loop/confirmation-advanced)                                         | Confirm or reject tool calls across a custom HackerNews tool and WikipediaTools in one run.                                                          |
| [Confirmation Required](/examples/agents/human-in-the-loop/confirmation-required)                                         | Gate a custom HackerNews tool behind requires\_confirmation and resume the paused run with agent.continue\_run().                                    |
| [Confirmation Required MCP Toolkit](/examples/agents/human-in-the-loop/confirmation-required-mcp-toolkit)                 | Require confirmation for an MCP server tool and resume an async streamed run after approval.                                                         |
| [Confirmation Toolkit](/examples/agents/human-in-the-loop/confirmation-toolkit)                                           | Gate a toolkit's web\_search tool behind user confirmation with requires\_confirmation\_tools.                                                       |
| [External Tool Execution](/examples/agents/human-in-the-loop/external-tool-execution)                                     | Pause the run for a shell tool marked external\_execution, execute it yourself, and continue with the result.                                        |
| [User Input Required](/examples/agents/human-in-the-loop/user-input-required)                                             | Mark a tool with requires\_user\_input so the run pauses to collect the to\_address field.                                                           |
| [Approval Async](/examples/agents/approvals/approval-async)                                                               | Async approval-backed HITL: @approval with async agent run.                                                                                          |
| [Approval Basic](/examples/agents/approvals/approval-basic)                                                               | Approval-backed HITL: @approval + `@tool(requires_confirmation=True)` with persistent DB record.                                                     |
| [Approval External Execution](/examples/agents/approvals/approval-external-execution)                                     | Approval + external execution HITL: @approval + `@tool(external_execution=True)`.                                                                    |
| [Approval List And Resolve](/examples/agents/approvals/approval-list-and-resolve)                                         | Full approval lifecycle: pause, list, filter, resolve, delete.                                                                                       |
| [Approval Team](/examples/agents/approvals/approval-team)                                                                 | Three patterns for team approvals: tool on the team, on the member, or on both.                                                                      |
| [Approval User Input](/examples/agents/approvals/approval-user-input)                                                     | Approval + user input HITL: @approval + `@tool(requires_user_input=True)`.                                                                           |
| [Audit Approval Async](/examples/agents/approvals/audit-approval-async)                                                   | Async audit approval: `@approval(type="audit")` + `@tool(requires_confirmation=True)` with async.                                                    |
| [Audit Approval Confirmation](/examples/agents/approvals/audit-approval-confirmation)                                     | Audit approval with confirmation: `@approval(type="audit")` + `@tool(requires_confirmation=True)`.                                                   |
| [Audit Approval External](/examples/agents/approvals/audit-approval-external)                                             | Audit approval with external execution: `@approval(type="audit")` + `@tool(external_execution=True)`.                                                |
| [Audit Approval Overview](/examples/agents/approvals/audit-approval-overview)                                             | Compare pre-execution @approval records with audit-type approvals logged after the tool runs in SQLite.                                              |
| [Audit Approval User Input](/examples/agents/approvals/audit-approval-user-input)                                         | Audit approval with user input: `@approval(type="audit")` + `@tool(requires_user_input=True)`.                                                       |
| [Confirmation with Session State](/examples/agents/human-in-the-loop/confirmation-with-session-state)                     | HITL confirmation where the tool modifies session\_state before pausing.                                                                             |
| [Mixed External and Regular Tools](/examples/agents/human-in-the-loop/mixed-external-and-regular-tools)                   | Combine a regular tool with an external\_execution tool; the agent auto-runs one and pauses for the other.                                           |
| [User Feedback (Structured Questions)](/examples/agents/human-in-the-loop/user-feedback)                                  | Pause a trip-planning agent with UserFeedbackTools and collect answers to multiple-choice questions.                                                 |
| [Approval Post Hook](/examples/agents/approvals/approval-post-hook)                                                       | Demonstrates the post-hook reading the resolved approval record from run\_output.metadata\["approval"] after a paused run resumes via DB resolution. |
| [Member-Level Approval (Case 2)](/examples/agent-os/approvals/team/member-agent-level-approval)                           | Approval tool lives on the member agent.                                                                                                             |
| [Both Member + Team Level Approval (Case 3)](/examples/agent-os/approvals/team/team-and-member-agent-both-level-approval) | Approval tools on both the member agent AND the team.                                                                                                |
