← ClaudeAtlas

chrome-multi-profilelisted

Reliably automate Chrome on macOS across multiple profiles (Personal / Work / School / etc.) using Chrome's own authoritative profile catalog (Local State file) combined with stable window/tab IDs. Use when asked to drive a Chrome tab, read a Gmail/ProtonMail inbox, fill a form, scrape a page, or automate anything in a specific Chrome window — especially when the user has multiple Chrome windows open simultaneously. Zero user configuration — reads the user's own Chrome profiles and matches them to open windows via email addresses embedded in tab titles.
yolo-labz/claude-mac-chrome · ★ 2 · Data & Documents · score 71
Install: claude install-skill yolo-labz/claude-mac-chrome
# Chrome Multi-Profile Automation (macOS) Most Chrome automation tooling on macOS addresses windows and tabs by ordinal index (`window 1`, `tab 5`). This silently breaks when the user has multiple Chrome windows open (one per profile — Personal / Work / School), because z-order reshuffles on every focus change, tab creation, or notification. The tool call returns HTTP 200 with a plausible-looking title, but the JavaScript executed in the wrong profile's DOM, form submissions went to the wrong account, and cookies came from the wrong profile. This skill fixes it with a professional, **deterministic** approach that needs zero user configuration: 1. **Read Chrome's own Local State file** (`~/Library/Application Support/Google/Chrome/Local State`) to get the authoritative catalog of profiles on this machine — directory names, display names, and signed-in Google account emails. 2. **Extract email addresses from tab titles** in each open window. Every Gmail/Calendar/Drive/Docs/YouTube/Classroom tab's `title` property contains the signed-in account email (e.g., `"Inbox (10) - you@example.com - Gmail"`). 3. **Match emails to the catalog** → for each open window, you know which profile directory it belongs to, its human-readable name, and its Google account. 4. **Address windows and tabs by their stable string IDs** (`id of window w`, `id of tab t of window w`) — these persist across z-order reorders, tab reorders, and focus changes. They only reset when Chrome restarts, and the li