ChatGPT/Codex Desktop leaks zombie child processes on macOS, eventually causing launch-failed 1003
Summary
ChatGPT/Codex Desktop appears to leak zombie child processes on macOS when running local command/tool executions. The zombie processes accumulate under the ChatGPT.app parent process until macOS can no longer launch new apps or create new processes.
Eventually the system starts showing:
launch-failed, code:1003Resource temporarily unavailable (os error 35)
Force quitting ChatGPT.app clears the zombie processes temporarily, but they begin accumulating again after reopening the app and using Codex local command execution.
Environment
- OS: macOS 14.0
- Build: 23A344
- App: ChatGPT.app / Codex Desktop
- App path:
/Applications/ChatGPT.app/Contents/MacOS/ChatGPT - Codex Framework observed in process args: 151.0.7922.71
- Machine: Apple Silicon arm64
- Date observed: 2026-08-06
- Timezone: Asia/Shanghai
Impact
After enough zombie processes accumulate, macOS reaches its process creation limit and the entire system is affected. Other unrelated apps can no longer open.
This is system-wide, not limited to Codex.
Evidence
Observed before force quitting ChatGPT.app:
zombies=668 parent=608 /Applications/ChatGPT.app/Contents/MacOS/ChatGPT
After restarting ChatGPT.app, zombie processes began accumulating again:
10:59:05 chatgpt_pid=7641 chatgpt_zombies=62 total_zombies=62 total_processes=649
10:59:15 chatgpt_pid=7641 chatgpt_zombies=68 total_zombies=68 total_processes=651
10:59:25 chatgpt_pid=7641 chatgpt_zombies=74 total_zombies=74 total_processes=657
Later in the same session:
11:16:33 chatgpt_pid=7641 chatgpt_zombies=696 total_zombies=696 total_processes=1281
11:16:43 chatgpt_pid=7641 chatgpt_zombies=702 total_zombies=702 total_processes=1287
11:16:53 chatgpt_pid=7641 chatgpt_zombies=708 total_zombies=708 total_processes=1294
Process limits:
launchctl limit maxproc
maxproc 2666 4000
When the process table gets exhausted, Codex local execution fails with:
Resource temporarily unavailable (os error 35)
Reproduction
- Open ChatGPT.app / Codex Desktop on macOS.
- Use Codex local command execution repeatedly.
- Observe
<defunct>child processes accumulating under/Applications/ChatGPT.app/Contents/MacOS/ChatGPT. - Continue until enough zombie processes accumulate.
- macOS eventually fails to launch apps with
launch-failed, code1003.
Expected behavior
Exited child processes should be reaped by the ChatGPT/Codex parent process. No <defunct> processes should accumulate after local command execution finishes.
Actual behavior
Child processes remain as <defunct> under ChatGPT.app. The count grows steadily over time.
Workaround
Force quitting ChatGPT.app clears the zombie processes temporarily. Avoiding Codex Desktop local command execution slows or prevents the issue.
Additional note
This may be related to the desktop app command execution path failing to wait() or otherwise reap exited child processes.
1 Comment
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action