Strategy: Bridge the WSL connection to use the native Windows Chrome installation via port forwarding. This avoids slow rendering inside Linux and utilizes your GPU.
Open PowerShell as Administrator for these steps.
-
Get your WSL Gateway IP (Run this inside your WSL terminal):
ip route show | grep -i default | awk '{ print $3}'
Copy this IP (e.g., 172.25.x.x). We will refer to it as
GATEWAY_IP. -
Configure Port Forwarding (Run in PowerShell Admin, replace
GATEWAY_IP):netsh interface portproxy add v4tov4 listenport=9222 listenaddress=GATEWAY_IP connectport=9222 connectaddress=127.0.0.1
-
Open Firewall (Run in PowerShell Admin):
New-NetFirewallRule -DisplayName "Chrome Remote Debug" -Direction Inbound -LocalPort 9222 -Protocol TCP -Action Allow
Configure Linux to automatically tunnel requests to Windows.
-
Install socat:
sudo apt update && sudo apt install -y socat -
Add Auto-Connect Script: Append this block to your
~/.bashrc(or~/.zshrc) file to ensure the tunnel starts every time you open the terminal:# --- Antigravity / Chrome Bridge Setup --- # 1. Get Windows Gateway IP dynamically WIN_IP=$(ip route show | grep -i default | awk '{ print $3}') # 2. Start socat in background if not already running if ! pgrep -f "socat TCP-LISTEN:9222" > /dev/null; then socat TCP-LISTEN:9222,fork,reuseaddr TCP:$WIN_IP:9222 &> /dev/null & fi
-
Apply changes:
source ~/.bashrc
Go to Antigravity Settings -> Browser Subagent.
-
Chrome Binary Path: (Use the path to your Windows Chrome executable via the
/mntmount)/mnt/c/Program Files/Google/Chrome/Application/chrome.exe -
Browser CDP Port:
9222
If automation stops working after a full PC restart, the WSL IP address might have changed.
- Get the new IP in WSL:
ip route show | grep -i default | awk '{ print $3}'
- Update the Windows Rule (PowerShell Admin):
netsh interface portproxy set v4tov4 listenport=9222 listenaddress=NEW_IP connectport=9222 connectaddress=127.0.0.1