Codex Relay fails on Windows ARM64 (Snapdragon) due to missing native bindings; WSL relay advertises unreachable IP

Open 💬 0 comments Opened Jul 9, 2026 by SebastianKeltz

What version of Codex CLI is running?

Not installed (using the Windows Codex desktop app with Codex Relay)

What subscription do you have?

ChatGPT Plus

Which model were you using?

GPT-5.5

What platform is your computer?

Windows 11 ARM64 (Snapdragon X Elite) WSL Ubuntu 26.04 LTS

What terminal emulator and version are you using (if applicable)?

Windows Terminal PowerShell 5.1 Ubuntu 26.04 (WSL)

Codex doctor report

Not available

What issue are you seeing?

I'm unable to pair the Codex Relay iOS app with my Windows ARM64 (Snapdragon) PC.

Issue 1

Running

npx codex-relay@latest

or

npx codex-relay@1.2.0

in Windows PowerShell fails immediately with:

Cannot find native binding

Cannot find module
@tursodatabase/database-win32-arm64-msvc

Node version:
v24.18.0

Issue 2

As a workaround I switched the Codex app to use WSL.

Ubuntu launches correctly.
SSH works.
The SSH server is running.
I can SSH into Ubuntu from Windows.
Tailscale is installed and connected on both my Windows PC and iPhone.

Codex Relay starts successfully inside WSL and displays a QR code, but advertises:

http://172.30.128.224:8787

which is the WSL private IP.

The iPhone always reports:

"Use the same Wi-Fi on your phone and computer. If that is not possible, turn on Tailscale on both devices and scan again."

No approval code ever appears in the relay terminal.

<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/5d680b5c-8436-4e7c-bd37-5259bcf4d3ee" />
<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/ce07dbbb-f3a9-429a-92e6-4174e70974a8" />
<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/d145eff4-5794-4691-92ac-d94d38f0463b" />

<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/d145a104-d6e8-4bb8-bda5-6f9da5bb8c5c" />
<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/7e18de29-632d-4e68-9af9-883cbe2bc3eb" />
<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/07bcda28-c219-4df0-af5f-2840cf37285a" />

What steps can reproduce the bug?

  1. Use a Windows 11 ARM64 Snapdragon computer.
  2. Install Node.js.
  3. Run:

npx codex-relay@latest

The relay crashes because the ARM64 Turso native binding cannot be found.

As a workaround:

  1. Switch Codex App to WSL.
  2. Start codex-relay inside Ubuntu.
  3. Scan the QR code with the Codex Relay iOS app.

The phone cannot connect because the relay advertises the WSL IP instead of a reachable address.

<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/136c3caa-f76c-452f-8ca2-8075939ea01b" />
<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/1f974b7b-d099-4296-a72e-23c38b48b90a" />
<img width="660" height="1434" alt="Image" src="https://github.com/user-attachments/assets/e1bb84a5-630c-4c60-903f-5e576019bef7" />

What is the expected behavior?

Codex Relay should work natively on Windows ARM64.

If run inside WSL, it should advertise a reachable Windows or Tailscale address instead of the WSL private IP so the mobile app can pair successfully.

Additional information

The issue appears specific to Windows ARM64 (Snapdragon).

SSH connectivity is working.

WSL networking is working.

Tailscale is connected on both devices.

The failure occurs before the phone can request pairing, so no approval code is generated.

View original on GitHub ↗