If you're experiencing this as “Claude vs Codex”, you're missing the good stuff. For weeks I've been running a Frankenstein of Claude Code, codex CLI and grok-cli (thanks Raffaele), and something must be working: I've been flying through PRs at Yempik and at Intarget, and more importantly I've been merging code that hasn't broken prod (yet). Cheaply, within my subscription limits. All four of them. But if you sleep and eat, you only need one.
The hierarchy
“Bro just spawn codex” is the vibe. The smarter model spawns whatever cheaper, faster CLI you have, on well-specced, scoped, verifiable units of work. I keep fable (rigorously high, nothing more) as the only one I actually trust for brainstorming and important decisions: for any topic where I want the model to tell me something I probably don't already know. 5.6-sol and opus do the work; sometimes they jump in to review.
## the cast
fable (high) brainstorm, hard decisions,
final seal. nothing else.
5.6-sol (high) the work. sometimes review.
opus the work. sometimes review.
codex / grok tests, screenshots, computer
use, all the grind. way cheaper.
rule: the smart model's usage bar does not
move until it's time to place the seal.What matters: after fable has specced the most beautiful piece of software engineering work, that usage bar does not move until it's time to place the seal of approval on the final deliverable. Writing code, tests, reviewing, taking screenshots, computer use to verify features live like a real user (do this via codex, it's much cheaper): all of it goes to something dumber and faster. The bottleneck in these systems is the smartest model anyway. The actual protocol is more boring than the vibe, and that's exactly why it works:
## delegation protocol
- spec first: goal, constraints, files touched,
definition of done, how to verify.
- spawn the cheapest CLI that can hold the
unit. scoped, verifiable, boring on purpose.
- workers write code, run tests, take
screenshots, click around like a real user.
computer use goes through codex.
- stuck twice on the same thing? escalate
with a diff and one paragraph. not the log.
- the smart model reviews last. that is the
bottleneck. protect it.Subagents for everyone
And the coolest part: you can run the heavy orchestration with codex subagents. That's how you use it on a 1x/5x plan without having to take four days off on a Monday afternoon. It's not even in my CLAUDE.md yet: I just ask nicely and it does it, perfectly. The idea comes from a post by Theo describing exactly how to do this with codex, but it applies to any CLI - it's what we've been doing all along, just not for subagents.
> plan this with me. then use codex subagents
> for each unit of work, and verify everything.
> my usage bar should not move until review.All of this is very simple and fits inside your head, which is the most important thing. It's literally ~30 lines of markdown. And please notice: this is not a skill. My ~/CLAUDE.md is one of the few things I could rewrite from scratch after an apocalyptic event, and this piece is core, as it should be. I've started collecting these tips in code-os (si apre in una nuova scheda): if you already know cowork-os, it's the engineer's version, because it was revealed to me in a dream that the world desperately needed yet another markdown repo. Next on the list: ollama, because the first thing I'll do with the new machine is set it on fire playing with deepseek.
One read that has shaped my engineering work lately, in every field: prompts are technical debt too (si apre in una nuova scheda) by Sean Goedecke. No summary from me: read it and understand it, it's more useful that way.
// ask your agent which parts of this are dumb and which will actually help you.