Antarcticite is a cross-platform background daemon and CLI utility that acts as your operating system's default browser. Instead of opening all links in a single browser, it intelligently routes HTTP/HTTPS links to specific browser profiles based on configured domain rules. It also features a companion browser extension to handle URL resolution for security wrappers like Mimecast.
- Rule-based Routing: Open links matching specific domains or regex patterns in a designated browser and profile.
- Default Fallback: Automatically fall back to your normal default browser/profile for any unconfigured domains.
- Redirect Resolution: Waits for security wrappers (like Mimecast) to resolve via the companion browser extension before routing the final destination URL.
- System Tray: Runs silently in the background with a system tray icon for easy configuration access.
- Cross-Platform: Designed for macOS, Windows, and Linux.
- Create a configuration file at your OS's standard config directory. For example, on macOS/Linux it typically goes to
~/.config/antarcticite/config.toml.
See config.example.toml for a comprehensive list of examples, including different browsers (Chrome, Edge, Firefox) across all supported operating systems (macOS, Linux, Windows), and various match_domain / match_pattern rules.
Note
The browser field requires the application's executable name or its bundle identifier depending on your OS.
- macOS: Use the Application Bundle Identifier (e.g.,
com.google.chrome,com.microsoft.edgemac,org.mozilla.firefox,company.thebrowser.Browser). You can find this by runningosascript -e 'id of app "Google Chrome"'in the terminal. - Linux: Use the
.desktopfile name or the executable name in your PATH (e.g.,google-chrome,microsoft-edge-stable,firefox). - Windows: Use the executable name (e.g.,
chrome.exe,msedge.exe,firefox.exe).
Tip
Browsers usually store profiles in numbered directories (e.g., Profile 1, Profile 2) rather than the display name you give them. In Chrome/Edge, type chrome://version or edge://version in the URL bar and look at the "Profile Path" to find the exact folder name.
Run the background routing daemon (with system tray):
cargo run --release -- daemonImportant
Run the installation command to register the application as the default OS handler for HTTP/HTTPS:
cargo run --release -- install- Open your default browser.
- Navigate to your extensions page (e.g.,
chrome://extensionsoredge://extensions). - Enable "Developer mode".
- Select "Load unpacked" and choose the
extension/directory from the source code. - Make sure the Native Messaging manifest (
com.antarcticite.router.json) is properly installed in the OS-specific native messaging hosts directory pointing to the built Rust binary (antarcticite).
Warning
The extension cannot communicate with the daemon without a correctly configured Native Messaging manifest.
- macOS Chrome:
~/Library/Application Support/Google/Chrome/NativeMessagingHosts/ - macOS Edge:
~/Library/Application Support/Microsoft Edge/NativeMessagingHosts/ - Linux Chrome:
~/.config/google-chrome/NativeMessagingHosts/ - Linux Edge:
~/.config/microsoft-edge/NativeMessagingHosts/ - Windows Chrome/Edge: Requires a Registry key entry (e.g.,
HKCU\Software\Google\Chrome\NativeMessagingHosts\com.antarcticite.router).
For example, com.antarcticite.router.json:
{
"name": "com.antarcticite.router",
"description": "Antarcticite Browser Profile Router",
"path": "/path/to/your/built/antarcticite",
"type": "stdio",
"allowed_origins": [
"chrome-extension://<YOUR_EXTENSION_ID>/"
]
}