Skip to main content
Nothing sends a running agent new instructions. A person acts on a live run in two ways: answering a question the run asked, and control, taking the browser and handing it back.

Control

Asks for the wheel of a live run. The run finishes the step it is on, then holds with the browser still open, and its status becomes paused. pause.viewerUrl on the run is the player for that session: open it and press take control there to drive the page yourself. It is absent when the run was submitted with record: false. Hand the wheel back with control('release') and the agent resumes from whatever page you left it on, not from where it was. While you hold the wheel, whether after control('take') or by driving in the live viewer, the run bills browser time (1 credit a minute) and proxy usage only, with no model usage, until you hand it back. See pricing. Use it for a step you would rather do yourself, a login you will not automate, a form only you should complete, not to stop a run (that is agent.cancel).

Answer

When a run needs something only you know, it parks: its status becomes paused with pause.reason set to question, pause.question holding what it asked, pause.options the replies it suggests (any answer is accepted) and pause.expiresAt when it stops waiting. Answer it and the run carries on from where it stopped. A question nobody answers by pause.expiresAt is answered “nobody replied” and the run decides what to do without it.
A run that can pay may ask two structured questions, in pause.ask. An approval question (a purchase above your workspace’s approval amount) is answered with {"approve": true} or {"approve": false}; one nobody answers in time fails that purchase with approval_timed_out and nothing is bought. A secret question (a card, a billing profile or a security code) is never answered here: send the value as a run secret named pause.ask.for, and an answer carrying it is refused with secret_in_answer.
Control is the only way to redirect what a live run does. Nothing sends a running agent new instructions mid-task, cancel and resubmit for that.