Some sites block automation, require login, show CAPTCHA, or need human review. A good browser-agent workflow reports that state clearly.
What the agent should do
- Return the blocker status.
- Include the visible page evidence.
- Stop before out-of-scope actions.
- Ask for confirmation when configured.
- Avoid inventing missing data.
CLI review path
web agent \
--debug-url \
--approval ask \
--url https://www.nhtsa.gov/recalls \
--allow-domain nhtsa.gov \
"Search recalls for a sample 2020 Toyota Camry query. Do not enter a real VIN or personal data."
SDK handling
const result = await agent.run({
startUrl: "https://www.nhtsa.gov/recalls",
goal: "Search recalls for a sample 2020 Toyota Camry query. Do not enter a real VIN.",
});
if (result.status === "blocked") {
await queueReview({
browserId: result.browserId,
summary: result.text,
steps: result.steps,
});
}
Do not document CAPTCHA solving as the happy path. If a run needs human or provider-specific resolution, make that review step explicit.