How browser agents work
At their core, browser agents are LLMs in a loop with tools that allow them to interact with the page. You give them a user prompt and they work to accomplish the task.
A typical browser agent flow

Browser agent context at a given step
Agent types
Agents can be eitherSingle Agent
or Multi-Agent
. Multi-Agents
are useful in long-horizon, complex tasks. Message us on Slack to help you set up your first Multi-Agent
system. Read our blog on multi-agent systems if you’d like to learn more about our approach.
Most automations only require sequences of Single Agents
.
Available tools
In the Simplex agent editor, you need to explicitly set the tools an agent can access. This constrains agents so they’re less likely to make incorrect tool calls. For example, if you’re attempting to fill out a form using a form filling agent you created, and you know your agent is already on the form page when it starts in the workflow, your agent is far more likely to simply fill out the form. Custom tools are available for Simplex Growth customers — contact us on Slack to get started.Recommendations
Many legacy portals take a long time to load. In this case, includewait_for_seconds
, so the agent can wait for the page to fully load
before having to act on the page.
Use type_text
for filling out input fields. Use send_keys
for special characters inputs like Ctrl+C
or Alt+A
.
Tool Call | Description |
---|---|
click_element | Clicks on a specified element on the page |
type_text | Types text into an input field or text area |
wait_for_seconds | Pauses execution for a specified number of seconds |
go_back | Navigates to the previous page in browser history |
reload_page | Refreshes the current page |
press_enter | Simulates pressing the Enter key |
switch_tab | Switches between browser tabs |
scroll_down | Scrolls down on the current page |
scroll_up | Scrolls up on the current page |
send_keys | Used for special characters |
scroll_to_text | Scrolls the page until specified text is visible |
get_current_time | Returns the current system time |
get_downloaded_files | Lists files downloaded during the session |
store_data | Saves data to browser storage for later retrieval |