# TabCmdr - Full Documentation > TabCmdr is an all-in-one browser productivity extension, tab manager, bookmark manager, history search tool, and AI-powered command center designed for power users, developers, researchers, students, and anyone who lives in their browser. Unlike cloud-based productivity tools, TabCmdr runs entirely inside your browser. No account required, no tracking, no external servers, and no data collection. Your tabs, bookmarks, browsing history, AI conversations, and settings stay on your device. ## Core Features ### Universal Browser Search - **Tab Search**: Instantly find and switch between open tabs across all browser windows using title, URL, or fuzzy search. - **Bookmark Search**: Search, open, and manage bookmarks directly from the command palette. - **History Search**: Quickly find previously visited websites and pages from recent activity or your full browsing history. - **Downloads Manager**: Search, open, and manage downloaded files without opening additional browser pages. - **Recently Closed Tabs**: Restore accidentally closed tabs and browsing sessions in seconds. ### Advanced Tab Management - **Tab Manager**: Close, pin, unpin, mute, duplicate, reload, suspend, or move tabs with keyboard commands. - **Duplicate Tab Cleaner**: Detect and remove duplicate tabs instantly. - **Tab Organizer**: Sort tabs alphabetically while preserving pinned tabs. - **Tab Groups**: Create, organize, and manage Chrome tab groups efficiently. - **Memory Saver**: Suspend inactive tabs to reduce RAM and improve browser performance. - **Window Manager**: Merge multiple browser windows into one workspace. - **Split View Tabs**: Arrange tabs side-by-side using native browser tab grouping. ### AI Assistant for Chrome Access an AI assistant directly from your browser command palette. Connect your preferred AI provider using your own API key and switch between AI models instantly. Get help with coding, writing, research, debugging, summarization, brainstorming, and productivity tasks. Conversations remain private and are stored locally on your device. Requests are sent directly to your selected AI provider. ### Built-in Browser Productivity Tools - **Calendar Integration**: View upcoming events and join meetings with one command. - **RSS Reader**: Follow blogs, news websites, and favorite content sources. - **Weather Forecasts**: Check weather conditions and forecasts for multiple locations. - **Emoji Picker**: Search and insert emojis with intelligent fuzzy matching. - **Todo List**: Manage personal tasks directly from your browser. - **Screenshot Tool**: Capture visible tabs or selected screen regions. - **Calculator**: Perform calculations, percentages, currency conversions, and unit conversions. - **Time Zone Converter**: Convert time zones and check world clocks instantly. - **Color Picker**: Extract colors from web pages and copy HEX, RGB, or HSL values. - **QR Code Generator**: Create QR codes for URLs, text, contact information, and more. ### Keyboard Shortcuts & Browser Commands - **Browser Commands**: Print page, view source, fullscreen mode, zoom controls, scrolling shortcuts. - **Copy Actions**: Copy page URL, page title, selected text, or browser information. - **Window Management**: Open new tabs, windows, and incognito sessions. - **Navigation Commands**: Reload, hard reload, back, forward, and browser navigation shortcuts. - **Quick Access Commands**: Use shortcuts like for tabs, for bookmarks, for history, for AI chat, and for calendar. ### Customization & Personalization - **15+ Themes**: Dark Mode, Light Mode, Catppuccin, Dracula, Nord, Tokyo Night, Gruvbox, Rosé Pine, Solarized, and more. - **Automatic System Theme Sync**. - **Compact Mode** for maximum information density. - **Notch Mode** command bar for distraction-free workflows. - **Flexible Positioning**: Center, top, bottom, left, right, or corner layouts. - **Fuzzy Search Engine**: Find tabs, bookmarks, history entries, and commands even when search terms contain typos. --- # Detailed Guides & Policies --- ## Getting Started > Get started with TabCmdr - install the browser extension, open the command palette with ⌘K or Ctrl K, and start searching tabs, bookmarks, and more in seconds. ## What is TabCmdr? TabCmdr is a browser extension that brings a fast, keyboard-driven command palette to your browser. Press a shortcut, type what you want - switch tabs, search bookmarks, run page commands, copy URLs, and more - all without touching the mouse. Everything runs locally inside your browser. No accounts, no servers, no tracking. ## Installation Install TabCmdr from your browser's extension store: - **Chrome / Chromium:** Chrome Web Store → search for "TabCmdr" After installing, the extension is immediately active on all pages. ## Opening the Palette Press **`⌘ K`** on macOS or **`Ctrl K`** on Windows/Linux to open the command palette from any tab. The palette opens as an overlay on top of the current page. Press **`Escape`** or click outside to close it. ## Your First Search Once the palette is open: 1. Start typing - results appear instantly as you type. 2. Use **`↑`** / **`↓`** arrow keys to move through results. 3. Press **`Enter`** to execute the selected item. That's it. No configuration required to get started. ## Trial & Licensing TabCmdr includes a free trial period. After the trial ends, you get a small number of free uses per day (the grace period). To unlock unlimited use, purchase a license key from [Gumroad](/buy?wanted=true) and activate it from the Settings page. See [Licensing]({{< relref "licensing" >}}) for full details. --- ## Tab Search & Switching > Search all your open tabs and switch to any one instantly with TabCmdr. Works across all windows - no mouse needed. ## Overview TabCmdr lets you search all your open tabs and jump to any one of them instantly - no scrolling through a tab bar, no hunting with the mouse. This feature is always available. It uses the `tabs` permission, which is granted automatically when you install the extension. ## How It Works 1. Open the palette with **`⌘ K`** / **`Ctrl K`**. 2. Start typing any part of a tab's title or URL. 3. Matching tabs appear in the results list. 4. Press **`Enter`** to switch to the selected tab. TabCmdr searches across all open windows, not just the current one. ## What You Can See Each tab result shows: - **Favicon** - the site's icon for quick visual recognition - **Title** - the page title - **URL** - the full address ## Tab State Indicators Results reflect the current state of each tab: | State | What it means | |---|---| | Pinned | The tab is pinned in the tab bar | | Muted | Audio is muted on that tab | | Active | The tab is currently focused | ## Tab Groups (Chrome only) If you have the **tabGroups** optional permission enabled, TabCmdr can also show which group a tab belongs to. See [Tab Groups]({{< relref "tab-groups" >}}) for more. ## Privacy Tab data (titles, URLs, favicons) is loaded into memory when you open the palette and discarded the moment you close it. Nothing is written to storage or sent anywhere. --- ## Bookmarks > Search your entire bookmark library from TabCmdr's command palette. Find and open any saved page instantly, no matter how deeply nested. ## Overview TabCmdr can search your entire bookmark library from the palette. Find and open any saved page in seconds, no matter how deeply nested it is in your bookmark folders. ## Enabling Bookmarks The bookmarks feature requires an optional permission. To enable it: 1. Open the TabCmdr **Settings** page (click the extension icon → Settings). 2. Find the **Bookmarks** toggle and turn it on. 3. Your browser will ask you to confirm the permission - click **Allow**. You can revoke this permission at any time from the same settings page. ## Searching Bookmarks Once enabled: 1. Open the palette with **`⌘ K`** / **`Ctrl K`**. 2. Type any part of a bookmark's title or URL. 3. Bookmark results appear alongside tab results. 4. Press **`Enter`** to open the bookmark in the current tab. ## Bookmarking the Current Page TabCmdr also includes a **Bookmark this page** command. Search for "bookmark" in the palette to find it. Running it saves the current page to your bookmarks immediately. ## Privacy Bookmark data (titles and URLs) is read-only and only loaded into memory while the palette is open. TabCmdr never modifies your bookmarks except when you explicitly run the "Bookmark this page" command. --- ## Browsing History > Search your browser history from TabCmdr's command palette. Revisit any page quickly without remembering the exact URL. ## Overview TabCmdr can search your browsing history so you can quickly revisit pages you've been to before - even if you don't remember the exact URL. ## Enabling History Search History search requires an optional permission. To enable it: 1. Open the TabCmdr **Settings** page. 2. Find the **History** toggle and turn it on. 3. Confirm the permission in the browser prompt. You can revoke this permission at any time. ## Searching History Once enabled: 1. Open the palette with **`⌘ K`** / **`Ctrl K`**. 2. Type any part of a page title or URL. 3. History results appear in the results list. 4. Press **`Enter`** to navigate to that page. ## Timeframe Setting You can control how far back TabCmdr looks when searching history. Adjust the **History timeframe** setting on the Settings page to limit results to the last day, week, month, or longer. Narrowing the timeframe keeps results relevant and speeds up search. ## Privacy History data is fetched from the browser API into memory when you open the palette and discarded when you close it. TabCmdr never stores, transmits, or modifies your history. --- ## Downloads > Access your recent downloads from TabCmdr's palette. Search, open, or remove downloaded files without leaving your current tab. ## Overview TabCmdr gives you quick access to your recent downloads from the palette. Search, open, or remove downloaded files without opening the browser's downloads page. ## Enabling Downloads Downloads access requires an optional permission. To enable it: 1. Open the TabCmdr **Settings** page. 2. Find the **Downloads** toggle and turn it on. 3. Confirm the permission in the browser prompt. ## What You Can Do | Action | How | |---|---| | Search downloads | Type a filename or URL in the palette | | Open a downloaded file | Select it and press **`Enter`** | | Remove from list | Select it and choose "Remove from list" | ## What Each Result Shows - **Filename** - the name of the downloaded file - **Source URL** - where the file was downloaded from - **File size** - how large the file is - **State** - whether the download is complete, in progress, or interrupted ## Privacy Download data is loaded into memory while the palette is open and discarded when you close it. TabCmdr never stores download information or sends it anywhere. --- ## Recently Closed Tabs > Restore recently closed tabs and windows in one keystroke using TabCmdr. Never lose a tab accidentally again. ## Overview Accidentally closed a tab? TabCmdr can show you recently closed tabs and windows so you can restore them instantly. ## Enabling Recently Closed This feature requires the optional **sessions** permission. To enable it: 1. Open the TabCmdr **Settings** page. 2. Find the **Recently Closed** (Sessions) toggle and turn it on. 3. Confirm the permission in the browser prompt. ## Restoring a Closed Tab Once enabled: 1. Open the palette with **`⌘ K`** / **`Ctrl K`**. 2. Search for "recently closed" or type part of the page title. 3. Select the tab you want to restore. 4. Press **`Enter`** - the tab reopens exactly where you left it. ## Undo Close Tab TabCmdr also exposes an **Undo close tab** command that restores the most recently closed tab without searching. Just open the palette, type "undo close", and press **`Enter`**. ## Privacy Session data (titles, URLs, favicons of recently closed tabs) is loaded into memory when you open the palette and discarded when you close it. Nothing is stored or transmitted. --- ## Tab Groups > Create, manage, and organize Chrome tab groups from TabCmdr's command palette. Group, rename, recolor, and move tabs without touching the tab bar. ## Overview TabCmdr supports Chrome's tab groups feature, letting you create, manage, and organize tab groups directly from the palette. > **Note:** Tab groups are a Chrome-only feature. This permission is not requested on Firefox. ## Enabling Tab Groups 1. Open the TabCmdr **Settings** page. 2. Find the **Tab Groups** toggle and turn it on. 3. Confirm the permission in the browser prompt. ## What You Can Do | Action | Description | |---|---| | View group membership | See which group a tab belongs to in search results | | Create a tab group | Group selected tabs together with a name and color | | Rename a group | Change the name of an existing group | | Change group color | Update the color label of a group | | Move tabs between groups | Reorganize tabs across groups | | Ungroup tabs | Remove tabs from a group | ## How to Use Open the palette and search for "group" to see all available tab group commands. Select the action you want and follow the prompts. ## Privacy Tab group data (names, colors, membership) is only accessed while the palette is open and is never stored or transmitted. --- ## Page Commands > Run page actions from TabCmdr's palette: scroll, zoom, print, screenshot, copy URL, generate QR codes, and calculate math - no mouse required. ## Overview TabCmdr includes a set of commands that act directly on the page you're currently viewing. These are always available - no extra permissions needed beyond the required `activeTab` permission. Open the palette and type any of the command names below to find and run them. ## Scrolling | Command | What it does | |---|---| | Scroll to top | Jumps to the very top of the page | | Scroll to bottom | Jumps to the very bottom of the page | | Scroll up | Scrolls the page up by one viewport | | Scroll down | Scrolls the page down by one viewport | ## Zoom | Command | What it does | |---|---| | Zoom in | Increases the page zoom level | | Zoom out | Decreases the page zoom level | | Reset zoom | Restores the page to 100% zoom | ## Printing | Command | What it does | |---|---| | Print | Opens the browser's print dialog for the current page | ## Screenshots | Command | What it does | |---|---| | Capture screenshot | Takes a screenshot of the visible area of the current tab | After capturing, you can copy the screenshot image to your clipboard (requires the **clipboardWrite** optional permission - see [Clipboard]({{< relref "clipboard" >}})). ## Copying the Current URL | Command | What it does | |---|---| | Copy URL | Copies the current page's URL to your clipboard | | Copy URL as Markdown | Copies the URL formatted as a Markdown link `[title](url)` | ## QR Code | Command | What it does | |---|---| | Generate QR code | Creates a QR code for the current page URL | The QR code appears in the palette. You can copy it to your clipboard to share it. ## Calculator TabCmdr has a built-in calculator. Type a math expression directly in the palette (e.g., `12 * 8` or `(100 + 50) / 3`) and the result appears instantly. Press **`Enter`** to copy the result to your clipboard. --- ## Clipboard > Copy URLs, screenshots, QR codes, and calculator results to your clipboard from TabCmdr. Clipboard access is optional and only writes, never reads. ## Overview TabCmdr can copy things to your clipboard - URLs, screenshots, QR codes, and calculator results - when you explicitly trigger a copy action. ## Enabling Clipboard Access Clipboard write access requires an optional permission. To enable it: 1. Open the TabCmdr **Settings** page. 2. Find the **Clipboard** toggle and turn it on. 3. Confirm the permission in the browser prompt. ## What TabCmdr Can Copy | Item | How to trigger | |---|---| | Current page URL | Run the "Copy URL" command | | URL as Markdown link | Run the "Copy URL as Markdown" command | | Screenshot image | Capture a screenshot, then choose "Copy to clipboard" | | QR code image | Generate a QR code, then choose "Copy to clipboard" | | Calculator result | Type a math expression and press **`Enter`** | ## What TabCmdr Does NOT Do - TabCmdr **never reads** your clipboard. It only writes to it. - Clipboard access is only used when you explicitly run a copy command - never automatically. ## Privacy Nothing from your clipboard is ever stored or transmitted. Write operations happen entirely within your browser. --- ## Settings & Customization > Customize TabCmdr's appearance, manage optional permissions, reorder result categories, set your search engine, and configure site shortcuts and disabled domains. ## Opening Settings Click the TabCmdr extension icon in your browser toolbar and select **Settings**, or search for "settings" in the palette and press **`Enter`**. ## Appearance ### Theme Choose how TabCmdr looks: | Option | Description | |---|---| | System | Follows your OS light/dark mode preference (default) | | Light | Always uses the light theme | | Dark | Always uses the dark theme | ### Compact Mode Enable **Compact mode** to reduce the size of the palette and show more results in less vertical space. Useful on smaller screens. ### Palette Position Choose where the palette appears on screen: - **Center** (default) - appears in the middle of the viewport - **Top** - appears near the top of the screen ## Permissions The Settings page is where you enable or disable all optional features. Each toggle maps to a browser permission: | Toggle | Permission | Feature unlocked | |---|---|---| | Bookmarks | `bookmarks` | Search and open bookmarks | | History | `history` | Search browsing history | | Downloads | `downloads` | Search and manage downloads | | Recently Closed | `sessions` | Restore recently closed tabs | | Clipboard | `clipboardWrite` | Copy URLs, screenshots, QR codes | | Tab Groups | `tabGroups` | Manage Chrome tab groups | You can revoke any optional permission at any time by toggling it off. ## Tab Order Control the order in which result categories appear in the palette. Drag and drop the categories in the Settings page to reorder them to your preference. ## Search Engine Choose which search engine TabCmdr uses when you type a query that doesn't match any tabs, bookmarks, or history. The selected engine opens in a new tab when you press **`Enter`** on a plain search query. ## Site Shortcuts Configure custom shortcuts for sites you visit frequently. A site shortcut lets you type a short keyword in the palette to jump directly to a URL. ## Disabled Domains Add domains to the disabled list to prevent TabCmdr from injecting the palette on those pages. Useful for sites where the keyboard shortcut conflicts with the page's own functionality. To disable a domain: 1. Open Settings. 2. Find the **Disabled Domains** section. 3. Add the domain (e.g., `app.example.com`). TabCmdr will no longer activate on pages matching that domain. ## Settings Sync Your settings are stored in `browser.storage.sync` and automatically synced across all devices where you're signed into the same browser account. No TabCmdr account or server is involved - sync happens entirely through your browser. --- ## Keyboard Shortcuts > A complete reference for TabCmdr keyboard shortcuts. Open the palette, navigate results, and customize the default ⌘K / Ctrl K shortcut. ## Opening & Closing the Palette | Shortcut | Action | |---|---| | `⌘ K` (macOS) / `Ctrl K` (Windows/Linux) | Open the command palette | | `Escape` | Close the palette | | Click outside the palette | Close the palette | ## Navigating Results | Shortcut | Action | |---|---| | `↑` / `↓` | Move up or down through results | | `Enter` | Execute the selected item | | `Tab` | Move to the next result (alternative to `↓`) | ## Inside the Palette | Shortcut | Action | |---|---| | Type anything | Filter results instantly | | Type a math expression | Show calculator result (e.g., `12 * 8`) | ## Changing the Shortcut The default shortcut is `⌘ K` / `Ctrl K`. If this conflicts with a site you use, you have two options: 1. **Disable TabCmdr on that domain** - add the domain to your Disabled Domains list in Settings. The shortcut won't fire on that site. 2. **Change the extension shortcut** - go to your browser's extension keyboard shortcut settings: - **Chrome:** `chrome://extensions/shortcuts` - **Firefox:** `about:addons` → gear icon → Manage Extension Shortcuts --- ## TabCmdr Privacy Policy > TabCmdr's full privacy policy. Everything runs locally - no data collection, no tracking, no servers. Understand every permission the extension uses. TabCmdr is a command palette for your browser. It runs entirely inside your browser. We do not operate servers, collect data, or track you in any way. This document explains every permission the extension requests, exactly what each one is used for, and what data goes where. ## The short version - Everything runs locally on your device. - No analytics. - No telemetry. - No tracking pixels. - No cookies. - Your browsing data (tabs, bookmarks, history, downloads) never leaves your browser. - The only network request the extension ever makes is to Gumroad's API to verify a license key and only when you explicitly activate or re-validate a license. - Your settings sync across your devices using your browser's built-in sync storage. We never see them. ## Permissions explained TabCmdr uses two types of permissions: * **Required** Always active * **Optional** You grant them individually from the settings page. ### Required permissions These are granted when you install the extension. They cannot be revoked without uninstalling. | Permission | What it does | What it accesses | |---|---|---| | **storage** | Saves your settings (theme, position, tab order, disabled domains, etc.) and license/trial state. | Reads and writes to `browser.storage.sync` (settings) and `browser.storage.local` (license token, trial timestamp, grace usage). Nothing is sent externally. | | **activeTab** | Lets the palette interact with the page you're currently viewing - injecting the command palette UI, capturing a screenshot when you ask for one, and running page-level commands (scroll, zoom, print). | Only the tab you're actively on, and only when you invoke TabCmdr. | | **tabs** | Lists your open tabs so you can search and switch between them. | Tab titles, URLs, favicons, pinned/muted state, window IDs, and tab group IDs. This data is held in memory while the palette is open and discarded when you close it. | ### Optional permissions These are off by default. You enable them from the TabCmdr settings page, and you can revoke them at any time. | Permission | What it does | What it accesses | |---|---|---| | **bookmarks** | Lets you search and open bookmarks from the palette. | Your bookmark tree (titles and URLs). Read-only - TabCmdr can also bookmark the current page if you use that command. | | **history** | Lets you search your browsing history from the palette. | Recent history entries (titles, URLs, visit times). Read-only, filtered by the timeframe you choose in settings. | | **downloads** | Lets you search, open, and manage recent downloads from the palette. | Download filenames, URLs, file sizes, and states. You can open a downloaded file or remove it from the list. | | **sessions** | Lets you restore recently closed tabs and windows. | Session data for recently closed tabs (titles, URLs, favicons). Used to show a "Recently Closed" list and to undo closing a tab. | | **clipboardWrite** | Lets TabCmdr copy things to your clipboard - URLs, screenshot images, QR codes, calculator results. | Writes to your clipboard only when you explicitly trigger a copy action. Never reads your clipboard. | | **tabGroups** | Lets you create, manage, and organize Chrome tab groups from the palette. | Tab group names, colors, and membership. Chrome only - this permission is not requested on Firefox. | ## Network requests TabCmdr makes exactly **one** type of network request, and only under specific circumstances: ### License verification (Gumroad API) - **When:** Only when you manually enter a license key to activate it, or during a periodic re-validation of an already-active license (roughly every 12–16 days, randomized). - **What is sent:** Your license key and the TabCmdr product ID. Nothing else - no device info, no browser fingerprint, no usage data, no personal information. - **Where:** `https://api.gumroad.com/v2/licenses/verify` - **What comes back:** Whether the license is valid, and whether it has been refunded or cancelled. The response email field is received but not stored or used. - **Offline behavior:** If the network request fails, TabCmdr continues working with the last known license state. It does not block you or retry aggressively. ### Favicons (Google Favicon Service) - **When:** When displaying tab or bookmark items in the palette. - **What is sent:** The hostname of the site (e.g., `github.com`) as part of a URL to `https://www.google.com/s2/favicons?domain=...&sz=32`. This is the same service your browser already uses for favicons. - **What is NOT sent:** Full page URLs, page content, your identity, or any browsing context. ## Data storage All data is stored locally on your device using the browser's extension storage APIs. | Storage key | Location | What it holds | |---|---|---| | `sync:cmdkSettings` | `browser.storage.sync` | Your settings - theme, position, compact mode, tab order, disabled domains, search engine preferences, site shortcut preferences. Syncs across your devices via your browser account. | | `_lk` | `browser.storage.local` | License token - a cryptographically signed record containing your license key, a timestamp, and a validity flag. Stays on your device. | | `_trial` | `browser.storage.local` | Trial start timestamp - a single number recording when you installed the extension. | | `_grace` | `browser.storage.local` | Grace usage counter - how many free uses remain today after the trial ends. Resets daily. | No browsing data (tabs, bookmarks, history, downloads, sessions) is ever written to storage. It is fetched from browser APIs into memory when you open the palette and discarded when you close it. ### Google Authentication and Google Calendar Access TabCmdr requests Google authentication only if you choose to enable Google Calendar features. Google authentication is used to let TabCmdr access your Google Calendar with read-only permission. The extension requests the `https://www.googleapis.com/auth/calendar.readonly` scope so it can display your calendar events inside TabCmdr. This permission does not allow TabCmdr to create, edit, delete, or manage calendar events. TabCmdr does not use Google authentication for advertising, analytics, tracking, profiling, or sharing data with third parties. Calendar data is used only to show your calendar information inside the extension. Google sign-in may also provide basic account identity information, such as your email address and profile identity, as part of the authentication process. TabCmdr uses this only to complete the Google sign-in flow and associate the read-only Calendar access with the correct Google account. TabCmdr does not request access to Gmail, Google Drive, Contacts, or any other Google services. It only uses Google Calendar read-only access. ## What TabCmdr does NOT do - Does not collect or transmit personal information. - Does not track which pages you visit. - Does not record your search queries. - Does not fingerprint your browser or device. - Does not use cookies. - Does not create or require user accounts. - Does not share data with third parties (beyond the Gumroad license check described above). - Does not run in the background when the palette is closed. The background service worker handles messages and goes idle. - Does not inject anything into pages on your disabled domains list. - Does not read your clipboard - only writes to it when you explicitly ask. ## Questions? If you have questions about how TabCmdr handles your data, open an issue at [github.com/abhimanyu003/tabcmdr/issues](https://github.com/abhimanyu003/tabcmdr/issues). Happy to clarify anything. TabCmdr is built and maintained by [@abhimanyu003](https://github.com/abhimanyu003) - see [About TabCmdr](/docs/about/) for who is behind the extension and how it is funded. --- ## Licensing > TabCmdr costs $3.99 per year after a free trial. Learn how the trial, grace period, and license activation work, and what the extension stores on your device. ## Pricing TabCmdr costs **$3.99 per year**. The subscription renews automatically each year through Gumroad, and you can cancel it at any time from your Gumroad account. One license unlocks every feature - there are no separate tiers, add-ons, or in-app purchases. ## Free Trial When you first install TabCmdr, you get a free trial period with full access to all features. The trial starts from the moment you install the extension. ## After the Trial Once the trial ends, TabCmdr enters a **grace period**. During the grace period you still get a limited number of free uses per day. The counter resets every 24 hours. If you've used up your daily grace uses, TabCmdr will prompt you to activate a license. ## Purchasing a License Buy a license key from the [TabCmdr page on Gumroad](/buy?wanted=true). You'll receive a license key by email after purchase. ## Activating a License 1. Open the TabCmdr **Settings** page. 2. Find the **License** section. 3. Paste your license key into the input field. 4. Click **Activate**. TabCmdr sends your license key to Gumroad's API to verify it. If valid, the extension unlocks immediately and stays unlocked. ## Re-validation TabCmdr periodically re-validates your license in the background (roughly every 12–16 days, randomized). This is the only automatic network request the extension makes. If re-validation fails (e.g., you're offline), TabCmdr continues working with the last known license state. It does not block you or retry aggressively. ## Offline Use TabCmdr works fully offline. The only thing that requires a network connection is license activation and periodic re-validation. All other features run entirely inside your browser. ## Cancellation You can cancel the yearly renewal at any time from your Gumroad account. Your license stays active until the end of the period you already paid for. Once the subscription lapses, the next re-validation detects it and the extension reverts to grace-period mode. ## What Is Stored | Key | Location | Contents | |---|---|---| | `_lk` | `browser.storage.local` | A signed token containing your license key, a timestamp, and a validity flag | | `_trial` | `browser.storage.local` | The timestamp when you first installed the extension | | `_grace` | `browser.storage.local` | How many free uses remain today | None of this data is ever sent to TabCmdr servers (there are none). The only external service involved is Gumroad for license verification. --- ## About TabCmdr > Who builds TabCmdr, how it is funded, and how to get in touch. TabCmdr is an independent extension built by @abhimanyu003 with no company, no servers, and no investors. TabCmdr is an independent project built and maintained by [@abhimanyu003](https://github.com/abhimanyu003). There is no company behind it, no team, and no outside funding. It is one developer's tool, released publicly because other people turned out to want the same thing. ## Why it exists The browser is where most work happens, and it is the one place without a command palette. Editors have one. Terminals have one. Design tools have one. Browsers still expect you to hunt through a strip of unreadable tab favicons. TabCmdr adds the missing keystroke. ## How it is funded TabCmdr is funded directly by the people who use it, at **$3.99 per year**. That is the whole business model. There are no ads, no sponsored results, no analytics sold to anyone, and no free tier propped up by harvesting data - which is what makes it possible to run the extension entirely on your device. See [Licensing](/docs/licensing/) for how the trial and renewal work. ## How it is built TabCmdr runs entirely inside your browser. There is no TabCmdr server to send anything to, because there isn't one. The only network request the extension makes on its own is a periodic license check against Gumroad's API. Every permission it requests, and exactly what each one is used for, is documented in the [Privacy Policy](/docs/privacy/). ## Contact Bug reports, feature requests, and questions all go to the same place: - **[GitHub Issues](https://github.com/abhimanyu003/tabcmdr/issues)** - the fastest way to reach me, and the best place for anything other people might hit too. If you are evaluating TabCmdr for a team and need something answered before installing it, open an issue and say so - permission and data-handling questions get answered first.