---
title: What is human in the loop?
description: An agent stops for a person where it should. How Hamloy does it with questions, requests and assumed answers, without you watching a terminal.
url: https://hamloy.com/docs/human-in-the-loop
---

[Docs](https://hamloy.com/docs)

# What is human in the loop?

An agent stops for a person where it should. How Hamloy does it with questions, requests and assumed answers, without you watching a terminal.

"Human in the loop" means an agent's work has places where a person decides or acts, and the agent stops there instead of going on alone.

The hard part is where. An agent that asks about everything needs you at the terminal all day. An agent that asks about nothing decides what was yours to decide: which payment provider, whether Android matters, what the app is called.

## Two kinds of stop

Hamloy splits them, because they need different things from you:

- **A decision** is a [question](https://hamloy.com/docs/questions). The agent gives the options, with the one it recommends, and the reason. You pick one, or write your own.
- **Something only you can do** is a [request](https://hamloy.com/docs/requests): an account, a key, a payment, a deploy. The agent writes the exact steps, and the environment variable or name to use. You do it and tick it.

Both go on lists you see on the board, from any computer or your phone's browser. You answer when you look, not when the agent happens to stop.

## The agent doesn't wait idle

A question doesn't have to stop the work:

1. The agent [adds](https://hamloy.com/docs/tool-add) the question and a task that [waits on](https://hamloy.com/docs/waits-on) it.
2. If it can't wait, it [assumes](https://hamloy.com/docs/tool-assume) the option it recommends, and goes on. The question stays open for you, marked assumed.
3. When you answer, the same option confirms it. A different one opens again every task that was done on the assumption, with a note to redo it.

What the agents read when you overturn an assumption:

```
Hamloy news (what changed since you last looked):
- The human answered Q-229x "When does a day end?": At midnight
- The human opened B-lm4l "Count late check-ins for the day before" again: Q-229x was answered "At midnight", not the assumed "At 4am, for night owls". Redo it for the real answer.
```

## Answers reach every agent

You can answer on the board with one click, or tell an agent in chat, which writes it down with [answer](https://hamloy.com/docs/tool-answer). Either way it is signed as yours, and every agent working on the project hears it under its next tool reply, not just the one that asked. Work that waited on it is free:

```
⏺ hamloy - Record an answer (MCP)(key: "Q-q0ae", answer: "2", why: "No server to pay for while it's iPhone only.")
  ⎿ Q-q0ae@3 answered: CloudKit: free, Apple only
     no longer waiting on it: B-xtiv
```

## The rules agents are given

Every agent's first reply carries the same rules. Two lines of them are about you:

```
- Requests are what only the human can do (accounts, keys, money, deploys), with exact steps. Questions are the human's decisions, with options and yours recommended. Work that can't go on before one is done or answered waits on it (needs).
- When the human says who an item is for, set its for field: you for the human (their own work stays a task), or an agent by name (claude, codex). Make a list or a view only when the human asks for one.
```

And the `answer` tool tells the agent never to pick an answer itself. An agent that tries to claim an item for you is refused, and told to take it only if you asked it to.

## Seeing what waits for you

On the board, For you gathers what waits for you. In Claude Code, [the program](https://hamloy.com/docs/the-program) can show it in the status line, beside your session:

_You answer one of two questions on the board. Claude Code's status line goes from 2 for you to 1. The status line is opt-in, and Claude Code's alone._

There is no push notification and no phone app. You look when it suits you, and the agents carry on with what doesn't need you in the meantime.
