Windows Codex Remote Control fails to enable / pairing times out despite single instance and successful remoteControl/enable response
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
Environment:
- Windows x64
- OpenAI.Codex version: 26.911.7940.0
- Single OpenAI.Codex AppX installation
- Only one ChatGPT/Codex main application instance is running
Problem:
Remote Control cannot be enabled reliably on Windows.
Symptoms observed:
-
Clicking Settings > Connections > Control this computer > Allow often shows:
"Unable to enable remote control. Please try again." -
At one point it also showed:
"Please ensure only one ChatGPT/Codex instance is running." -
After repair/re-login, the UI sometimes progresses to the pairing screen, but then fails with:
"Timed out waiting for remote control to connect" -
The QR/pairing code cannot be obtained reliably.
Troubleshooting already performed:
- Fully restarted Windows
- Ended ChatGPT/Codex processes and reopened only one instance
- Verified there is only one OpenAI.Codex AppX package installed
- Verified the multiple ChatGPT.exe processes are child renderer/GPU/network processes under one main process
- Windows App Repair completed successfully
- Signed out and signed back in
- Retried Remote Control multiple times
- Cleared/renamed Codex plugin cache
- Tested again after restart
- Issue persists
Relevant process information:
- Main ChatGPT.exe process launches normal child processes
- One codex.exe backend process
- One codex-computer-use-swift.exe helper process
- No second independent Codex/ChatGPT application instance was found
Relevant log entries:
remoteControl/enable returns without an RPC error:
method=remoteControl/enable
errorCode=null
Remote connection refresh completes with zero connections:
refresh_remote_control_started previousConnectionCount=0
reconcile_completed
creationFailureCount=0
nextConnectionCount=0
previousConnectionCount=0
refresh_remote_control_completed
autoConnectConnectionCount=0
nextConnectionCount=0
previousConnectionCount=0
Device attestation repeatedly reports unavailable:
[devicecheck-attestation]
DeviceCheck attestation unavailable
deviceCheckLatencyMs=null
durationMs=0
errorCode=1
The Remote connection state also briefly transitions through connected / connection-failed and then disconnected.
Additional app-server/IPC log entries observed:
ipc-connection-reset
Socket error
errorCode=EPIPE
errorMessage="write EPIPE"
Stopping app-server transport
app_server_connection.state_changed
previous=connected
next=disconnected
Observed behavior:
The desktop client can sometimes reach the Remote Control pairing UI, but the remote connection does not remain established and pairing eventually times out.
Expected behavior:
After clicking Allow, the Windows host should remain connected to Remote Control and generate a pairing code / allow the phone to authorize the computer.
Please investigate Windows Remote Control enrollment / DeviceCheck attestation / app-server connection handling for version 26.911.7940.0.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the Windows flow around remoteControl/enable and inspect the refresh_remote_control, reconciliation, DeviceCheck attestation, and app-server IPC logs together. Trace the connected-to-disconnected transition and EPIPE reset to determine why pairing does not persist. Done means Allow reliably produces a pairing code and the host remains connected without the timeout.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- desktop-dev, networking, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100