The current options are simple:
use individual helper files from /RTO_helpers/, use the curated packs in /RTO_helper_packs/,
or load the all-in-one bundle RTO.min.js from /RTO_helpers.min/.
RTO_form_api.js
RTO.min.js
<!-- Controller page (your site) -->
<script src="../RTO_helpers/RTO_form_api.js"></script>
<script>
RTOForm.detect(1500).then(function(){
console.log("RTO detected");
}).catch(function(e){
console.log("RTO missing:", e.code, e.message);
});
</script>
<script src="../RTO_helper_packs/RTO.core.min.js"></script>
<script src="../RTO_helper_packs/RTO.ui.min.js"></script>
<script>
RTOconnectOnce(2500).then(function(ok){
window.RTOconnected = !!ok;
});
</script>
<script src="../RTO_helpers.min/RTO.min.js"></script>
<script>
RTOconnectOnce(2500).then(function(ok){
window.RTOconnected = !!ok;
});
</script>
RTO_form_api.jsRTOForm.detect(timeoutMs) — check extension availability.RTOForm.openTab(args, opts) — open/reuse a controlled tab.RTOForm.adoptTab(args, opts) — adopt an existing browser tab by id.RTOForm.navigate(args, opts) — navigate controlled tab to URL.RTOForm.focusTab(args, opts) — focus controlled tab.RTOForm.closeTab(args, opts) — close controlled tab.RTOForm.listTabs(args, opts) — list controlled tabs.RTOForm.command(msg, opts) — send named safe DOM action.RTOForm.waitForSelector(args, opts) — wait for remote selector.RTOForm.waitForNavigation(args, opts) — wait for post-submit selector.RTOForm.focusElement(args, opts) — focus remote element.RTOForm.domSetStyle(args, opts) — set remote inline styles.RTOForm.registerMasterTab(args, opts) — register current page as master tab.RTOForm.focusMasterTab(args, opts) — request focus back to master tab.RTOForm.onStatus(fn), offStatus(fn), waitForStatus(filter, timeoutMs) — subscribe/wait tab status events.RTO_form_helpers.jsRTOHelpers.formWait(selector, waitMs, tabKey, logKey) — wait for field.RTOHelpers.formClick(selector, tabKey, logKey) — click safely with logs.RTOHelpers.formHighlight(selector, tabKey, ms, logKey) — highlight target field.RTOHelpers.formValue(selector, tabKey, logKey) — read field value.RTOHelpers.formAttr(selector, attrName, tabKey, logKey) — read field attribute.RTOHelpers.formTextInput(selector, val, read, tabKey, logKey) — type and optionally verify text.RTOHelpers.formDateInput(selector, dt, read, tabKey, logKey) — write ISO date and verify.RTOHelpers.formSelect(selector, val, read, tabKey, logKey) — set select value and verify.RTOHelpers.formCheck(selector, chk, tabKey, logKey) — set checkbox/radio state.RTOHelpers.formNavigate(url, tabKey, focus, timeoutMs, logKey) — navigate with helper logging.RTOHelpers.formFindFirstAttr(selector, attrName, waitMs, tabKey, logKey) — read first non-empty attribute.RTOHelpers.formExtractInt(text, re, groupIndex, logKey) — parse integer from text.RTOHelpers.formFindHrefAndNavigate(selector, re, groupIndex, waitMs, tabKey, focus, logKey) — extract href/id then navigate.RTOHelpers.runSteps(steps, ctx) — execute named async steps pipeline.RTO_detector.jsRTOdetectOnce(timeoutMs) — resolve true/false depending on extension detection.RTO_connector.jsRTOconnectOnce(timeoutMs) — connect once and set window.RTOconnected.RTOConnector.request(payload) — map generic action payload to API call.RTO_domainList.jsRTOAllowlist.list(timeoutMs) — fetch normalized allowlist hosts.RTOAllowlist.has(host, timeoutMs) — check host presence.RTOAllowlist.add(host, timeoutMs) — request an add using the modern confirmation flow.RTOAllowlist.remove(host, timeoutMs) — remove host.RTOAllowlist.cached(), RTOAllowlist.hasCached(host) — read local cache.RTO_addRemoveDomain.jsRTOAllowlistUI.bind(config) — bind input/buttons/message/list for add/check/remove.RTO_favoritesList.jsRTOFavorites.list(timeoutMs) — fetch favorites list.RTOFavorites.has(url, timeoutMs) — check if URL is in favorites.RTOFavorites.add(url, label, timeoutMs) — add favorite.RTOFavorites.remove(url, timeoutMs) — remove favorite.RTOFavorites.cached(), RTOFavorites.hasCached(url) — read local cache.RTO_addRemovefavorite.jsRTOFavoritesUI.bind(config) — bind input/buttons/message/list for favorites.RTO_tabsList.jsRTOTabsList.requestNow(timeoutMs) — refresh tabs snapshot from extension.RTOTabsList.getSnapshot() — get current cached snapshot.RTOTabsList.isOpen(tabKey) — check if tabKey is currently open.RTO_openTabsListing.jswindow.RTO_OPEN_TABS_TBODY_ID — optional global override for target tbody id (default: openTabsBody, legacy fallback: openTabsBoby).RTO_openTab_button.jsRTObindTabButtons() — bind all matching data-rto-key/data-rto-url buttons.RTO_visible_when_tab.jsRTOVisibleWhenTab.bind(config) — bind one element visibility to tabKey state.RTOVisibleWhenTab.rescan() — rescan declarative data-rto-visible-when elements.RTO_DOM_focus.jsRTOFocusElement(selector, tabKey, timeoutMs, tabId) — focus remote element with fallback strategy.RTO_DOM_style.jsRTOSetRemoteStyle(selector, styleObj, opts) — apply inline style object remotely.RTO_DOM_highlight.jsRTOHighlight(selector, opts) — highlight one element.RTOUnhighlight(selector, opts) — clear highlight on one element.RTOHighlightMany(selectors, opts) — highlight multiple selectors.RTOUnhighlightMany(selectors, opts) — clear highlights for multiple selectors.RTO_DOM_actions.jsdata-rto-action presets).RTO_form_api.js on your controller page.RTOForm.detect() and gate your UI.tabKey consistently (multi-tab safe).waitForSelector before click / setValue.