# When Agents Need Human Wisdom - Introducing Human-In-The-Loop Support _Published on August 29, 2025 by Francesco Bonacci_ Sometimes the best AI agent is a human. Whether you're creating training demonstrations, evaluating complex scenarios, or need to intervene when automation hits a wall, our new Human-In-The-Loop integration puts you directly in control. With yesterday's [HUD evaluation integration](hud-agent-evals.md), you could benchmark any agent at scale. Today's update lets you _become_ the agent when it matters most—seamlessly switching between automated intelligence and human judgment.
## What you get - **One-line human takeover** for any agent configuration with `human/human` or `model+human/human` - **Interactive web UI** to see what your agent sees and control what it does - **Zero context switching** - step in exactly where automation left off - **Training data generation** - create perfect demonstrations by doing tasks yourself - **Ground truth evaluation** - validate agent performance with human expertise ## Why Human-In-The-Loop? Even the most sophisticated agents encounter edge cases, ambiguous interfaces, or tasks requiring human judgment. Rather than failing gracefully, they can now fail _intelligently_—by asking for human help. This approach bridges the gap between fully automated systems and pure manual control, letting you: - **Demonstrate complex workflows** that agents can learn from - **Evaluate tricky scenarios** where ground truth requires human assessment - **Intervene selectively** when automated agents need guidance - **Test and debug** your tools and environments manually ## Getting Started Launch the human agent interface: ```bash python -m agent.human_tool ``` The web UI will show pending completions. Click any completion to take control of the agent and see exactly what it sees. ## Usage Examples ### Direct Human Control Perfect for creating demonstrations or when you want full manual control: ```python from cua_agent import ComputerAgent from cua_agent.computer import computer agent = ComputerAgent( "human/human", tools=[computer] ) # You'll get full control through the web UI async for _ in agent.run("Take a screenshot, analyze the UI, and click on the most prominent button"): pass ``` ### Hybrid: AI Planning + Human Execution Combine model intelligence with human precision—let AI plan, then execute manually: ```python agent = ComputerAgent( "huggingface-local/HelloKKMe/GTA1-7B+human/human", tools=[computer] ) # AI creates the plan, human executes each step async for _ in agent.run("Navigate to the settings page and enable dark mode"): pass ``` ### Fallback Pattern Start automated, escalate to human when needed: ```python # Primary automated agent primary_agent = ComputerAgent("openai/computer-use-preview", tools=[computer]) # Human fallback agent fallback_agent = ComputerAgent("human/human", tools=[computer]) try: async for result in primary_agent.run(task): if result.confidence < 0.7: # Low confidence threshold # Seamlessly hand off to human async for _ in fallback_agent.run(f"Continue this task: {task}"): pass except Exception: # Agent failed, human takes over async for _ in fallback_agent.run(f"Handle this failed task: {task}"): pass ``` ## Interactive Features The human-in-the-loop interface provides a rich, responsive experience: ### **Visual Environment** - **Screenshot display** with live updates as you work - **Click handlers** for direct interaction with UI elements - **Zoom and pan** to see details clearly ### **Action Controls** - **Click actions** - precise cursor positioning and clicking - **Keyboard input** - type text naturally or send specific key combinations - **Action history** - see the sequence of actions taken - **Undo support** - step back when needed ### **Tool Integration** - **Full OpenAI compatibility** - standard tool call format - **Custom tools** - integrate your own tools seamlessly - **Real-time feedback** - see tool responses immediately ### **Smart Polling** - **Responsive updates** - UI refreshes when new completions arrive - **Background processing** - continue working while waiting for tasks - **Session persistence** - resume interrupted sessions ## Real-World Use Cases ### **Training Data Generation** Create perfect demonstrations for fine-tuning: ```python # Generate training examples for spreadsheet tasks demo_agent = ComputerAgent("human/human", tools=[computer]) tasks = [ "Create a budget spreadsheet with income and expense categories", "Apply conditional formatting to highlight overbudget items", "Generate a pie chart showing expense distribution" ] for task in tasks: # Human demonstrates each task perfectly async for _ in demo_agent.run(task): pass # Recorded actions become training data ``` ### **Evaluation and Ground Truth** Validate agent performance on complex scenarios: ```python # Human evaluates agent performance evaluator = ComputerAgent("human/human", tools=[computer]) async for _ in evaluator.run("Review this completed form and rate accuracy (1-10)"): pass # Human provides authoritative quality assessment ``` ### **Interactive Debugging** Step through agent behavior manually: ```python # Test a workflow step by step debug_agent = ComputerAgent("human/human", tools=[computer]) async for _ in debug_agent.run("Reproduce the agent's failed login sequence"): pass # Human identifies exactly where automation breaks ``` ### **Edge Case Handling** Handle scenarios that break automated agents: ```python # Complex UI interaction requiring human judgment edge_case_agent = ComputerAgent("human/human", tools=[computer]) async for _ in edge_case_agent.run("Navigate this CAPTCHA-protected form"): pass # Human handles what automation cannot ``` ## Configuration Options Customize the human agent experience: - **UI refresh rate**: Adjust polling frequency for your workflow - **Image quality**: Balance detail vs. performance for screenshots - **Action logging**: Save detailed traces for analysis and training - **Session timeout**: Configure idle timeouts for security - **Tool permissions**: Restrict which tools humans can access ## When to Use Human-In-The-Loop | **Scenario** | **Why Human Control** | | ---------------------------- | ----------------------------------------------------- | | **Creating training data** | Perfect demonstrations for model fine-tuning | | **Evaluating complex tasks** | Human judgment for subjective or nuanced assessment | | **Handling edge cases** | CAPTCHAs, unusual UIs, context-dependent decisions | | **Debugging workflows** | Step through failures to identify breaking points | | **High-stakes operations** | Critical tasks requiring human oversight and approval | | **Testing new environments** | Validate tools and environments work as expected | ## Learn More - **Interactive examples**: Try human-in-the-loop control with sample tasks - **Training data pipelines**: Learn how to convert human demonstrations into model training data - **Evaluation frameworks**: Build human-validated test suites for your agents - **API documentation**: Full reference for human agent configuration Ready to put humans back in the loop? The most sophisticated AI system knows when to ask for help. --- _Questions about human-in-the-loop agents? Join the conversation in our [Discord community](https://discord.gg/cua-ai) or check out our [documentation](https://cua.ai/docs/cua/guide/advanced/human-in-the-loop)._