Compatibility
What RTO can control, and common browser limitations.
Docs updated: 2026-03-24
Supported pages
- Normal
http://andhttps://pages in a regular browser tab. - Hosts that are on the allow-list (this is the main safety boundary).
- Top-frame only: the admin-page bridge runs only in the tab’s top frame. Iframes may exist, but RTO will not operate inside them.
- The site docs/examples work with individual helpers, helper packs, or the bundled
RTO.min.jsfile.
Top-frame only (important)
RTO intentionally ignores messages from iframes (including embedded login widgets and some CAPTCHAs).
If the element you want is inside an iframe, the command won’t reach it.
Common unsupported pages
- Browser internal pages:
chrome://,edge://,about:,moz-extension://, settings pages, extension pages, etc. - Store pages that block extension scripts (ex: Chrome Web Store, some addon galleries).
- Special schemes / sandboxed contexts:
file://(unless permission is granted),view-source:, manydata:/blob:contexts (depends on browser policy). - Tabs where the extension cannot run (example: Incognito without permission, restricted profiles, enterprise policy blocks).
Typical symptoms and what they mean
DOMAIN_NOT_ALLOWED: host not in allow-list.NO_CONTROLLED_TAB: no tab is currently adopted/controlled for thattabKey.PROTECTED_ELEMENT: RTO blocks touching its own UI / protected nodes.BACKGROUND_NO_RESPONSEor repeated timeouts: MV3 service worker slept/reloaded, or the tab is not injectable/eligible.
MV3 note: the background is a service worker and may suspend. When it wakes up, the first request can be slower.
Use reasonable
timeoutMs and retry patterns.
SPAs & dynamic pages
Single Page Apps often change content without a full navigation. Recommended patterns:
- Always
waitForSelectorbefore interacting (click/setValue/getText). - Increase
timeoutMson slow sites and after logins. - Prefer stable selectors:
[data-test],[data-testid], fixed IDs, or semantic anchors. - Expect “URL changed but DOM not ready” moments; treat navigation and readiness as separate steps.