macOS: visible Codex window drives WindowServer to 36–41% CPU on M4 MacBook Air
Summary
On an Apple M4 MacBook Air, opening the visible ChatGPT/Codex desktop window consistently drives WindowServer to sustained high CPU and makes the machine noticeably hot. Closing or hiding the window drops the load immediately.
This appears to be a visible-window rendering/compositing issue rather than agent execution, SSH, or a general macOS power setting.
Environment
- Codex / ChatGPT desktop app:
26.707.31428(build5059) - macOS:
26.5.2(25F84) - Hardware: Apple M4 MacBook Air, built-in 2560x1664 display only
- No external display connected during the reproduction
Reproduction
- Start ChatGPT/Codex Desktop normally.
- Open a Codex task and leave the app window visible.
- Observe Activity Monitor.
- Hide or close the Codex window.
- Observe that
WindowServerfalls immediately; restore/show the window and it rises again.
Observed
With the window visible:
WindowServer: approximately 36% to 41.5% CPU- ChatGPT/Codex main process: approximately 10% to 12% CPU
- Codex GPU service: approximately 4% to 6% CPU
- Codex renderer: normally a few percent, with higher spikes while the task UI updates
When the ChatGPT/Codex window is closed/hidden, WindowServer drops to about 10% CPU. Opening the visible window brings it back to roughly 36% to 41%.
The issue persisted after fully restarting the app. A long, tool-output-heavy task increases renderer load further, but the visible blank/new task window still keeps WindowServer abnormally high.
Notes
- Edge and the UU Remote user agent were closed/disabled during diagnosis; they were not the remaining cause.
syspolicydwas only around 3% to 5% and was not the primary source.- This matches the visible-window behavior described in #30464 and the foreground-heating report in #25036, but reproduces on the newer
26.707.31428build.
Expected behavior
An idle or lightly used visible Codex Desktop window should not keep WindowServer, the GPU service, and renderer CPU high enough to heat a fanless MacBook Air.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗