OpenAI merged ChatGPT and Codex into one app last week. My workflow added ChatGPT as a third role.
The Codex desktop app updated in place and now houses Chat, Work, and Codex modes on macOS and Windows. That’s the shipping story. It’s a UI move. The models underneath are different from each other, and the work they’re good at is different. Merging two apps into one shell doesn’t collapse those differences. It gives them the same launcher.
The last time I wrote about my agent stack, in Divided Intelligence, there were two roles. Codex handled the system layer. Files, terminal, the moving parts. Claude handled the human layer. Whether something reads right, whether the structure holds. Two roles, written down, no drift. That architecture holds. What changed is that I noticed a distinction I’d been missing.
Claude was doing two different jobs, and I was pretending they were the same job. One was editorial discipline: does this fit the lane, does the structure hold, does the sentence sound like a person meant it. The other was early brainstorming: what could this even be, before it has a shape. Both are useful. They aren’t the same mode, and asking Claude to do the second one exposed why it wasn’t its strength.
Claude reads my local folder. It knows my skill files, my preferences, how I lane content, the whole system I’ve been writing down for months. That calibration is the point of the architecture in the first place. It’s why the editorial discipline is sharp. But calibration cuts both ways. When I ask Claude to brainstorm, the ideas that come back are already pre-shaped by the same structural thinking Claude has absorbed. They fit the system too well. They can’t really surprise me, because the system is already inside them.
ChatGPT doesn’t have that. It has persistent memory and Custom Instructions, but it can’t read my local folder, can’t be primed with the skill files, doesn’t know how I’d normally lane-place a piece before I say anything. In the disciplined-execution roles Codex and Claude hold, that would be a weakness. When I want an unwelcome idea, that’s the point. Claude’s power is its weakness. ChatGPT’s weakness is its power. That’s how I split the intelligence.
Here’s the thing I don’t usually say out loud. Working with two disciplined assistants gets lonely. Both know the system. Both stay in bounds. Both sharpen the same edge from different sides. The work is cleaner than it used to be. What was missing was the mode where an idea shows up sideways, from someone who doesn’t know the house rules and doesn’t need to. That’s where ChatGPT fits now.
The workflow, as it stands: ChatGPT generates. Claude filters and shapes. Codex ships. Three stages, deliberate handoffs, the roles written down the same way the two-role version was.
None of that changed because OpenAI merged two apps. The pitch keeps insisting on one AI that does everything. My desk keeps getting further from that. One shell, three roles. If anything, the app consolidation makes the role architecture easier to see. The launcher is one icon. The work is three different jobs.
