Tuck is a local-first Chrome side-panel extension that makes tab cleanup safe, reversible, and fast. It keeps useful links and snippets at hand without turning the browser into another dashboard.
Watch the 17-second product demo
- Safe cleanup. Inactive tabs are discarded only after active, pinned, audible, incognito, protected-tab, protected-domain, URL, and inactivity checks.
- Archive before close. Every tab is saved to
chrome.storage.localand that write is confirmed before Chrome is asked to close it. - Quick recovery. Search, restore, or delete archived tabs from the side panel.
- Useful saved items. Keep domain-aware links and snippets. Correct values inline and choose Copy, Open, or Edit as the primary action.
- Tuck tab grouping. Select Group tabs to collect matching ungrouped site tabs into native Chrome tab groups named
Tuck. It never closes, merges, or changes existing groups. - Local and customizable. Use accessible themes, custom theme validation, protected domains, and JSON export/import. No account required.
Tuck has no account, backend, analytics, cloud sync, page-content scraping, cookies, tokens, or saved form values. Your archive, notes, preferences, and exports stay on your device.
- Download or clone this repository and run
pnpm install. - Run
pnpm build. - Open
chrome://extensions, enable Developer mode, then choose Load unpacked. - Select the generated
distdirectory. - Pin Tuck if desired, then open its side panel from the extension action.
Tuck targets Chrome 116 or later.
For every archive-and-close operation, Tuck validates the tab again immediately before acting. It builds the archive record, writes it locally, confirms the saved record, and only then calls chrome.tabs.remove. If saving fails, the tab is not closed and the side panel reports the error.
Protected tabs, protected domains, active tabs, pinned tabs (when enabled), audible tabs (when enabled), internal URLs, malformed URLs, and excluded incognito tabs are never eligible for automatic cleanup.
tabsreads tab metadata needed for inactivity, safety checks, restoration, and local archiving.storagekeeps archives, notes, themes, and settings on this device.alarmsschedules quiet cleanup checks.sidePanelopens the persistent browser side panel.contextMenuslets users deliberately save selected text as a note.tabGroupscreates and labels native Chrome tab groups only after the user selects Group tabs.
Use Node 22+ and pnpm:
pnpm install
pnpm check
pnpm test:e2e
pnpm buildpnpm check runs linting, formatting verification, unit tests, and the production build. pnpm test:e2e runs the extension integration test. To regenerate the repository demo video, run pnpm demo:record.
