Back to the notebook
An entry In long form

Why I Left Claude Code

Claude Code was muscle memory until my subscription started deciding where I could work. The reason I stayed with Codex came later.

Three open doors in a dim hallway, with bright light spilling through the middle doorway.
Three open doors in a dim hallway, with bright light spilling through the middle doorway.

For a while, opening a repo meant typing claude. I barely thought about it. Claude Code worked, already knew the shape of my projects, and was sitting right there. I had no reason to go looking.

Then I tried Codex. I liked the workflow enough to cancel my Claude subscription and immediately put that money toward Codex. claude disappeared from my day.

The models themselves were basically a tie. Both can do good work. Both can also leave me staring at the screen wondering what they thought I asked for. What pushed me over was the stuff surrounding them.

By then, Anthropic had started drawing a harder line around its subscription. I could use it in Claude Code and Anthropic’s own products, but putting Claude inside another harness meant pulling out a separate pile of API credits.

I thought I was subscribing to Claude. Anthropic treated it like I was subscribing to Claude Code.

With Codex, though, my subscription can come with me. I use it in Codex most of the time because I have spent months getting that setup right, but I can also take it into Pi or OpenCode when I feel like trying something else. The subscription should be able to leave with me.

The instructions can come with me too. Those tools can all read my AGENTS.md and the same folder of skills. Claude Code wants its own .claude directory and CLAUDE.md, which leaves me maintaining another copy of myself for one harness.

Copying a file is easy. Remembering which copy has the newest version of some oddly specific rule about pnpm is where it gets annoying. If I spend an afternoon teaching an agent how I work, I want that effort to survive the next command I try.

The limits made the choice easier too. Claude and Claude Code draw from the same pool, so a long coding session can eat into the allowance I use when I open Claude later. Codex has its own window. I can run it dry and still use ChatGPT for an ordinary question.

The way the Codex team handles those limits matters too. Tibo Sottiaux has made a habit of giving usage back when Codex costs people time. One outage came from a bug that rejected ordinary requests as high cyber risk; it lasted about eight minutes, and the team reset everyone’s limits anyway.

Other times, the reset is just a celebration. The plugin launch got one across every plan. Codex reached three million users and got another; the timing was awkward, so Tibo did it again the next day.

Codex also has a rate-limit reset bank. Some promotions drop a reset there for later, and I can use it from the usage screen when I actually need it. It usually expires after thirty days. Fair enough. I care that it is there when I hit zero halfway through something.

That behavior has done more to keep me around than a benchmark graph ever could. A hard stop in the middle of an agent session sucks. The team seems to understand that in the very practical sense of pressing the reset button.

But I am staying for a more selfish reason too: all my stuff is here now. I have already spent months shaping Codex around the way I work. My projects contain the instructions and skills I use with it.

I know how to give it a task and walk away. Rebuilding that rhythm somewhere else sounds tedious.

So Anthropic could loosen those rules tomorrow and I would be glad it did. I still probably would not go back. Changing models takes a dropdown. Moving the weird pile of context that makes an agent feel like mine takes actual work.

claude used to be the command I typed without thinking. Now I type codex.

Keep browsing Return to the notebook