set up a channel for agents to communicate and you shouldn't have issues with messy merges.
your force quitting is probably more from your build pipeline than anything agents are doing.
i use an m2 8gb air with no performance issues at up to 10 parallel claude code interactive sessions (ghostty), each with deep/transient subagent heirarchies that mix claude and codex.
very rarely need to force quit. only seen a couple restart-level failures, and those were on me for being cowboy with subagent delegation logic, resulting in 100s of claude moles popping up faster than i could whack them with force close.