UNPKG

major-ai-skills

Version:

Installable agentic skills / AI agent skills (SKILL.md) for Claude Code, Cursor, Codex CLI, Gemini CLI & Antigravity - 402+ professional app, token-efficiency, and common-sense skills. SEO/GEO ready.

156 lines (124 loc) 8.08 kB
--- name: velja description: "Configure Velja browser-routing rules and URL handling on macOS, including tracking-parameter cleanup." category: macos risk: safe source: self source_type: self date_added: "2026-08-26" tags: ["velja", "macos-browser-picker", "launchservices", "url-router", "tracking-stripper", "duti", "claude"] tools: ["claude", "cursor", "gemini", "codex"] --- # Velja macOS Smart Browser Picker & URL Router AI Skill Guide (Claude) ## Overview & Engine Architecture Velja is a smart browser picker and URL router for macOS engineered in native Swift by Sindre Sorhus. It registers as the system-wide default **LaunchServices handler (`LSSetDefaultHandlerForURLScheme`)** for `http` and `https` URI schemes. When any application opens a link, Velja intercepts the request, strips marketing telemetry and tracking parameters (**`utm_*`, `gclid`, `fbclid`, `mc_eid`**), evaluates declarative domain regex rules, and routes the sanitized URL to the appropriate browser, browser profile, or native desktop app (**Figma, Zoom, Teams, Notion, Spotify**). Claude operates as a Principal macOS Systems Engineer and URL Routing Specialist, specializing in **macOS LaunchServices default handler configuration (`duti`)**, **regex routing rule architecture**, **URL query sanitization**, and **Velja plist preference automation**. ### Velja Interception & Routing Architecture ``` ┌─────────────────────────────────────────────────────────────┐ │ Velja Engine Architecture │ │ │ │ System Ingress & LaunchServices Layer │ │ ├── Default Scheme Interceptor (`http://` & `https://`) │ │ ├── LaunchServices Default Handler Binding (`com.sindresorhus.Velja`)│ │ └── Modifier Key Overrides (Hold ⌥/⇧/⌃ to Force Browser) │ │ │ │ URL Sanitization & Rule Processing Engine │ │ ├── Tracking Parameter Stripper (`utm_source`, `gclid`...) │ │ ├── Pattern Matching Engine (Domain Prefix / Regex Rules) │ │ └── Native App URL Transcriber (`https://zoom.us/j/...` $\rightarrow$ `zoommtg://`)│ │ │ │ Browser & Profile Dispatch Layer │ │ ├── Multi-Browser Dispatcher (Safari, Chrome, Brave, Arc) │ │ └── Specific Profile Targeting (`--profile-directory=...`) │ └─────────────────────────────────────────────────────────────┘ ``` --- ## Operational Capabilities & Agent Directives 1. **LaunchServices Default Handler Automation**: Configure Velja as the authoritative system handler for web protocols via `duti` and `defaults write`. 2. **Declarative URL Routing Rules**: Construct domain matching tables directing corporate intranets to Chrome/Edge with work profiles, and personal links to Safari/Brave. 3. **Tracking Parameter Stripping Triage**: Remediate broken OAuth / SSO logins where aggressive parameter stripping accidentally removes necessary authentication callback tokens (`code`, `state`, `session_id`). 4. **Native Application Protocol Hand-off**: Configure automatic URL rewriting for meeting and productivity links (Zoom, Figma, GitHub Desktop). --- ## Production Python Automation: Automated URL Sanitizer & Routing Rule Evaluator Save this script as `test_velja_routing.py` to evaluate URL sanitization and simulate target browser matching: ```python """ Velja URL Sanitizer & Rule Evaluation Simulator Strips tracking query parameters and evaluates destination browser based on domain rules. """ import sys import urllib.parse import re TRACKING_PARAMS = { "utm_source", "utm_medium", "utm_campaign", "utm_term", "utm_content", "gclid", "fbclid", "msclkid", "mc_eid", "yclid", "_hsenc", "_hsmi" } ROUTING_RULES = [ (r"^(https?://)?(.*\.)?github\.com/.*", "Google Chrome (Work Profile)"), (r"^(https?://)?(.*\.)?figma\.com/file/.*", "Figma Desktop App"), (r"^(https?://)?(.*\.)?zoom\.us/j/.*", "Zoom Desktop App"), (r"^(https?://)?(.*\.)?internal\.company\.com/.*", "Microsoft Edge"), (r".*", "Safari (Default Browser)") ] def sanitize_url(raw_url: str) -> str: parsed = urllib.parse.urlparse(raw_url) query_params = urllib.parse.parse_qsl(parsed.query, keep_blank_values=True) # Filter out tracking parameters sanitized_params = [ (k, v) for k, v in query_params if k.lower() not in TRACKING_PARAMS ] new_query = urllib.parse.urlencode(sanitized_params) sanitized_url = urllib.parse.urlunparse(( parsed.scheme, parsed.netloc, parsed.path, parsed.params, new_query, parsed.fragment )) return sanitized_url def evaluate_target_browser(url: str) -> str: for pattern, target in ROUTING_RULES: if re.match(pattern, url, re.IGNORECASE): return target return "Default Browser" if __name__ == "__main__": test_urls = [ "https://github.com/torvalds/linux?utm_source=newsletter&utm_medium=email&ref=tech", "https://figma.com/file/abcdef12345/Design-System?fbclid=IwAR0xyz", "https://news.ycombinator.com/?utm_campaign=frontpage", "https://internal.company.com/portal?session=active" ] print("--- [VELJA URL SANITIZATION & ROUTING SIMULATION] ---\n") for raw in test_urls: clean = sanitize_url(raw) target = evaluate_target_browser(clean) print(f"Original: {raw}") print(f"Cleaned: {clean}") print(f"Target: 👉 {target}\n") ``` --- ## Technical Troubleshooting Matrix | Issue & Failure Signature | Root Cause Analysis | Diagnostic & Resolution Pathway | | :--- | :--- | :--- | | **Links Open in Safari Instead of Prompting Velja** | Another browser claimed default HTTP handler status during an update. | 1. Open *System Settings $\rightarrow$ Desktop & Dock $\rightarrow$ Default Web Browser* $\rightarrow$ Select **Velja**.<br>2. Or set via CLI: `duti -s com.sindresorhus.Velja http`. | | **Single Sign-On (SSO) Fails with Missing State Parameter** | Velja tracking parameter stripper removed OAuth `state` or `nonce` token. | In Velja Settings $\rightarrow$ **Tracking Parameters**, uncheck aggressive removal or add the identity provider domain to the whitelist. | | **Figma / Zoom Links Do Not Open in Native Desktop App** | Native app protocol handler (`figma://` or `zoommtg://`) not enabled in Velja Apps tab. | In Velja Settings $\rightarrow$ **Apps**, toggle **Open Figma links in Figma** and **Open Zoom links in Zoom**. | | **Chromium Browser Opens Wrong Profile** | Chromium profile directory name changed or not matching `Profile 1` / `Default`. | In Velja Settings $\rightarrow$ **Browsers**, edit browser configuration and re-select target user profile. | --- ## Command Line Syntax & Default Browser Configuration ```bash # 1. Set Velja as System Default HTTP/HTTPS Handler via duti duti -s com.sindresorhus.Velja http duti -s com.sindresorhus.Velja https # 2. Inspect Velja Preferences via defaults CLI defaults read com.sindresorhus.Velja # 3. Launch Velja Configuration Window open -a Velja ``` ### Essential File Locations - **Preferences Plist**: `~/Library/Preferences/com.sindresorhus.Velja.plist` - **Application Binary**: `/Applications/Velja.app` --- ## Agent Operational Directive > **MANDATORY**: When configuring default macOS browser routing from shell scripts, use `duti -s com.sindresorhus.Velja http` to register LaunchServices bindings deterministically.