How Remote Tab Opener works
RTO lets your own page act as a master tab, send local requests through the extension bridge, and control named real tabs across explicitly allowed domains with a visible browser model.
app.example.
billing.example.org tab is opened, reused, navigated, or automated.
Remote Tab Opener is a local browser extension. It gives your own page a safe bridge to open, reuse, navigate, focus, and automate real browser tabs, including tabs on other explicitly allowed domains, without adding a server, proxy, or cloud relay.
The short version: your page orchestrates the workflow, the extension enforces the rules, and the target action happens in a dedicated visible tab on a host the user explicitly allowed.
The main concepts you need first
tabKey
allow-list
local-first
Master tab
The page you own. It sends the requests, receives the results, and can register itself as the place to return focus after a remote step.
Controlled tab
A real browser tab opened or adopted by RTO. It can live on another allowed domain and is still a normal tab: visible, focusable, reloadable, and easy to inspect.
tabKey
A stable name for a logical tab lane. Use it to reuse the same tab on purpose instead of spawning duplicates for every action.
Allow-list
RTO is deny-by-default. A target host must be explicitly allowed before the extension will control it or run DOM actions there, including cross-domain targets.
Why the local model matters
- No server or proxy is needed to drive the tab, even when the tab lives on another allowed domain.
- No cloud relay sits between your page and the browser.
- No data collection is required for the core product model.
- Browser security boundaries still matter: explicit extension permissions, explicit allow-list, no arbitrary eval on arbitrary sites.
- Debugging stays concrete because the tab is local, visible, and still behaves like a real Firefox tab.
app.example.
RTO is useful when you care about the fact that the browser tab is real and visible. That matters for internal tools, guided demos, support workflows, and QA flows where you want to inspect what happened instead of replaying a black box, even when the target tab sits on another allowed domain.
Compared with macro replay
RTO favors explicit actions and selectors over opaque recording.
Compared with a plain tab helper
RTO adds named tab reuse, routing, and safe DOM actions.
Compared with heavier headless stacks
RTO is lighter for many browser-side flows that do not need a backend runner.
Pick the right entry point
Examples
Use the examples if you want to see the browser behavior first and read the code second.
Browse examplesHelpers or packs
Use individual helpers or packs if you want more control over what you include on the page.
Open helpers guideCompare approaches
Use the comparison page if you want a quick, honest decision guide before choosing between RTO and other automation categories.
Compare approachesFull documentation
Use the full docs when you need the detailed API reference, error handling, and security notes.
Read docs