Expand description
An agent’s browser pane asking the human for something: a hand-off (sign in, a CAPTCHA, anything the agent mustn’t do) or approval of a committing action (submit, send, pay, delete) (docs/specs/SPEC_AGENT_DRIVEN_BROWSER_PANES_2026_10_07.md §5.2, §5.4).
The request is shown as a banner in the pane through the block’s
browser:attention meta key. The human’s answer comes back only through
the CEF host (/api/v1/host/browser_attention, authenticated with the
host’s IPC token, which agents never see): an agent can’t answer its own
request, even though it holds the instance auth key every other route
trusts.
Structs§
- Pending 🔒
- Waiting 🔒
- A request that is still up. Dropping it takes the request down: it leaves the pending map, which unlocks the pane, and the banner is cleared. That happens on every path, including when the waiting HTTP handler is cancelled because its caller went away.
Enums§
Constants§
- ATTENTION_
META_ 🔒KEY - Block meta key the browser pane’s banner reads.
Functions§
- ask 🔒
- Show
payloadinblock_id’s banner and wait for the human, up totimeout. One request per pane at a time. The pane stays locked until the returnedWaitingis dropped, so a caller that acts on a Yes holds it until that action is done. - asking 🔒
- The panes with a request of
kindup. - cancel_
for 🔒 - Answer every request waiting on
block_idwith Cancelled: the user took the pane over, which ends whatever the agent was waiting for there. - clear_
banner_ 🔒if - Clear
block_id’s banner if it is still requestid’s. - clear_
stale 🔒 - The human answered a banner srv has no request for (srv restarted, so its requests are gone but the block meta persisted): take that banner down, so its buttons don’t sit there doing nothing. Host-authenticated callers only.
- pending 🔒
- resolve 🔒
- Resolve request
idonblock_idwith the human’s answer. Called only by the host-authenticated route. - waiting_
on_ 🔒user - What
block_idis waiting on the human for, if anything. While it waits, the agent’s tools on that pane are refused: during a hand-off so it can’t watch what the human types (§5.2), during an approval so it can’t change the form the human is reading (§5.4).