Tools: I Built a macOS App to Stop Links From Opening in the Wrong Chrome Profile

Tools: I Built a macOS App to Stop Links From Opening in the Wrong Chrome Profile

Source: Dev.to

What I Wanted ## So I Built It ## The Harder Part: Links Inside Chrome ## The Thing I Didn't Expect I use multiple Chrome profiles. Every morning I open Slack, click a Notion link, and watch it open in my personal profile. I copy the URL, switch to the work profile, paste, hit enter. Then I click a GitHub link in email — same thing, wrong profile. Copy, switch, paste. I've been doing this dozens of times a day for years. At some point I stopped counting and started building. I wanted something that covered the full loop. So I decided to build it myself. LinkPrism is a macOS menu bar app. You set it as your default browser, add a few rules, and that's it. Rules can be exact host matches, wildcards, or regex. For domains you use across profiles, there's an "Ask" mode — a profile picker pops up and you can check "Don't ask again for this URL." This handles links from Slack, email, Telegram — anything outside Chrome. But there's a catch. Links clicked inside Chrome never hit the OS default browser handler. Chrome handles them internally. The app can't see them. So I built a companion Chrome extension (Manifest V3) that: Now the full loop is closed. External links go through the app. In-browser links go through the extension. No gaps. After using it for a while, I realized the annoyance wasn't just the extra clicks. It was the context switching. Every wrong-profile link pulled me out of whatever I was focused on. Fixing this tiny friction removed a surprising amount of daily cognitive noise. If you juggle Chrome profiles, you might not even notice how much energy goes into this routine until it's gone. Feedback, issues, and PRs are all welcome. If you have a different approach to this problem, I'd love to hear about it in the comments. Templates let you quickly answer FAQs or store snippets for re-use. Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's permalink. Hide child comments as well For further actions, you may consider blocking this person and/or reporting abuse CODE_BLOCK: notion.so → Work github.com → Personal *.atlassian.net → Work docs.google.com → Ask every time Enter fullscreen mode Exit fullscreen mode CODE_BLOCK: notion.so → Work github.com → Personal *.atlassian.net → Work docs.google.com → Ask every time CODE_BLOCK: notion.so → Work github.com → Personal *.atlassian.net → Work docs.google.com → Ask every time - Route links from outside Chrome (Slack, email) and links clicked inside Chrome - Set a rule once and forget about it — no profile picker every time - Support wildcards and regex, not just exact domains - Syncs rules from the macOS app via a local HTTP server on 127.0.0.1:19384 - Detects which Chrome profile it's running in using chrome.identity - Matches rules client-side on every navigation - Reroutes only when the current profile is wrong — no unnecessary redirects - GitHub: badaverse/linkprism - Download (.dmg): Latest release - Requirements: macOS 14+