Overview
Tool Name
Purpose
The browser_tools group lets Genesis interact with live web UIs. Use it when a workflow needs to open a page, inspect the current layout, click controls, type into fields, capture screenshots, or step through a multi-action browser flow on an external site or an internal Genesis page.Use browser_tools for interactive UI work. For simple page reads, API calls, or file downloads, use Web Access Tools instead.
browser_open
returns an unavailable error. Related web actions and non-browser alternatives
are described in Web Access Tools.
On Genesis Desktop, the first browser_open or app screenshot/runtime inspection
starts a one-time browser-tools download when needed. This also applies to
CAPTURE or INSPECT_RUNTIME_STATE, including captures inside REVIEW or
START. The download is about 140–160 MB and can take up to 150 seconds. If a
response reports that installation is still in progress, relay the status and
repeat the action in about a minute. If installation fails, relay the reason;
the user can retry with Install in Settings → Advanced → Browser tools.
Key Features
Open live browser sessions
Start a persistent browser session against a full external URL such as
https://example.com or an internal Genesis path such as /apps/my-app.Inspect accessible page snapshots
Return a compact text snapshot with headings, landmarks, and interactive elements labeled with
el_* IDs for follow-up actions.Click and type into live pages
Interact with buttons, links, inputs, selects, and text areas by current element ID or matching text.
Capture screenshots when needed
Add
include_screenshot=True to capture the current viewport during browser_snapshot.Close sessions explicitly
End the browser session when the task is complete to release resources.
Input Parameters for Each Function
browser_open
browser_snapshot
browser_click
browser_type
browser_close
Workflow/How It Works
- Call
browser_openwith an external URL or an internal Genesis path. - Review the returned
snapshotand identify the currentel_*IDs for interactive elements. - Use
browser_clickorbrowser_typeto take the next action. - Call
browser_snapshotwhenever you want a refreshed page view or a screenshot. - Finish with
browser_closeto release the session.
Element IDs are generated from the current page snapshot. After a navigation or UI change, use the latest returned snapshot before taking the next action.
Examples
Output
browser_openreturnssuccess,session_id,url,snapshot,element_count, and usagetips. On Genesis Desktop, if the one-time browser-tools download is still running, it instead returns progress without asession_id; relay the status and try again shortly.browser_snapshotreturnssuccess,session_id,title,url,snapshot, andelement_count. Wheninclude_screenshot=True, it also returnsscreenshot_pathandscreenshot_reminder.browser_clickandbrowser_typereturnsuccess,session_id,url,snapshot, andelement_countafter the interaction.browser_closereturnssuccess,session_id, andstatusset toclosed.
Configuration Details
- Use full URLs for external sites.
- Use relative paths such as
/apps/my-appor/api/apps/<app_id>/proxy/for internal Genesis pages. - When
browser_opentargets the local Genesis backend onlocalhostor127.0.0.1using the active FastAPI port, Genesis automatically attaches the internal service token as theX-Genesis-Internal-Tokenheader. - That header is scoped to the local Genesis origin only and is not sent to external sites or other localhost ports.
- The default viewport is
1280x720. browser_typeclears existing text by default; setclear_first=Falseto append instead.
Limitations or Notes
- These tools operate on a live browser session, so page state can change between actions.
browser_clickandbrowser_typework best when you use the current snapshot’sel_*IDs instead of guessing text matches.include_screenshot=Truecaptures the current viewport rather than a stitched full-page image.- Always call
browser_closewhen you are done to free server resources.

