Skip to content

Instantly share code, notes, and snippets.

@sickmz
Forked from junielton/antigravity-browser-wsl.md
Created November 30, 2025 11:19
Show Gist options
  • Select an option

  • Save sickmz/013632bd1bf04153929b3956c1e3c962 to your computer and use it in GitHub Desktop.

Select an option

Save sickmz/013632bd1bf04153929b3956c1e3c962 to your computer and use it in GitHub Desktop.
How to Run Antigravity Browser Automation on WSL2

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.

1. Windows Setup (One-Time)

Open PowerShell as Administrator for these steps.

  1. 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.

  2. 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
  3. Open Firewall (Run in PowerShell Admin):

    New-NetFirewallRule -DisplayName "Chrome Remote Debug" -Direction Inbound -LocalPort 9222 -Protocol TCP -Action Allow

2. WSL Setup & Automation

Configure Linux to automatically tunnel requests to Windows.

  1. Install socat:

    sudo apt update && sudo apt install -y socat
  2. 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
  3. Apply changes:

    source ~/.bashrc

3. Antigravity IDE Configuration

Go to Antigravity Settings -> Browser Subagent.

  • Chrome Binary Path: (Use the path to your Windows Chrome executable via the /mnt mount) /mnt/c/Program Files/Google/Chrome/Application/chrome.exe

  • Browser CDP Port: 9222


Troubleshooting

If automation stops working after a full PC restart, the WSL IP address might have changed.

  1. Get the new IP in WSL:
    ip route show | grep -i default | awk '{ print $3}'
  2. Update the Windows Rule (PowerShell Admin):
    netsh interface portproxy set v4tov4 listenport=9222 listenaddress=NEW_IP connectport=9222 connectaddress=127.0.0.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment