Skip to content

nikuscs/browser-clutch

Repository files navigation

Browser Clutch ®

Browser Clutch ®

A browser picker for macOS that routes URLs to different browsers based on rules.

Tired of all links opening in the wrong browser? Browser Clutch sits in your menu bar
and intercepts every URL click. Set rules by source app or domain pattern —
Slack links open in Chrome, GitHub in Firefox, everything else in your default browser.

browserclutch.com

Release macOS 14+ Swift 5


Features

  • Source-based routing — Route URLs based on which app opened them
  • Domain-based routing — Match exact domains, wildcards, or patterns
  • Priority rules — Control which rule wins when multiple match
  • Private/Incognito mode — Open URLs in private browsing mode
  • New window option — Force URLs to open in a new browser window
  • Menu bar app — Lives quietly in your menu bar
  • Settings panel — Configure rules, default browser, and preferences
  • About panel — View app version and info
  • XDG config — Uses ~/.config/browserclutch/
  • Zero config start — Works out of the box with sensible defaults

Screenshots

Settings

Menu Bar


Installation

  1. Download the latest DMG from Releases
  2. Open the DMG and drag Browser Clutch ® to Applications
  3. Launch Browser Clutch ®
  4. Set as default browser: System Settings → Desktop & Dock → Default web browser

FAQ

How do I set Browser Clutch ® as my default browser?
System Settings → Desktop & Dock → Default web browser → Browser Clutch ®
Why does macOS say the app is damaged or unverified?
The app is signed and notarized. If you see this warning, re-download the DMG from the latest release — older versions were unsigned.
Where is the config?
~/.config/browserclutch/config.json
Where are the logs?
~/.config/browserclutch/debug.log
How do I configure rules?
Open Browser Clutch ® from the menu bar and use the Settings to add rules.

Pattern Examples

Domain patterns support wildcards and regex:

Pattern Matches Description
*.github.com gist.github.com, raw.github.com Wildcard subdomain
github.com github.com only Exact match
*google* google.com, mail.google.com, google.co.uk Contains "google"
^(?!.*mail).*google.* google.com, docs.google.com Regex: google but NOT mail
^.*\.(dev|io)$ example.dev, app.io Regex: .dev or .io TLDs

Tip: Use the Settings UI to add rules — no need to edit JSON manually.


Roadmap

  • Private/Incognito mode support
  • Open in new window option
  • About panel
  • App menu with Settings shortcut
  • Use standard config directory (~/.config/browserclutch/)
  • Chrome profile selection

Contributing

  1. Fork the repo
  2. Create a feature branch (git checkout -b feature/thing)
  3. Commit your changes
  4. Push and open a PR

Development

make build    # Build
make install  # Build + install to /Applications
make run      # Launch app
make logs     # View debug logs

License

Non-Commercial — Free for personal use, no commercial use without permission.


⚠️ This app was partially vibe coded — it may contain bugs. Use at your own risk.

About

A browser picker for macOS. Route URLs to different browsers based on app or domain rules. Open work links in Chrome, personal in Safari — you decide.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors