Automatically close old tabs after a configurable time β like Arc Browser. Pinned tabs and essentials are safely put to sleep instead of being closed. Works across all workspaces in Zen Browser.
- ποΈ Auto-close normal tabs after a configurable delay (1 min β 24h)
- π€ Sleep pinned/essential tabs β unloaded from memory but stay in your tab bar
- π‘οΈ Never touch active or audio tabs β your current tab is always safe
- π All workspaces β works across every Zen Browser workspace
- β±οΈ Persistent timers β survive browser restarts and sleep/wake
- π« Domain exclusions β exclude specific sites from auto-closing
- π Live statistics β see tab counts update in real-time
- β‘ Auto-save settings β every change applies instantly
| Tab type | What happens |
|---|---|
| Normal tabs | Closed after the configured delay |
| Pinned / Essentials | Put to sleep (discarded from memory, stay visible) |
| Active tab | Never touched |
| Tabs playing audio | Never touched |
From Firefox Add-ons:
- Install from addons.mozilla.org
- Click the FFTabClose icon in the toolbar to configure
From source (development):
- Clone this repo
- Go to
about:debuggingβ "This Firefox" / "This Zen" - Click "Load Temporary Add-on..." β select
manifest.json
Click the extension icon to configure:
- Timer: 1 min (test) to 24 hours, or custom
- Sleep pinned tabs: Discard pinned/essential tabs instead of closing
- Protect audio tabs: Never touch tabs playing sound
- Domain exclusions: Sites to never close (one per line)
- Force process: Immediately run a cleanup cycle
- Every tab gets a
lastActiveAttimestamp when you visit it - A background alarm runs every minute to check for old tabs
- Tabs older than the configured delay are processed:
- Normal tabs β closed
- Pinned tabs β discarded (unloaded from memory)
- Active tabs, audio tabs, and excluded domains are always protected
- Safety: max 3 tabs closed per cycle if >50% would be affected
FFTabClose is specifically optimized for Zen Browser:
- Cross-workspace: Tracks tabs across ALL workspaces via events, since
browser.tabs.query()only returns the active workspace - Essentials = Pinned: Zen's essential tabs are pinned tabs under the hood β they're automatically protected
- Hidden tabs: Tabs in inactive workspaces are verified with
browser.tabs.get()instead of being deleted - Auto-detection: Extension detects Zen Browser automatically
- Manifest V2 β compatible with Firefox 109+ and Zen Browser
- Persistent background script β timers survive restarts
browser.tabs.discard()β native Firefox API for clean memory unloadingbrowser.alarmsβ reliable timer that works through sleep/wake- URL-based timer recovery β timestamps survive browser restarts even when tab IDs change
- No data collection β everything stays local, no network requests
- No data collected β zero telemetry, zero analytics
- No network requests β works entirely offline
- No tab content access β only uses metadata (title, URL)
- Open source β all code available for review
- V5.2: Zen Browser compatibility fix, toggle fix, auto-save, live stats, safety cap
- V5.0: Complete rewrite β
browser.tabs.discard(), global processing, domain exclusions - V4.x: Legacy (broken sleep mechanism, single workspace)
MIT License
Compatible with Firefox & Zen Browser π