Codex App on Windows WSL responding very slow compared to CLI
Resolved 💬 8 comments Opened May 4, 2026 by bkntr Closed Jul 13, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor)
responded on this thread — see the highlighted reply below.
What version of the Codex App are you using (From “About Codex” dialog)?
26.429.30905
What subscription do you have?
Pro $100
What platform is your computer?
Host: Microsoft Windows NT 10.0.26200.0 x64
WSL: Linux 6.6.87.2-microsoft-standard-WSL2 x86_64 x86_64 ; Ubuntu 24.04.4 LTS
What issue are you seeing?
Sending the same message with gpt-5.5 low reasoning fast mode, in the app it takes 30-60 seconds to respond (stuck on Thinking...), in the CLI it is almost immediate. I am on Windows 11 and WSL on Ubuntu 24.04.4 LTS.
What steps can reproduce the bug?
Send the same message in the App or the CLI on Windows 11 and WSL on Ubuntu 24.04.4 LTS.
What is the expected behavior?
_No response_
Additional information
_No response_
8 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
This request took 5 full minutes to be sent for me
<img width="766" height="107" alt="Image" src="https://github.com/user-attachments/assets/51f1bb4a-0205-4850-8324-b1cc1f7fa570" />
also taking a very long time to send messages for me in codex app when in wsl
Additional reproduction: Desktop WSL is 60-106s to first token while WSL CLI is ~10s, even when proxy is active
I am seeing the same class of issue on a newer Codex Desktop build, with a more controlled ping/pong reproduction.
Environment
OpenAI.Codex_26.601.2237.0_x64__2p2nqsd0c76g00.136.0-alpha.2runCodexInWindowsSubsystemForLinux = truewsl.execodex app-server --analytics-default-enabledHTTP_PROXY=http://127.0.0.1:18081HTTPS_PROXY=http://127.0.0.1:18081NO_PROXY=localhost,127.0.0.1,::1,100.64.0.0/10,.ts.net,...Expected behavior
For a trivial
pingprompt withmediumreasoning and no tool work, Codex Desktop WSL should respond in roughly the same range as pure WSL Codex CLI. In this environment, pure WSL Codex CLI is about 10s for the same ping/pong style test.Actual behavior
Codex Desktop WSL consistently spends around 60-106s before the first assistant token, even for a trivial
ping->pongturn.Captured Desktop WSL examples:
ping-16,medium019e8d06-9e1a-7cb2-810a-2fa1f326b1632026-06-03T10:28:18.775Z2026-06-03T10:29:36.617Z92956ms92676ms26801601650ping-17, same thread,medium019e8d35-0610-78a0-b4a7-5a4db6d499c82026-06-03T11:54:01.258Z2026-06-03T11:55:08.945Z68789ms68569ms67687ms14072960050ping-17, later clean sample,medium2026-06-03T11:59:03.096Z2026-06-03T12:00:46.112Z106056ms105613ms103016ms1408513696502026-06-03T12:48:52.020Z2026-06-03T12:49:45.295Z60038ms59946ms53275ms152481164850Important diagnostic: proxy is not missing
This does not look like a simple missing-proxy problem.
The WSL app-server logs show that the Desktop WSL agent is using the proxy and that the local proxy connection/HTTP handshake completes quickly:
The packaged Desktop app code path also appears to include
HTTP_PROXY,HTTPS_PROXY, andNO_PROXYin the WSL environment allowlist. It does not includeALL_PROXYor lowercase proxy env vars, but the logs above show that the HTTPS proxy path is active.Things ruled out in this reproduction
reasoning_tokens=0pong/ 5 tokensSuspicious area
The delay appears to happen after Desktop accepts/sends the turn and after the WSL app-server can reach the proxy/chatgpt.com path, but before the first assistant token is delivered.
In the app-server SQLite logs, there is a long quiet gap during the actual wait. The logs show proxy setup, plugin/remote-control activity, and HTTP handshake, but not enough detail around the model request/stream stage to identify where the 50-100s are being spent.
There is also background plugin/browser noise:
403 Forbidden/ API rate limitHowever, these do not seem to be the sole root cause, because a later clean same-thread
pingstill took over 100s.Related issues
Request
Could the Codex team please inspect the Desktop Windows + WSL
codex app-servermodel-turn path, especially the interval between:turn/startIt would also help if app-server logs exposed timing for the actual model request/stream stage, because the current logs show a long uninstrumented wait.
seeing the same thing. App is much slower when WSL backend is enabled than cli
Same problem here, running Codex app on Windows with WSL enabled. It was working fine since last week, this week the windows app is extremely slow.
I run a simple question "What's your name?" and it took almost 2 minutes in the Windows app to get an answer. I run the same command on wsl cli and answer took a couple of seconds only.
I also have a mac laptop side-by-side with the windows machine and it also answer way faster than the windows app.
I hit the same symptom recently: Codex Desktop on Windows with WSL backend took ~1-2 minutes to answer even a trivial
ping.The direct cause is that codex (haven't verify if it's WSL backend specific) is triggering some non-critical app/plugin traffic to remote just before starting a turn. Those traffic are BLOCKING and will retry several times automatically, so if you have problem connecting to any of those service, your codex will sit on “Thinking...” until timeouts/retries completed, around 90 seconds in my case, and finally give up and send your REAL prompt, looking like thinking very slow. What's worse, this process seems repeating on EVERY turn if last turn fails, rendering codex nearly useless as it sits there waiting for a 90 seconds timeout before doing any real things on every single turn.
This could be verified by applying following patch:
backendsetting from WSL to windows in settings UI and restart codex. In my case, issue solved immediately%USERPROFILE%/.codex/config.tomlunder[features]section, then restart codex. This may be redundant but got my issue solved with backend setting staying at WSLIf after applying any of these fix you can get a 'pong1' in seconds after starting a new thread with 'ping1', then the issue can be narrowed to startup/plugin network calls. In my case, the root cause is a very specific proxy issue affecting HTTP/2+WS connection and is solved by forcing
"domainStrategy": "UseIPv4"on my Xray proxy server, which may sounds alien to you, but the debugging path should be generic and you've got a fast codex back working for you. Ask it to check those and find the root cause plus a fix:%USERPROFILE%/.codex/sessions/YYYY/MM/DD/rollout-*.jsonltime_to_first_token_msand timestamps betweenuser_messageand first assistant output.%USERPROFILE%/.codex/logs_*.sqlite/tmpfirst, then queried it withsqlite3because codex will keep it open.chatgpt.com,ab.chatgpt.com,plugins,remote installed plugin,websocket,timeout, etc.chatgpt.com,ab.chatgpt.com, GitHub, or plugin/app endpoints.Very glad to got my fast codex back!
-----------UPDATE-------------
The issue appears for absolutely no reason again and I'm sticking with the following destructive patch for now until this issue got fixed
Seems to be fixed in 26.707.61608, closing. Thanks Codex team!