codex is good, both cli and desktop app, you get lots of usage on any plan. sol is good! and gets the job done, write or dictate a very long and thoughtful prompt, and leave sol xhigh or max fast working on it for an hour or so
omp is an amazing harness, any feature claude code or codex is adding has likely already been here for a couple months. good harness which im suggesting to all my developer friends, but for everyone else codex is the better option due to its simplicity and being the plug and play option
claude is decent, but not great. all models are somehow getting restrictive. you get basically unlimited opus on max plans, fable is good but slow and the random guardrails suck soo much which is why i havent used it once in weeks now.
gemini 3.7 is great for speed. everyone is sleeping on it, including even me
kimi k3 - great for frontend, one of the few models thats willing to commit crimes for you AND has the intelligence to have a chance at actually succeeding;
ds pro and flash are fast but not something id actually use for important things, unlike sol, fable and maybe 3.7 here and there
glm 5.3 i haven't tested yet
honorable mention to local models which are actually getting good now! 5090s will continue to get more and more expensive in the coming months. sadly.
theres way way more than claude in this world and its taking people surprisingly long to figure that out. maybe its for the best!
Codex has been an excellent workhorse - doesn't feel like I have to dance around the guardrails, doesn't lose _everything_ when it compacts, and doesn't litter the workspace with a million and one planning to plan files.
I've had great luck with the ds flash v4, paired with prime-agent for the harness--I like the results a lot. And you get to see thinking tokens.
I haven't liked the model as much in opencode.
Sol & luna have been great everywhere. sol plans, luna builds.
And it can communicate, unlike the gobbledygook that comes out of Claude.
Anyone using Sam Altman's OpenAI is making a poor ethical decision, but anyone using Grok is, objectively, supporting a monster.
As someone who's used Gemini 3.7 Flash (Google sub mostly for the storage) and DS4 Flash a lot (~6B tokens), I'd actually place DS4 Flash (even pre-0713) above Gemini 3.7 Flash. Gemini has a tendency to leave some things unimplemented; perhaps it's agy which frankly leaves a bit to be desired as a harness.
Although I will praise DS4 Flash any day, it no longer makes sense for me after the price increase (GPT 5.6 Luna is a much better price point) and I have completely migrated my high volume workflows to Muse Spark 1.2 Contributor (which I find to perform better than DS4 Flash 0713, happily).
Is this Gemini 3.7 Flash by any chance? Then - No. Not sleeping on it. It’s just not good.
I had a Python package build fail this week due to an unpinned dependency. Gave it to Gemini spent 5-7mins before I noticed it going off in some tangent. Reran with Claude Opus 4.8 - fixed in under a minute.
I know anecdata of one. But something like this has happened every time I test a new model from Google.
With Opus 5.0 being kinda crappy vs 4.8, I think Anthropic is in trouble.
It's expensive but it's doing in hours what no one's done in 2 decades.
Claude's models in my experience do a better job of inferring my intent, or to say it does a better job of giving me the result I imagined in my mind. A recent example was a UI prototype I was building for a desktop application. I had asked GPT's 5.6 Sol to update the open document in the prototype to better reflect the context of the feature I was designing, and 5.6 Sol took it very literally and had just added some text to the currently open document, not what I had in mind. I tried again with Claude Opus 5 and it added a completely new tab with a complete new document that, although imperfect, much better matched my expectations.
You could say this was a prompting skill issue, but seeing how many people are prompting their AI I believe the labs are incentivized to continue to improve their ability to infer intent.
When it comes to the desktop applications though, I find Claude Desktop's output to be incredibly verbose and full of jargon. I feel like it hits me with an entire essay and the UI doesn't have enough typographic hierarchy to make it easy to scan. ChatGPT Desktop is much better in this regard, I feel the output is concise, clear, and gives me just enough info to feel in the loop without being overwhelmed. Even though I have the setting on for technical language, it feels more understandable than Claude. I also feel that ChatGPT's desktop app has a better design and much more polish.
I do not really like how bloated both applications have become though. This weird segmentation of Chat, Work, and Code all just seems like it's pushing a technical limitation onto the user. The other day I opened a document in ChatGPT and asked it to do something, then it told me it could only do it in work "mode", so it then created an entirely new conversation with a reference to the previous conversation. It wasn't a completely new area of the UI either, it just added a "Work" badge to the new conversation in the list. Feels a bit unnecessary, like couldn't you just keep it all within the same conversation?
The speed is the first big contrast; I have a routine multi-step skill that I run several of per week. Opus 5 was routinely taking 2 hours to do it, while older Claude models took around 20 mins; Codex restored that speed.
Second is legibility. Somebody wrote in one of the related discussions yesterday that Claude's current linguistic contortions could legitimately be considered damaging to mental health, which doesn't seem (too) hyperbolic to me. Codex (Sol) isn't perfect but it's much more direct. And so far I haven't seen it display much of an attitude, vs Opus's infuriating passive aggressive sulky know it all personality.
I slightly prefer Anthropic to OpenAI as a company, but I will vote with my wallet and discontinue my max subscription unless Anthropic does some serious damage control within the next week or two.
This post needs an edit. Author is not comparing "Codex" and "Claude". They are comparing Codex TUI/CLI with (presumably) gpt-5.6-sol, against Claude Code TUI/CLI with (presumably) Claude-Opus-5.
Ctrl + f > [5.6, sol, sonnet, opus or fable] yields no results.
"Claude" is a product family, which includes Models, and Harnesses (and probably more). "Claude code" covers both the Claude Code TUI, and CC in the Claude desktop app.
"Codex" is the same, and could refer to the Codex TUI, or Codex in the ChatGPT (formerly codex) desktop app. (And well, historically, gpt-5.*-codex.)
Hearing "Yea Claude is great for coding" takes an hour off my life.
Something something "Honey why don't you finish up with your Nintendo and come to dinner?"
I mostly do very obsessive, tightly scoped, carefully thought out small changes on a fairly boring stack, one interaction at a time, verifying functionality and code. I know what I am doing, but I also know what I don’t like doing (the same exact set of things I’ve already done a dozen times in my career)
Wow, I made exactly the opposite experience. Codex loves to make things as complicated as possible, even ignoring instructions and predefined skills. Claude behaves way more pragmatic. Maybe depends on the type of work one does, or even which programming languages/frameworks are used?
Great analogy for some reason. At fist I felt Codex Sol was a bit more cold. But now that I've worked with it for several weeks it has grown on me, even shown some personality. I appreciate that it is a bit more business-like, Fable is a bit too friendly sometimes when it ought to be focused on work. Codex can be a bit more nit-picky.
I agree with most of his other observations. I've already started to bin tasks based on which model I feel is best suited. In general, for well scoped and straight ahead tasks where banging out code is what I want I reach for Codex. For less specced tasks where I need a broader view and want the model to fill in more details I reach for Fable.
Both are great and they make a good team together.
Sol medium is a great balance between speed and being thorough, but it’s quite expensive. Luna xhigh seems to compensate for slightly lower intelligence by thinking and reasoning for longer, so tasks can take more time to complete. But it’s crazy cheap.
I also have some custom evals using promptfoo to make sure I’m not introducing regressions when switching models. So far, Luna xhigh has been really, really good for the price.
Don’t sleep on it. Give Luna a try.
Sol is for routine work, Opus for frontend/design, and Fable for more complex / ambiguous / architecture work. Fable works extremely well to drive Sol as a subagent.
Fable is the only one you can actually trust to not look at the code, but Sol is somehow still more pleasant to work with, especially in fast mode. Opus is the enemy, and it will make you insane if you talk to it for too long.
What a brave new world we're in, where this is necessary. Regardless, it's appreciated. Although, I have the feeling that those using an LLM to do most of their writing will be less likely to include such a disclaimer.
Why is fewer comments a good thing?
You'll ask it to do something and it'll comment the code with an answer to what you asked it, rather than just explanatory comments to whoever comes after.
There's also a second issue that if the code is actually incorrect, the comment can nevertheless bolster the case for it.
Not to Claude – its own, old comments have helped me/it solve new issues on more than one occasion.
It felt like it was commenting on the diff sometimes instead of what the code was doing.
//add returns the sum of x and y
//per section 2.1 of addition-implementation-plan.md sum is designed as the seam for user addition interfaces.
//previously sum added numbers, now it adds numbers
def add(x, y):
return x + yIt's really time to move to OpenAI...
Digital ocean particularly looks promising as well.
It writes out stories describing what isn't there or what used to be there. It's usually not helpful, just noise. It also likes to write it in very verbose AI-styled prose.
Claude very often litters code with comments about decisions that were made within a single session/pull request, its just noise.
Dude, just talk about the current state of the code!
Useful for the LLM to know the "why", but not something a human would do, unless it's a very critical and confusing part of the code.
Fewer AI-generated comments is generally a good thing.
I can really recommend the book Clean Code, here is a summary: https://gist.github.com/wojteklu/73c6914cc446146b8b533c0988c...
One thing I don’t love about codex/sol is I find it tends to overengineer and be overly cautious.
I was using it to do create some scraping + data processing.
It went kind of crazy on the provenance, need at least 3 sources of consensus before promoting facts type bullshit.
defined a bunch of enums and gates.
I just wanted scrape some site data and put it into a SQLite dB. Like chill codex.
I feel like Claude is better at that.
It also doesn't have a clear idea of what the actual threat model is, and builds all kinds of extremely defensive systems to account for imagined hostile actors. I'm like "Dude, it's only our systems that are creating these SVGs, they're never going to be user supplied, so you don't need to write an entire validation and sanitation framework here."
It also seems to treat the desired initial state of something as a permanent invariant and designs elaborate tests to ensure that it remains that way. Then when you make one little change it has to go and update a ton of tests it created.
I've had to rip out a bunch of overengineered jank from several feature implementations, and in doing so I ended up having to create retrospective documents that warn against this kind of behavior that I'll have the model review whenever a plan begins to go sideways.
I feel like codex/sol is better at well scoped hard technical problem.
Where it can sort of run this brute force analytical loop.
Like doing performance optimization or other search type problems. I think the math proofs are good examples of this.
A lot of people in the comments do have a software engineering background. People at different skill levels in different backgrounds are going to be using these tools in different ways, and that's going to heavily impact their experiences with these models.
Sure, there are differences between Fable and Sol. But I've even seen people on here saying that they're getting better mileage out of Qwen models they're self hosting.
I think the driver is just as important than the car, when it comes to this sort of stuff.
I do agree claude looks for more things to do in your repo, whereas codex is more likely to do what its old and stop. Which is better is personal preference as far as I can tell.
Damn, my experience is the complete opposite of this. I have posted about it a few times, e.g. https://news.ycombinator.com/item?id=49348265
tl;dr I gave GPT 5.6 a small-medium sized ticket, which should have been several hundred lines plus tests. It ended up creating a 25,000+ line diff. Another GPT 5.6 Sol with fresh context looked at the worktree and said 98% of it should be thrown away. Claude thought the same, and suggested that several dozen compactions the model went through over several hours must have caused it to go adrift. I guess that's one consequence of having a relatively small context window.
I still use Sol quite a bit. I find that it's consistently the opposite of what the author describes: it's too relentless. It doesn't know when to stop. Opus is the opposite: it'll give up a bit too easily. If everything goes well that's not an issue, but often times it'll say things like "task is done, btw I couldn't do X Y Z" and X Y Z will be some important verification step that failed because another agent was using that resource or something.
At this point I trust GPT 5.6 mostly with surgical changes, or general codebase exploration tasks. It is a faster model, so it's easier to get small things done with it. For everything else I prefer Claude, despite its annoying tendencies.