Skip to content

CodexBar leaks zsh/fzf child processes until macOS hits maxproc and new commands fail with "Resource temporarily unavailable" #821

@LPFchan

Description

@LPFchan

Summary

CodexBar appears to leak /bin/zsh and fzf child processes on macOS until the user session gets close to its per-user process limit. Once that happens, unrelated tools start failing to spawn with Resource temporarily unavailable / os error 35.

This looks like a child-process leak, not CPU or memory pressure.

What happened

While CodexBar was running, my shell/build environment started failing to launch new commands. The session was near the per-user process cap:

launchctl limit maxproc
maxproc     2666           4000

ulimit -u
2666

ps -U "$USER" | wc -l
2654

CodexBar itself was PID 581:

ps -Ao pid,ppid,comm | grep CodexBar
581     1 /Applications/CodexBar.app/Contents/MacOS/CodexBar

Its child tree contained a huge number of /bin/zsh processes:

ps -Ao pid,ppid,stat,comm | awk '$1==581 || $2==581'

This returned hundreds of entries like:

  581     1 S    /Applications/CodexBar.app/Contents/MacOS/CodexBar
  663   581 S    /bin/zsh
  664   581 S    /bin/zsh
  665   581 S    /bin/zsh
  ...

And zsh / fzf listing showed many nested and orphaned helpers:

ps -Ao pid,ppid,stat,comm | egrep 'zsh|fzf'

Impact

Once the process count got high enough, unrelated commands started failing to spawn, including shells, build tools, and compilers.

Recovery

Killing CodexBar and fzf dropped the process count back to normal:

  kill -9 581
  pkill -9 fzf
  ps -U "$USER" | wc -l
  418

After that, command spawning worked normally again.

Expected behavior

CodexBar should not accumulate hundreds of zsh children or orphaned fzf processes, and should clean up helper processes reliably.

Metadata

Metadata

Assignees

No one assigned

    Labels

    acceptedConfirmed backlog item or verified open bugarea:performanceCPU, memory, battery, network churn, process leaksbugSomething isn't workingpriority:highHigh priority: confirmed serious bug or blocker

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions