Relay your tabs effortlessly—copy, save, restore, merge, split, and share tab groups across Chromium browsers.
Transfer tab groups between Chrome, Edge, Brave, Opera, Arc, Comet, and any other Chromium-based browser via the OS clipboard — preserving group name, color, and all tabs.
- Copy & Paste — Copy a tab group to the OS clipboard and paste it in any Chromium browser
- Save & Restore — Save tab groups locally for later use
- Merge — Combine multiple tab groups into one with a custom name and color
- Split — Move selected tabs out of a group into a new group
- Import & Export — Share tab groups as JSON files
- Cross-window — View and manage tab groups from all open windows
git clone https://github.com/adityachaudhary99/tab-relay.git
cd tab-relay
npm install
npm run build- Open
chrome://extensionsin your browser - Enable Developer mode (top-right toggle)
- Click Load unpacked
- Select the project root folder (the one containing
manifest.json)
- Download the latest
.zipfrom Releases - Extract it
- Load it as an unpacked extension (steps above)
- Click the extension icon in browser A
- Find the group under Current Window and click Copy
- Open browser B, click the extension icon, and click Paste Group from Clipboard
The group is recreated with the same name, color, and tabs.
- Check the boxes next to 2 or more groups in Current Window
- A merge bar appears — enter a name, pick a color, and click Merge
- Click Split on any group in Current Window
- Select the tabs you want to split off
- Enter a name and color for the new group, then click Split
- Save — Click Save on any group to store it locally
- Open — Click Open on a saved group to restore it
- Export All — Download all saved groups as a JSON file
- Import File — Load groups from a JSON file
| Permission | Why |
|---|---|
tabGroups |
Read and modify tab group names, colors, membership |
tabs |
Query tabs and create new ones on paste/restore |
contextMenus |
Right-click context menu for quick save |
storage |
Persist saved groups in chrome.storage.local |
activeTab |
Access the active tab's window for group queries |
clipboardRead |
Read tab group data from OS clipboard on paste |
clipboardWrite |
Write tab group data to OS clipboard on copy |
Any Chromium-based browser with chrome.tabGroups API support (Chrome 89+):
- Google Chrome
- Microsoft Edge
- Brave
- Opera
- Arc
- Comet
- Vivaldi
Firefox and Safari do not support tab groups APIs and are not compatible.
tab-relay/
src/
background/ Service worker (message routing, context menus)
popup/ Popup UI (HTML, CSS, TypeScript)
services/ Storage and tab group business logic
types/ TypeScript interfaces and message types
utils/ Helpers (validation, color map, ID generation)
__mocks__/ Jest mock for Chrome APIs
scripts/ Packaging script
icons/ Extension icons (16, 32, 48, 128)
dist/ Build output (gitignored)
npm install # Install dependencies
npm run dev # Watch mode (auto-rebuild on changes)
npm run build # Production build
npm test # Run tests
npm run lint # Lint TypeScript
npm run package # Build + create zip for distribution