chrome-tab-modifier is a free, open source browsers & extensions project written in TypeScript and released under MIT. It has 703 GitHub stars, 121 forks and 14 open issues, and was last pushed 32 hours ago. On this registry it ranks #141 of 150 tracked projects in Browsers & Extensions, with 5 head-to-head comparisons available. It gained 7 stars over the last 30 tracked days.

What is chrome-tab-modifier?

Tabee (registry name chrome-tab-modifier) is a free, MIT-licensed TypeScript extension for Chromium-based browsers that renames, re-icons, pins, groups, mutes and protects tabs according to user-defined URL rules, built for people who keep many tabs open against several versions of the same site.

What it is

Tabee, formerly known as Tab Modifier and described in its README as "the original Tab Modifier", is a browser extension for Chromium-based browsers. It is written in TypeScript and released under the MIT licence, and it lives in the Chrome extension ecosystem — its topics are browser, browser-extension, chrome, chrome-extension and chrome-extensions. The storefront identity is Tabee — Tab Modifier. Its whole architecture is a rule engine: the extension matches tab URLs against user-defined rules and acts on the first rule seen, applying the configured actions when a tab opens or refreshes. The project states a deliberate constraint that follows from that design — there is no reason to include a feature that is not rule-based.

The concrete problem it replaces is manual tab housekeeping, and to a lesser extent the pile of single-purpose extensions people install to compensate for it. The author, a web developer, needed a quick visual cue for which environment a tab was pointing at, because local, pre-production and production copies of the same application all carry the same page title. Tabee attaches prefixes to titles through match rules, so .local.domain.com can read [DEV] My awesome website, .preprod.domain.com can read [PREPROD], and .domain.com can read [PROD]. Auto-pin, custom favicons and the remaining actions grew from there.

Key capabilities

  • Rename tabs through title templates such as [LOCAL] {title} or [STAGING] {title}, with quick rename available by right-clicking anywhere on the page and choosing "Rename Tab".
  • Change the tab icon, for example selecting "bullets > bullet-green" for local tabs and "bullets > bullet-amber" for staging.
  • Pin tabs automatically, such as pinning every URL containing /docs/.
  • Group tabs, including grouping all production tabs together.
  • Prevent tab closing and enable Unique mode, which keeps only one tab open — for example a single tab for https://mail.google.com.
  • Mute tabs, such as muting youtube.com by default.
  • Match URLs with substring, "starts with" or RegExp detection, using a URL matcher with capture groups such as github[.]com/([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+), and pull page data into titles with selectors like {#file-name-id-wide} for GitHub file views.

Who uses it and how

  • Web developers running the same application across localhost, staging and production, who need each tab to declare its environment at a glance.
  • Documentation readers who want every tab matching /docs/ pinned without doing it by hand.
  • People who keep video streaming sites open and want them muted on load.
  • Gmail users who enforce a single mail tab with Unique mode set to ON.
  • GitHub users who append repository and file information to tab titles using regex capture groups and page selectors.

Getting started

Install from the Chrome Web Store, which covers Google Chrome, Arc and Brave. Then click the Tabee icon to open the popup, or right-click and choose Options, and create your tab rules.

How it compares

The facts name no paid products that this extension replaces, and they name no comparable tools either. It stands alone in this registry.

When to use it — and when not to

There is nothing server-side to operate: this is a client-side extension, so no database, storage or SMTP service is involved, and the build side is a Node 20 toolchain declared in .nvmrc with a GitHub Actions CI workflow using Conventional Commits. It is not an option for Firefox or Safari users, since neither is available, and Opera and Microsoft Edge are only listed as "Available Soon". Anyone expecting features outside the rule engine should look elsewhere by design, and the project carries 14 open issues, so prospective users should weigh that against the active push history.

project readme (upstream, from github) — read inline

Tabee

GitHub Release license GitHub Actions Workflow Status .nvmrc Conventional Commits pr welcome

The original Tab Modifier.

Take control of your tabs!

Features

  • Rename tab
  • Change tab icon
  • Pin tab
  • Group tabs
  • Prevent tab closing
  • Unique tab
  • Mute tab

Quick rename can be done by right-clicking anywhere in the page and click on "Rename Tab".

Installation

Tabee is compatible with Chromium-based browsers.

Browser Install Link Web Store
Google Chrome ⬇️ Install Chrome Web Store
Arc ⬇️ Install Chrome Web Store
Brave ⬇️ Install Chrome Web Store
Opera ⬇️ Available Soon Opera Addons
Microsoft Edge ⬇️ Available Soon Microsoft Edge Addons

Firefox and Safari are not available.

Usage

  • Click on the Tabee icon to open Popup or Right-Click then Options.
  • Create your tab rules.
  • Try & enjoy!

Why did you build this extension?

I needed a quick UI element in Chrome to know the environment of the tab, as a Web developer I often use multiple versions of the same website: local, pre-production and production.

Not easy to find the appropriate tab when you have multiple tabs called "My awesome website".

I created Tabee (formerly Tab Modifier) to add prefixes to website titles with a specific match.

  • [DEV] My awesome website: .local.domain.com
  • [PREPROD] My awesome website: .preprod.domain.com
  • [PROD] My awesome website: .domain.com

After that, I have added more features like "auto-pin", custom favicons and more.

Core system

Tabee is based on user rules and act on the tab URL that matches the first seen rule. When you open a tab (or refresh), the extension will check if the URL matches a rule and apply the actions.

Aware of that, there is no reason to include a feature that is not "rule-based". Prefer to install specific extensions or create your own.

Examples

You have infinite possibilities, here are some configurations:

Distinguish development environments:

  • Detection: Contains
  • URL fragment: localhost
  • Title: [LOCAL] {title}
  • Icon: select "bullets > bullet-green"

Add staging prefix:

  • Detection: Contains
  • URL fragment: staging.yourapp.com
  • Title: [STAGING] {title}
  • Icon: select "bullets > bullet-amber"

Auto-pin documentation tabs:

  • Detection: Contains
  • URL fragment: /docs/
  • Pinned: ON

Mute video streaming sites by default:

  • Detection: Contains
  • URL fragment: youtube.com
  • Mute: ON

Keep only one email tab open:

Add project info to GitHub repository tabs:

  • Detection: Contains
  • URL fragment: github.com
  • Title: {title} | $2 by $1
  • URL matcher: github[.]com/([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+)

Tab title will be: "user/repo: Description | repo by user"

Display filename for GitHub file views:

  • Detection: RegExp
  • URL fragment: github[.]com/([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+)/blob/
  • Title: {#file-name-id-wide}

Group all production tabs:

  • Detection: Contains
  • URL fragment: app.yoursite.com
  • Title: [PROD] {title}
  • Icon: select "bullets > bullet-red"
  • Group: Production

And now, build your own... 💪

Known issues

Local icon path doesn't work

Related issue: #5

Due to browser security restrictions, this path won't work: file:///icon.png. Your icon will not be shown by Chrome.

Alternatively, you can upload your icon somewhere like imgur.com and paste the direct link in your rule.

Another solution consists in transform your image in the Data URI format. Go to ezgif.com and paste the given output (the long text) in the icon input on your rule.

Chrome system pages chrome://

Related issues: #11, #14

Pages that start with chrome:// URL are protected. No content script can be injected then Tab Modifier will not work on these pages.

Local files file:///

Related issue: #13

By default, extensions don't have access to local files. You have to opt-in "Allow access to file URLs" from chrome://extensions/?id=penegkenfmliefdbmnfkidlgjfjcidia.

Protected action is not triggered

Related issue: #95

Since Chrome 90, the JS event that triggers a refresh or a closure has been reworked. See related issue.

Development

In case you want to contribute or just want to play with the code, follow the guide.

Setup

Download and install NodeJS v20+ to get npm.

💡 Use nvm to allow you to quickly install and use different versions of node via the command line.

Clone the project and install dependencies:

npm install

Type npm run dev to watch your changes inside src/ folder or type npm run build after each change.

Load local extension in Chrome

Go to chrome://extensions/ and enable the "Developer mode".

Click on "Load unpacked extension..." and select the project dist/ folder.

Donation

A huge thanks to all donators!

If you like this extension and want to support its development, you can make a donation by clicking one of the links below.

Security

Tabee takes security seriously. Every code change goes through automated security checks in our CI/CD pipeline:

  • ClamAV Malware Scan: Detects viruses, trojans, and malware in the codebase
  • Gitleaks Secret Scan: Prevents hardcoded secrets, API keys, and credentials
  • Dependency Audit: Checks for known vulnerabilities in dependencies (HIGH severity and above)
  • Test Coverage: Ensures code quality with comprehensive test suite
  • ReDoS Protection: Built-in protection against Regular Expression Denial of Service attacks

For detailed security documentation, see docs/SECURITY.md.

License

See license file.

Frequently asked questions

Is chrome-tab-modifier free to use?

chrome-tab-modifier is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does chrome-tab-modifier do?

Take control of your tabs

What is chrome-tab-modifier written in?

chrome-tab-modifier is primarily written in TypeScript. Its source is publicly available at https://github.com/furybee/chrome-tab-modifier, and it has 703 GitHub stars.