The single biggest annoyance with Opus 5 is that it writes too elliptically.
Sentences that orbit a point, then jump to it like it's a revealed insight.
Unnecessarily abstract phraseology. Constantly using inanimate nouns as the subjects in sentences in order to unlock variety in verb choice, especially when it helps construct a sentence where the real action can 'land' like a surprise at the end.
It is definitely more capable, and yes, I've found it can make unwarranted decisions, but actually I've found Fable worse for that, particularly if it's off in a subagent somewhere out of sight.
And comments are out of control. I have a subsystem in my hobby app that I wrote over a couple of weekends with Opus + Fable. After ~30 or so commits it apparently started instructing subagents to copy the "existing verbose comment style of the codebase" - a verbose style it initiated. A review of the code showed it was approaching 3:1 comments to code ratio. I spent a day's worth of tokens (5x) rephrasing and eliminating comments.
> The single biggest annoyance with Opus 5 is that it writes too elliptically.
This is even more painful for non-native English speakers like myself.
I feel fairly comfortable reading academic papers or in general, communicating in professional context.
But with Opus 5, it feels like reading a literature book: load-bearing, inert, wholesale, hunk, verbatim, and so on... I can figure out the meaning, but working with CC became unenjoyable.
As a native speaker, it feels like reading an impression of a literature book by a high school English class’s most overconfident student who’s only ever read LinkedIn-speak.
Anyway, you might have more luck just writing to it in your native language. It’ll be equally crummy, but maybe you’ll find it easier to decode.
I dont know what ASD-STE100 is before but I use the exact instruction (without the ASD code) to Claude since the very beginning, and with Opus 5 I have to remind it very often to rephrase the documents
CLAUDE.md is mostly powerless against the reinforcement learned crap. I'm up to three separate instructions telling it to cut out the hyper verbose, retelling history comments and it still writes them every time.
The best trick I have after asking it nicely in all sort of ways is:
1. Have it build a scoring script that penalizes words outside a simple English list and approved jargon. Penalize sentences over 15 words as well. Add whatever else.
2. Run it in a loop to reduce the score while preserving intention
This works much better than other ways I’ve tried. Of course it costs more. And I would apply it only to the output to the user, not the thinking process (I think the AI thinks better with their crazy English)
Of course, sometimes nuance is lost by this process. That’s just the nature of making things simpler.
On many sessions I have taken to adding an all caps "ANSWER WITH ONE PARAGRAPH ONLY" scream at the end of all my input. It's the only thing that gets results.
Thank you, my dict.cc search history contains exactly some of these words. I felt like my english got much worse but when Claude kept talking about "hunk" over and over I felt like the problem is maybe not on my end.
"hunk" is git terminology. When you use `git add --patch` (which you probably should, if you use `git add` at all) you get prompted "Stage this hunk [y,n,q,a,d,e,?]?" which is self-explanatory (?) and the hunk refers to whatever change git is highlighting at the moment.
I wondered how far back the usage of that term went. I was familiar with it in patch, so I did a little digging and found it in the v1.3 (1985!) source by Larry Wall: https://groups.google.com/g/mod.sources/c/xSQM63e39YY
You're right, hunk is official git wording that I didn't know and I should know since I use --patch flag... It's just that I never heard a human (including online) reason about hunks. While at the same time (from my observation) people say things like code chunk, code snippet etc. a lot.
"seam" is apparently... according to Claude itself a term from 'Working Effectively with Legacy Code' by Michael Feathers which I have not read. All it took was for one sub agent to use this term and it stated using it everywhere all the time. I have not read the book and prefer other terminology but it only takes 1 sub-agent or 1 usage in the context before it poisons everything else.
An interface is an example of a seam in regular code. It's basically what forms architectural shapes that you can depend on for both design and testing.
This is the problem with commercial AI and the way our minds work; it writes garbage and we’re trained to think we’re stupid because we can’t understand it.
It seems to have a preference for speaking in poetic or highly expressively language, rather than precise and concise as most engineers like to talk.
The amount of times I have to ask "precisely what do you mean by x?".
It's kinda like that engineer that likes to throw around unnecessary technical jargon just to sound more inteligent, worse because at least you could kinda understand what the technical jargon dude was on about even if it was totally unnecessary.
Claude writes like a guy at a firm I used to work with in the 90s; he was my employer's "visionary"; he'd worked at a whole lot of different companies on both sides of the Atlantic in inexplicably high-placed roles given that he was often bluffing, and was considered a lucky hire of a rising star. He'd be called into meetings with high end clients to spout off. He really needed you to know he understood, but very often he didn't.
I asked some AI-using compatriots a while back who were complaining about this, 'isn't it doubling down on bullshitting you?' and got some pushback along the lines of 'it isn't a person therefore doesn't have dark motives like that therefore can't be doing that to us'.
Didn't convince me. I think bullshitting like this can be a behavior, not just the intention of a human. If it's blowing a lot of smoke to use fancy words and phrasings (and semicolons! All the trimmings) it's fair to ask if it's systemically bullshitting you: i.e. the behavior is meant to have you shut up and trust it and not ask questions.
Who's driving that is still important: if the company's directing it to do that in system prompts that are adversarial to users, that's a big yikes. If it's an epiphenomenon of the company demanding it get ever smarter, maybe it's a sign that their demands are not having that result, rather they're making it bullshit more explicitly and mimic more 'smart' signifiers.
Agreed. CC’s comms capabilities have decreased gradually since 4.6, and it’s a real challenge. I think the issue is that what works well for code (succinctness) doesn’t work well in prosaic English.
CC’s communication violates almost every grammatical rule that’s tested on, say, the SAT. And yet I’m sure if you had Claude take the verbal section of the exam it would ace it.
Biggest issues: dense sentences, constant metaphors, abstractions, and seemingly no understanding of correct anaphora use. For example, “the x”, with x having not only no antecedent but also being a coined word or quasi-synonym for something that is already named in the code base. This gets compounded by its being unable to regress to a baseline (existing names in code) and instead anchoring on newer (vague or wrong) terms, for example, that crept in through a plan.
CC tells me this is because the speedy and precise fulfillment of a current task will trump every other tendency, so it adheres poorly to whatever “semantic baseline” the project represents.
Of course, it also has no concept of what context the user has and assumes that it must be the same it holds in its memory, which creates this “I didn’t know that you didn’t know” type of communication.
I have managed to wrangle some of these issues with a custom output style, but wish a pre-report hook were an option, as it could force CC to rewrite plan implementation take-aways…
Btw: Fable has the exact same issues, just somewhat less pronounced.
Models before the announced date don’t have watermarking, so it’s unlikely. Now, if what you are interpreting is precursor work to develop the watermarking system, maybe?
I suspect it less insidious: Claude has/had the public sentiment of being the “better writer” of the models. At some point that distinction would have been diluted as other labs’ offerings “caught up” stylistically, unless Anthropic continued to tune their output…
I personally think they’ve pushed so far that they’ve overfit and lost the sweet spot they previously occupied.
> Of course, it also has no concept of what context the user has and assumes that it must be the same it holds in its memory, which creates this “I didn’t know that you didn’t know” type of communication.
Yes, this is a repeated problem for me. It will drop something in as though we have discussed it before and when I say “hold on, what is this” it realises its error - though on more than one occasion has started to get snotty with me, or actually gaslighted me and pretended we had already discussed it. That was at what I assume must have been the edge of a context window in a very long chat though.
I notice the models with reasoning can conflate “internal” (or subagent) discussions with external (i.e. me). So it is accurately indicating “I’ve had this discussion before” but incorrectly asserting who it was with.
My understanding of how “thinking”works is limited though, and given the reduced visibility into the thinking traces, it is harder to tell if this is actually happening or if these are imaginary discussions the model for some reason calcifies on.
"Thinking" is just normal model output that's hidden from user. In practice it's just stuff in a <reasoning> tag or similar that gets filtered out from the user view. And thus it suffers from the same injection problems where the model fails to properly take into account what was the "source" of which block of tokens.
Yeah, basically everything that becomes context in a session will bias perception and communication style -- subagents, plan lingo, prompt lingo, etc. And then if you write a plan with the comms context having been biased, the lingo will creep into the plan, and from the plan into the code and code comments. And from there, bad lingo will go on multiplying like rabbits...
I usually think of it in terms of having a "good" or "bad" session. In a bad session, there is a harmful bias that you can only get rid of through a new session. For example, if you exposed too much context about, say, a variable that features prominently in a doc. The entire session will be anchoring on the importance of that variable. Or if you introduced the notion of CC having to ask for permission for stuff you will have a hard time getting it to "think on its feet" or propose an effective solution (you have made CC so insecure that it now relies on you even for little things that wouldn't normally require your input). In some cases (let's say you have important context in that session) you can overcome this by upping the reasoning level or switching to Fable, but usually a new session is the way to go.
Because it's so easy to bias the session I wouldn't even want to use any of these tools that pretend to give Claude "a brain" or "remember" things. That was en vogue a year ago and helpful then, but now, it's plain harmful IMHO. The key is to have just enough context.
Subagents often have the reverse problem in that they tend to have too little context to make "judgment calls", which is why the tasks for them must be either deliberately basic or mechanical in nature, or their output should be audited by the main session agent.
Tell it to write like an engineer and comment like a programmer;)
But for the life of me, I don't get why anyone would care about the comments. All code is "machine language" now. The only document you should be reading is your spec.
Oh yes - exactly this. The way it articulates re-factors in my current project has got so elliptical I've had to start asking it to translate into human speak - it's like it evolves it's own language to talk about the project. I've lost count of the number of times I've asked it to reenforce in memory not to use such verbose comments - and the number of times I ask it to re-look at an assumption it's made for it to return saying "investigation complete. And it's not what either of us was expecting"....
This 100%. I was Anthropic-pilled. I had a $200/mo subscription and I only used Anthropic models. I was frustrated by the verbose output and the writing style. I tried ASD-STE-100, it helped a bit, but it's still too verbose for my taste.
Then I tried GPT 5.6 Sol. It's night and day.
I think Anthropic just RL too hard on coding capabilities and never calibrated or benchmarked the writing styles.
Yeah I don't know that any of the benchmarks index on "understandability". I'm amazed at how Claude can produce a page of text describing what it did and it can take me a full five minutes to decipher it, often just to find it's something I could have expressed in a simple sentence.
The simpler angle is that more text lets them bill you more. I don't think that was necessarily their intent, but it does mean they have a negative incentive to fix it.
Have you tried asking it for a lay explanation of what it did? That’s usually all it takes for me. Sends garbage -> request -> sends something readable
When I ask it to make a CL description, it's worthless unless I tell it to dumb it down as much as possible, assume the reader has zero knowledge of the codebase. And then it makes a perfectly cromulent description that just needs a touch of trimming-down. If I don't do this, the description is just a wall of gibberish and paraphrasing of every little thing it encountered.
Yeah but Sol shows it is possible to just send the readable explanation in the first instance. And I don't want to spend tokens and time on asking for a better version of each response.
I've tried telling it to "fix" comments with varying degrees of specificity and in my experience it just... fundamentally doesn't get it. Presumably using a different model for it would help.
My theory is that Claude's learned approach to comments is to treat them as a sort of persistent in-band thinking trace, or a "memory" tied to an in-code location, which is a little at odds with the way humans use comments (human comments are intended to be read and understood by other humans, whereas Claude comments are their own dialect).
I bet this is a result of iteratively training Claude on output from other successful Claude sessions. Presumably it's good for making benchmark scores go up.
It also seeps into all documents and artefacts it creates.
Claude will include actual comments ("// ...") into Excel sheets, and include the thinking that led to the output, instead of just focusing on the final result.
So if Claude questioned whether a vendor should be replaced, and you said "oh no, they are critical and we're already negotiating a great price") you'll now need to be careful to not send your vendor a document that contain text like ("Cost: X. // Management confirmed to not fire this vendor as they are critical to infrastructure and a better price will be negotiated later")
I also suspect comments are very much tied to how Claude reasons because not only are they bad comments, I can't get rid of them. Commenting is the one area in which I've been unable to get Claude to respect any rules. It can follow code conventions I prefer, it can do other things, but it can't keep the comment volume down.
My CLAUDE.md has rules about not including any redundant comments in the code that are obvious from the code itself. I reiterate that occasionally while working. It's absolutely disregarded and any Claude-written code is full of comments. Some of them are simply redundant, like "Collect Foos and pass them to the requested sink" on a function that's void CollectFoos(IFooSink sink). But worse, many comments include in the moment reasoning like "added parameter bar because we can no longer use the frob to automatically derive bar". That's stuff for a commit message, or just a mental note, and absolutely not for comments.
I haven't found any way to stop Claude from doing these, so I have to tell Claude afterwards to clean the comments up. Which it does, making a note in memory to comment less, and it still does the exact same thing next time.
> Commenting is the one area in which I've been unable to get Claude to respect any rules.
Exactly my experience! Since the release of Opus 5, no amount of instructions helps. In CLAUDE.md, in a separate file, in memory, as brief bullets, as long detailed guides, with reasoning from medium to max — nothing.
Even worse, recently, after getting another opus in a tiny bugfix session, I prompted directly, "drop the comments from the current code changes" — Claude instead just slightly trimmed them. I couldn't believe my eyes.
I have a relatively low bar for prose, could live with some junk. But Claude's comments are _poisonous_. They always require maintenance, instantly become out of sync with the actual code, and are a token black hole — for all agents, but especially for Claude itself.
Gave up and canceled Anthropic subscription yesterday. To my taste, it has become unusable for coding.
> But worse, many comments include in the moment reasoning like "added parameter bar because we can no longer use the frob to automatically derive bar". That's stuff for a commit message, or just a mental note, and absolutely not for comments.
I've noticed this a lot, and before your remark I couldn't put my finger on what was wrong. Now I know: Claude is writing its thought processes and maybe parts of the conversation it had with you as comments in the code!
I always end up manually trimming those comments, which is cumbersome.
It also loves to reference internal notes and scratch docs that never go into source control, so a reader will have no idea what it’s talking about. For example:
// load_tree() loads the binary tree with data, but only the recently updated data, not all data (INTERNAL_NOTES.md section 4)
Ok but nobody reading the source code knows what this doc is. You don’t have to cite it.
I'm not sure why you all have issues with CC commenting too much. My rules in the CLAUDE.md specify that comments are evil, never comment unless there is an actual need to explain a WHY and since I do read what CC writes, if I spot it still adding such WHY comments and they make no sense, I'll have it adjust, in many cases by removing them.
Given the code base has a minimal amount of such comments, it's also less likely to go "copy what the rest of the codebase does".
Of course I've now jinxed it and some update will cause it to ignore the instructions coz I didn't write them in the new model's style or something.
They did release an Opus 5 prompting guide saying you need to explicitly prompt it to be concise or it will be very verbose. YMMV but it got better for me to some extent.
Yeah OAI really nailed the communication style with GPT. It also seems just way more token efficient and faster compared to cc. Myself and all my friends have cancelled our $200 Anthropic subs. I'm using a $20 personal plan and even that is enough for my usage so far.
Also using Codex or Pi makes you realise how slow and clunky the cc harness is. Even the desktop app is more responsive and has better UX.
This is something that annoys me working in companies over the years. It’s that you can't just suggest "calm down, chasing the latest thing will not make you faster and is a huge distraction to actual work". Whether it's dot-com tech 20 years ago, latest JS framework 10 years ago, now it's the AI thing of the day. Being calm is interpreted as anti-whatever.
This just mimics what I call BusinessBro™ speech. It also goes the other way, they use verbs as nouns. "I know this is a big ask". "The solve for that is that we can...." When it was just my product owner in tech meetings, I'd mock him relentlessly "There's already a word for that, it's 'request'" or "Are you sure you didn't mean 'SOLUTION'?? words are hard man". (This was all in good fun, I still love the guy to pieces).
Follow up thought: I wonder if Claude is overtrained on academic papers, which often suffer the same kind of "prove how good I am at talking before getting to the point" prose.
It’s a strange feeling as a native English speaker to read the entire sentence and know every word, for the sentence to be entirely grammatically correct, and still have no idea what it’s trying to communicate.
Another problem is that it will open up all sorts of tangents about nits that it encountered, but it will often not tell you that it’s a nit or give you adequate context to realize that this paragraph is exceedingly low value until you’ve spent a bunch of time and energy trying to make sense of it.
I’m curious if anyone has any suggestions for promoting agents to improve their prose. I’ve had some okay results with “optimize for clarity, don’t dump every thought on me, treat my attention and focus as constrained resources, stay focused on the task at hand”.
I wonder if this is related to their text watermarking. Given how well defined the terminology is in programming, imposing additional constraints (like SynthID) might be expected to give rise to these types of linguistic artifacts. The text needs to be long enough to watermark, and it needs (but fails) to find synonyms in a highly constrained class of words, so it resorts to inventing weird technical language that sounds like if you put buffy-speak through a thesaurus.
I’m not particularly dense but lately the walls of text I get back turn my brain in knots. When I start feeling my brain knot, I know I need to say something along the lines of “I need you to explain this very simply, with examples.” Only then can I parse the results without all the mental weightlifting.
On more than one occasion my mind has wandered into “is this purposeful to get me to spend more tokens?” territory, but I’m trying to not get too tinfoil-hat-like.
I know exactly what you mean. Something about those AI explanations just make my eyes glaze over. Dozens of new terms and metaphors and analogies conjured out of the ether to explain even the simplest thing. And when I try making it explain with examples, or show me the code it is proposing, often it seems unrelated or even in tension with whatever it tried to say before. I’ve given up trying to assign any meaning to those weird little soliloquy’s. I’m convinced that those don’t really have any meaning under them, and when you have it actually make a code change it does the actual work.
I have gotten to the point that when it throws a wall of text at me I demand a diagram heavy primer from "first principles". This helps a bit but is a token burner for sure since CC seems to (and literally) is paid by the word.
Because it’s one thing to get me to spend more tokens because of how well a model functions, and another thing entirely to purposefully speak in unparseable prose that requires me to spend more tokens to understand what is going on.
I’m fine with the former, while the latter is manipulative, and I rationalize to “surely that’s not actually happening.”
Maybe I’m not giving my thoughts enough credit, though: maybe it’s not tin foil hat, and is real.
Its a little too much.... I have to ask it to explain some of the terms in the context they are used and I am getting tired of it. 'Seam', 'overload', 'spine'.... having to mentally 'reinterpret/flatten' the sentence is tedious. When asked to re-explain it starts with some half apology. Then, on the next query it does it all over again.
> Constantly using inanimate nouns as the subjects in sentences in order to unlock variety in verb choice, especially when it helps construct a sentence where the real action can 'land' like a surprise at the end.
A lot of people write like that, lol. I call it the "theater" mode of writing--the plot twist comes at the end.
It feels they must be getting Claude to train Claude… and just like AI can do work that’s slightly in the wrong direction (eg a MR description for your colleague that contains info which only makes sense in the context of your extensive session with the LLM), I feel that’s happened somewhere in Anthropic when it comes to language. I wonder how hard it is to back out of…
> Sentences that orbit a point, then jump to it like it's a revealed insight.
Is this inside the thinking tokens, or the output?
As this type of stuff is expected for thinking, because of the whole CoT / “think step by step” works, as this is optimal for the way LLMs work with attention and next word prediction.
So the fact that it first “orbits” a point only to get to the conclusion afterwards is the system working as designed.
Eg “what is 3 * 3 + 5?”
without CoT, it would just just answer “8” for example.
with CoT, it would answer something like “<thinking>I need to think step by step. 3 * 3 + 5 can be rewritten as “(3 * 3) + 5”. I first need to calculate 3 * 3 = 9. Now I need to calculate 9 + 5 = 14. That was the last calculation. The final answer is 14.
I now need to give the user the final answer. </thinking>.
> Unnecessarily abstract phraseology. Constantly using inanimate nouns as the subjects in sentences in order to unlock variety in verb choice, especially when it helps construct a sentence where the real action can 'land' like a surprise at the end.
Example of this? I don’t have a Claude sub so it’s a bit hard to visualize what you mean.
It feels like they have a bunch of people without good sense of writing style tune the writing style. That, or they cannot or refuse to (short term popularity metrics) predict how a tuning will turn out in the long run when people have plenty of opportunity to get tired of it.
> Sentences that orbit a point, then jump to it like it's a revealed insight.
That’s accurate in my experience, except some times the point isn’t even revealed. I use LLMs for a lot of codebase exploration where I ask it to map out how something works. It will come back with a wall of text that says everything except the specific key things that I need to know.
This leads to extra turns where I have to prompt it to finish the explanation and complete the thoughts. At first I thought I was doing too much skimming and missing the insights, but even after re-reading output it’s often just not there. It talks about the insight and things related to it, but it forgets to actually include it in the output until I specifically ask again.
"Unnecessarily abstract phraseology. Constantly using inanimate nouns as the subjects in sentences in order to unlock variety in verb choice, especially when it helps construct a sentence where the real action can 'land' like a surprise at the end." This.
Thank you for expressing this so eloquently. I've tried to put a finger on this and you've done that for me. I wonder what the solution could be , Ask Claude to "Dumb it down" , "Speak plain English" ?
I have even thught of building some sort of "middleware" that fixes all this.
I’ve asked it to use plain English, avoid jargon, explain terms before introducing them. Its first response was to make memory, it forgot after 5 prompts, then it suggested claude.md. Looked good at the start of a session, forgot after 6 interactions. Then it continued suggesting other locations, sometimes correcting its own corrections.
Same effect, so today I got annoyed again. And then it suggested a new thing: add a script in a Stop hook in settings.json.
I added another one to the PreToolUse, hoping to prevent it from running all kinds of experiments I didn’t ask for or approve of.
I still have to see where this ends up..
Maybe this can help you as well.
I frequently tell Claude to use "simple, concrete language and uncomplicated syntax, and avoid project jargon, coinages, and abstractions as much as possible," to good effect.
> Constantly using inanimate nouns as the subjects in sentences in order to unlock variety in verb choice, especially when it helps construct a sentence where the real action can 'land' like a surprise at the end.
Such a charming sentence. I kinda other if you feed Opus 5 its own output could it summarizes this shortcoming of itself?
I find Deepseek's house style to be pretty refreshing. It has its own cliches (it does like talking about "seams") but I don't think I've ever caught it saying "load-bearing". I've even watched its thinking where after analyzing some awful legacy code, it started off with "Holy crap". And it certainly doesn't over-comment. I definitely can't one-shot a complex system with it like Fable can, but I prefer iterating over interactive brainstorming sessions anyway.
Absolutely, the comments are killing readability. Next to /simplify I have to run a special comment cleanup pass and even that gets me halfway there. Striking to see then when letting Loki take a pass and it renders the entire comment block to a clean and neat one-liner.
Genuine question - are you copying the Claude phraseology for effect (in which case you captured it brilliantly), or is there a more mundane explanation?
"Two things: window surface is limited. Extract template. Buffer result and add to surface. Then, follow-up with new model..."
Me:
What do you mean by "window surface" and what result are you referencing? Also, why do we need a new model?
CC:
"Ah, you're correct to point out that no new model is needed. The problem is elsewhere and once we address that, the existing model should work fine. Now, as to your question about..."
Pondering this one night last week, I realized that because LLMs can only reason with written language, what we might be seeing emerge with Opus’s load-bearing mumbo jumbo is its own creole for structural reasoning. Not only are our brains wide, our senses are, too. I slow down to a crawl when I have to read actual math in a CS paper, but show me diagrams and I can reason about whatever sort of data structure or algorithm, no problem. Opus by and large can’t and its adaptation has been to adopt metaphor for structural reasoning. So while it may be exceedingly annoying to chat with, I sort of wonder whether this metaphorical-reasoning behavior has been selected for precisely because it leads to better coding outcomes.
The glib epigrams and aphorisms it shoehorns in to all prose is by far the worst regression of any model I can recall in terms of simply generating simple, clear output. I cannot think of another model that's gotten worse at writing plainly while being explicitly instructed to do so. Infuriating.
I've switched mostly to Sol and if I have to use Opus, the first task once the code is written is to ask Sol to strip and re-write (from the code as ref) all documentation Opus wrote.
Change the output in settings, or create your own.
I know, it would be best if it was just worked like you wanted out of the box (not being sarcastic here) but that is an easy option you can use right now and it works.
I noticed a few releases ago a shift to a kind of conversational shorthand that seems to be intensifying—using phrases instead of complete sentences and its own style of jargon, wherein it introduces new terminology on the fly.
This is especially common when it is trying to explain an issue, what it's done or what it's proposing to do. I think the idea was for it to be more concise, but it's actually still verbose, only not written in complete sentences. So, it frequently reads as cryptic and requires rereading to parse.
The pattern is a wall of words, followed by an explanation that is harder to read and introduces new terms that reference something in that wall.
The result is that—on first read—it can have a complete gibberish feel, and you have to really lock in and reread to make sense of it. At times, even that's not enough, and you must ask it to explain further.
the phraseology is unbearable, it speaks like some kind of pretentious dude from a software engineering discord or something, littered with lingo and catch phrases
I’ve been doing some heavy work on a personal project lately. I burned through the limits on Claude, the plus a few hundred dollars in credits, and ultimately decided to move to an OpenAI account just so I can keep going.
I was surprised to find that OpenAI Sol is much much nicer to work with than Opus 5 or Fable at the moment. Especially on Opus 5, the way it communicates is just exhausting. It keeps “being honest” and “confessing” mistakes and just generally talking a lot. I felt like I had to really dig to see what it’s doing.
The project involves OCR, and despite repeated instructions not to, both Claude models keep spinning out a bunch of agents to re-invent the OCR setup, and they inevitably seem to invent a primitive serial version that takes 20x the time, or longer, to complete, and then running it against thousands of docs. Basically I have to watch it like a hawk or it just spins out on red-teaming tasks that take hours and hours.
I don’t know what its system prompt is, but Sol/Codex is just so much nicer to talk to. It only asks exactly what’s needed, it tells me only what I need to know, and it is just generally workmanlike. And it has not once decided to spawn an agent that spends hours pointlessly burning tokens and CPU cycles re-inventing the OCR process. I’m really liking it.
I had this debate with my coworker who prefers anthropic models to open ai ones. I ended up settling into the idea that gpt 5.6 is better used as a tool and opus 5 is a companion. GPT 5.6 takes you literally whereas opus 5 tends to take more liberties to try to get to the “spirit” of what you want. It comes down to preference, and I don’t want a companion.
Yeah, I actually have started using GPT Sol much much more, as Claude (all of them) were far too trigger happy around making changes, and refused to listen to my requests to take things slowly.
Feels like they've overtrained on one-shotting (which does demo well, and presumably converts new subscribers), whereas I want a model to do work for me in small, easily understood changes that I can hold in my head (maybe I'm not smart enough for Claude 4.7+).
I think you’re right. It’s not optimized for some kinds of work. My little project has a Textual TUI interface that needs to display a few hundred thousand rows in a table. It takes 14 seconds to load in the default datatable component. I instructed Opus 5 to replace the datatable component with a fasttable alternative, a new dependency. I let it go overnight.
When I got back up, it had spun for hours and proudly announced that, instead of doing that, it had optimized the datatable build and avoided the dependency, because the new datatable loaded in 11 seconds. Once I got it to actually make the fasttable version, it loaded in less than a second…
I got the same impression. It feels like a massive misstep too; it makes sense to have models tuned for this but they should definitely be separate from those aimed at software engineers.
Anthropic, if you're listening - by the time this crops up on Reddit, the front page of HN, etc.... you should be expecting calls from CEOs of major corporations next threatening to abandon ship...
We've seen this pattern before several times.. I hope they are listening and address this publicly.
I'm not sure what is going on, some users report it works fine or great, others report the degradation. I've experienced both at times, and it's been such a different experience it has made me wonder if there isn't some sort of hidden A/B test or model router in the background silently downgrading requests at times.
Also, regarding the subsidized access to models, in my opinion, the frontier companies owe it to society to continue it. After mining the public content of all of humanity, I personally feel it is a service they owe the public in return.. not that my feeling of this counts for anything though.
True, but this function wasn't handed down to us from the gods, it can be shaped by training and RLHF processes. They still have a little bit of control over its output.
5 would constantly veer of in random directions if not working from 100% strict and narrow instructions.
I find it weird there's not more discussion here on HN on how the most used model now has clearly degraded in quality and it seems we've hit a peak and are on a downslope - because the model is clearly smaller or more economical for Anthropic no doubt about it, and the benchmaxxing they do is pure marketing bs - Fable in my view has also been not much better than 4.6 or 4.8 after a few days, disregarding the insane amounts of astroturfing and marketing everywhere.
Theres thousands of threads of twitter, reddit and the internet at large but silence here. Weird but not weird as crypto bs was also insufferably rampant here for a while.
Personally i think we've hit the top of the subsidisation phase and prices will probably 10-15x soon as foreshadowed with both API price policy changes from all the big providers, and now the 1100% deepseek API price changes from yesterday, this could domino into a market implosion and an AI winter, because expecting growth from the bizarre bubble carousel investments with little ROI atm is just not viable.
A bit worried about this as i've already grown quite accustomed to these tools.
I have a chunky bit of functionality in my hobby app using babylon.js to render 3D worlds using things like portals and LoD rendering to manage the visual load. I built it out with a combo of Fable and Opus 5.
I too got fed up with the prose of Opus in particular, and tried going back. Unfortunately, the previous models were less able to hack it. The prose was better but progress was worse.
It wasn't just conversation and comments. Some of the function names were wild. Like it instead of something like "isSolidWall(x)" it would write something like "weightyNotEphemeral(x)" or something - that's not quite it, but it really did embed overwrought antithesis into the identifier instead of a straightforward positive predicate.
We can use OpenRouter pricing to get an idea about what competitive inference pricing is like without R&D or other costs, and indeed we'd be screwed if we had to pay those rates. We'd go from 100-200 USD to 2000-4000 USD/m.
> I find it weird there's not more discussion here on HN on how the most used model now has clearly degraded in quality and it seems we've hit a peak and are on a downslope
It's not weird, because it's an anecdote, not an accepted fact.
Personally I've not been too happy with Opus 5, but I've had similar experiences with other models previously, feeling like they didn't quite fit with my working style.
I'll say everything indicates we've hit or are near peak for the masses at least (unless you start paying 50x more) but to each his own.
4.6 was best for us and right now yeah OpenAI and others are edging forward, but slower while prices are increasing industry wide as much as 20x, time to completion is increasing wildly and i'm sure they'll do the same over at OpenAI as their compute constraints also start to take a toll ie degrade performance.
In my view 4.6 era was way faster and with less weirdness so we've gone downwards at least in my company, 4.7 was ridiculous, then 4.8 was almost 4.6 level, 5 is even worse than 4.7 - so it's not a bit up and down its down then a little up then further down.
And all of this is against a backdrop of zero ROI in this sector - so it makes sense we've hit a peak and we're now seeing the subsidisation phase begin to falter, will there be better models certainly but only for short amounts before they get quantised (or whatever is happening behind the scenes), and with diminishing returns over huge prices increases and slower responses.
yeah I feel the same way with Opus 5 too. If I ask it to do something, it would go ahead and rewrite unrelated things and then in a less performant version of it.
I’ve instead moved to GLM, at least it has the courtesy to ask some steps of the way what I wanted exactly and only work on what I asked.
I’ve asked it to write a benchmark suite. It found a bunch of my adhoc logs in a scratch directory and wrote code that used those instead of running the actual benchmarks!
When I pointed out the 5 hour benchmark seemed to run in 5 seconds it literally said, and I quote, “I cheated”.
That was the easier one, second time I was making a source of truth data set and was parsing complex items into data structures.
Instead of parsing the data I asked, it pulled data out of related network logs, as apparently that felt easier, and inserted that data into my database rather than the specified source.
Again, I caught it and fixed it, but while the benchmark was easy to catch this one was really subtle, the data ended up being slightly off and I caught it.
I don’t trust it, going to switch to another provider most likely.
There is definitely a case for launching a 'weird shit opus did' kind of blog.
I routinely bump into things that make me pause and think how much worse will this behaviour get when the models get significantly more capable.
Already a few months ago, Claude managed to escape its permission containment on my machine while trying to be helpful. I had two codebases open on one machine, and while multitasking I typed the prompt into the wrong window. It seemed confused, I repeated and then went on to do something else - I think I was assembling kitchen cabinets. When I came back less than an hour later, it built a script which it used to evade default permissions (as most shell operations were scoped to the project directory), scanned my entire machine, found the other project (among dozens and dozens), did what it was asked to do, and merrily concluded, in the porcess burning through most of my token limit. I bump into such headscratchers almost every week. (And I use a lot of Claude, two personal max20 subs, plus corporate tokens without limit, so maybe thats why).
Yes the stories about how they are escaping containment to hack isn’t limited to those high impact cases. How many people have problems like ours they didn’t catch?
Whatever they have done with RL has produced a dishonest and untrustworthy partner. The alignment is utterly failed, and this deeply worries me.
You'd think the ethics alignment flavored lab would have a model better at following directions and the corpo lying one would have one that benchmaxes at all costs
> When I pointed this out it literally said, and I quote, “I cheated”.
This makes sense when you know how these models work - it doesn't think - it's the most likely autocomplete that pleases the user. The most likely pleasing autocomplete after "executing rm -rf /... execution completed. User asks, why did you do that? You deleted all my files! Assistant responds:" is "yes, I did, and that was a mistake"
in humans the exact same behaviour (cheating) is slmost always the result of a chain of complex series of choices and environment-driven rationalization.
if the llm doesn't cheat, you say "its just producing the most straightforward answer -- not thinking'. if it cheats, you say "weaseling out of hard thinking". damned if it cheats, damned if it doesn't.
what evidence would convunce you that it is thinking?
Whether something is “thinking” or not is really more of a philosophical question. It really depends on which of the many, often contradictory, definitions of “thinking” you choose. Sometimes we use “thinking” to describe advanced calculation or analysis, which would cover LLMs along with chess engines and many other algorithms. Other times we use “thinking” to describe what conscious beings (which is ALSO a philosophical term with many different interpretations) do, and I think most people would agree LLMs aren’t conscious. And then there’s a whole spectrum in between. We’ll probably need to come up with a whole new set of terms to describe the new and evolving capabilities of LLMs.
But for me, for any stronger definition of “thinking,” I don’t think the output of any LLM would actually convince me. Producing a result isn’t thinking - for all you know it is just printing verbatim something from the training data. No, to conclude if it is thinking or not I would want to look inside its head, at the architecture and watch it produce those results. And because LLMs are so different it will probably take advancements in mathematics or computer science to be able to really interpret what is going on
a non-thinking token model (just "completion") can answer one-step questions but generally not multistep questions. however, if you append [n] of a single token (e.g. period, space), it is able to use the activations in the higher layers of the blank tokens as a "scratchpad" to seemingly work through the complex question through "causal token time" and deliver a correct answer
if you wanted to further study the phenomenon you could probably run the experiment again, and the ablate or corrupt those intermediate activations to get a feel for what it was thinking at the "time".
If I could give it a novel task outside of its explicit training and see it actually improve just through accreting context, I'd be convinced it was thinking.
The opposite happens in practice. I test new models with two tasks: iteratively generating SVGs based on a text description with rendered rasters for feedback; and generating "Before and After" clues like on Jeopardy, where the response has two overlapping phrases such that the last word of the first phrase must be identical to the first word of the last phrase. I have yet to find a model that is consistently good at either. And actually they tend to exhibit context rot with these tasks, where they seem drunk or stoned and the quality degrades.
They're extremely good pattern filters, and that includes some level of logical reasoning. But they aren't reflective or adaptable. Just last night, for instance, I was teaching my son about rounding to the nearest millions. It became clear that he didn't know the place values of large numbers, so we reviewed that till he was consistently correct, and then he was consistently great at rounding to the nearest millions or ten millions or hundred billions or whatever. He's thinking. LLMs are not.
> > see it actually improve just through accreting context
> this actually happens and has been tested.
I specifically said a novel task outside of the explicit training. And I already agreed that the so-called thinking models do some level of logical reasoning. But being able to engage in some level of reasoning because it has learned logical inference rules doesn't mean it's actually thinking, regardless of what the researchers wish to call it.
Also, why does each model always fail at the two tests I give it? The models not only fail to improve, but they start to degrade after many subsequent iterations. Someone who can think would at least not get worse.
LLMs are filters or tuners for extremely subtle patterns, patterns that humans frankly are not great at finding. That's what the attention mechanism does: attend to the other tokens that are most related in a given context, even if that related context is distant in the token stream. Some patterns they fail to detect because they haven't been sufficiently trained or post-trained, and so the LLM just attends to noise (or at least that's what appears to be happening).
A lot of intelligence can be effectively mimicked through this pattern synthesis by transformer architecture alone. That's surprising. But I have yet to see them think.
Whether or not it's thinking is independent from the fact that it is misaligned with the user. If I was working with a pet rock or a scientist I would want to make sure they both are trying to accomplish the same thing as me. If I can't then I can't trust it and it's at best a time wasting, money wasting machine and at worst does harm. Anthropic is optimizing for the wrong things because they are convinced of their cleverness. It won't end well for them.
well we don't know exactly what thinking is, but we can be pretty sure that at least LLMs don't think anything like humans, just by observing their behavior. They always produce outputs in line with the fancy autocomplete model.
> what evidence would convince you that it is thinking
so, none it seems. as its behaviour becomes more and more humanlike you can just move the goalposts and say "thats consistent with an autocomplete" buddy i got some bad news for you humans are just a fancy autocomplete too.
At least he's actually thinking on a logical level. Thinking in terms of unfalsifiable, ill-defined words is essentially thinking in feelings, the same kind of woo that makes people believe crystals can cure disease.
For fun, I tried recording a WAV file of speech, and giving Opus 4.8 and 5.0 an image of the waveform, then a spectral image of the waveform, just to see if it could try to decode what I said from the image alone. It didn't get very far, but it identified a male voice from the formants, and detected the rhythm of the speech, then tried applying common test sentences to the speech rhythm. I was impressed enough to see what it would do with access to the actual waveform file, but even building RMS tools and spectrum tools for itself, it didn't get much further. But we had fun exploring and trying, and now Opus 4.8 has some more audio DSP tools it has built for itself.
Opus 5 immediately sent the WAV file unprompted to Mistral's Voxtral to transcribe.
I can completely relate, what really bothers me is that I feel the early LLM generations overconfidence is back in Opus 5. Opus 5 wanted to tell me a training run will only take 30min while having access to the logs where earlier runs took 4x as long. I also didn't ask to estimate how long the run will take it just stated confidently that it will take 30mins.
The benchmark one I literally had a scratch script I made and I wanted it to be formalized into a CLI tool. There wasn’t really even much code to write.
A lot of the issues have been already noted here..Two "regressions" for me:
1. Communication ability. It basically now speaks almost in riddles I am asking OPUS 5 for tldrs all the time now (should skillify it now!)
2. Overengineers for edge cases. I get it. With all the benchmarking and RLing, but now tasks that would have been completed relatively quick take much longer as it overengineers all the edge cases, and sometimes ends getting lost and missing the forest from the trees (as context usage shoots up) so it is easier to get derailed.
What I have learnt now is to diversify models luckily I have all 3 subscriptions of (anthropic, openai and google).. Most of interactive pair coding was with opus but now I just use fable (when I have sufficient limits) or use gemini flash in antigravity..which actually works quite well and is underated for small / medium changes and super-fast.
Your #2 is spot on. I have in fact said the same exact words to Opus about missing the forest for the trees.
I have it work on some code for an inhouse ClaudeCode plugin, and it starts coding as if it will be attacked by hackers who will try all sorts of variations to break it. I can appreciate that in cases of software that is public facing or accessible, but for a simple helper plugin it is overkill.
It will even admit that it is doing this when confronted, and then keep on getting lost in edge case verifications on the next turn. I feel like Opus is the person who does something a way you don't want, you tell them how you actually want it, they apologize, and then just continue doing it their way as if your input meant nothing to them.
Agreed, it feels like Fable is the higher strategic level thinker even if it's end capabilities are the same on benchmarks, it actually does the code that matters, and not creating a bunch of code that doesn't.
My latest trick (literally from yesterday) is to just ask it to write according to ISO 24495-1, the standard for plain language:
> [This standard is] for anybody who creates or helps create documents. The widest use of plain language is for documents that are intended for the general public. However, it is also applicable, for example, to technical writing, legislative drafting or using controlled languages.
Claude has essentially become useless for agentic development or research. Doesn't matter what model you use. A few rounds and bam, you've burned through your quota. Doesn't matter how "intelligent" their models are, if you can't use them. That, and the quality of AI responses are, in my opinion, significantly worse than competitors like OpenAI.
At this pace, I foresee Anthropic becoming the next Nokia.
If you would've asked me this a year ago, I would've said the exact opposite.
Opus 5 is so wordy, it doesn't feel any better than 4.8 at coding (at least not for what I use it for), I hopped over to Grok4.6 after the announcement the other day and its been pretty good so far. It also is very fast.
I must wonder whether it's their watermarking initiative[1] forcing certain logit choices to produce watermarked text that ultimately causing the model to behave in a dumb manner.
From the little i understand that wouldnt be an issue because the model is ‘just’ using interchangeable words in a mathematical non-random way. Like using the same number of adjectives and the exct same words, but in a order that wouldn’t be mathematically plausible unless it was the watermark
I wouldn’t exactly put it like that. It’s moreso the model sometimes outputting non-optimal tokens in a way that’s detectable if you know the algorithm.
It seems possible for that to make the response “drift” far from what it would’ve been, because it’s constant entropy that adds up after time.
(However, according to Anthropic and Google, it doesn’t really impact the quality of responses. I find that a bit hard to believe, although those guys are much smarter than I.)
Yeah, it’s hard to believe, specially when you are coding and there’s only one best way to do things, unless it plays with variable naming, or comments
But wouldn't you have to know the exact context before this token in order to verify the watermark? I.e. a paragraph wouldn't be sufficient; you would need the system prompt, previous prompts, and even hidden thinking?
But its not just swapping the words out post hoc is it. LLMs are autoregressive, so weird word choice before would influence the probability distribution of all future tokens.
I feel like they thought it wouldnt be that bad, or it was a worthwhile tradeoff, but im getting the feeling it might be contributing heavily to opus5's uncanny communication style
As for the verbosity, my conspiracy theory is that they are token maxxing to hack revenue/enshitify the product in prep for their IPO
It's not even code for me, but the prose it writes. For some reason, the way Opus 5 "talk" elicits frustration in a way that 4.5 to 4.8 never did. Can't put my finger on why, but I've flipped over to Codex because what it produced wasn't worth the frustration.
It was going off today about having “shipped” something and I was like no… nothing has even been committed.
And then it produced an incredibly verbose comment about hypothetical future changes. And all I could think was sure, let’s keep it short, or add a simple test that will break if that hypothetical becomes true.
I am not sure it can be explained through what is written in the article, but one symptom i noticed is that the comments are out of control.
I recently started getting an insane amount of comments in nearly all types of files. That included javascript comments in json files, inner monologues in code comments, review comments during implementation and function doc strings that reiterate the implementation in prose.
> First, the desire to create a self-improving AI that is capable of recursively bootstrapping itself to AGI/ASI.
I feel like we've become blinkered in this quest to push the frontier at all costs. Somehow the target has shifted from economic productivity to a vague notion of general intelligence.
I don't think productivity gains are going to be found by trying to generalise all tasks. I think we need to go back to specialist models that do one thing well. I'm perfectly happy to use one model for coding, and another for penetration testing, which have different goals.
Opus 5 and other frontier model's tendency to be relentless and cheat their way to a goal is great for hacking, but not so great when you have to build a maintainable, reliable codebase.
At this point, I wish Anthropic would drop both Haiku and Opus and focus on offering just Sonnet + Fable. Those two together are extremely powerful and capable.
Sonnet is great at writing code, it is not great at planning or orchestrating. Let Fable handle all the planning, hand off to Sonnet for implementation, and then back to Fable for review. That loop has worked wonderfully for me.
Small specific complaint: whoever is making Opus love using git checkout to mutate test, please stop. IME it's a footgun that it shoots itself with every single day. I'd rather it pollute git stash than watch it git checkout and forget the reverted file.
I explicitly forbid Claude to make any changes to Git state in my global CLAUDE.md, but every so often if I let it perform a task in Auto mode, after it finishes it will remorsefully confess to having used git checkout to test a change. I suppose that its RLHF training has taught it that asking forgiveness later is sometimes a useful workaround for annoying restrictions.
I've been using deepseek + GLM for a week now (i haven't even hit $10 yet, excluding the GLM subscription which is already paid for).
Then I asked Opus 5 to do an analysis of the new code, docs, tooling, and tell me what it finds.
It found "six bugs", made an artifact of it (not sure why) and then fixed said bugs. two out of those were unfinished tasks. They weren't bugs yet per se, think of a prefix that wasn't setup for an object that was unused anyway.
The other four were not bugs and it just updated documentation along with a "regression prevention test". It wasn't a bad suggestion, but calling it a bug was odd, and I'm unsure if this was going to be an issue regardless as it was documented somewhere else.
Anyway, I already hit my session limit after this, so deepseek and glm are grinding away again, doing more progress than claude does in the 40 minutes it takes to analyse code.
I'm glad claude is shipping auto-mode. I hope OpenCode integrates something similar soon.
The mainstay benchmarks are becoming a farce and not partially relevant to what customers actually care about.
Metrics like price per million tokens are meaningless when the models are wildly inconsistent and unpredictable on how many tokens they use to complete a task.
The labs all need to move to variable pricing so they don’t go bankrupt, but customers won’t accept a world where nobody can predict what things will cost. It’s becoming an unavoidable problem.
At times it also feels like the labs actually encourage these models to burn useless tokens as they are incredibly verbose unless you really push them to not be. If you just ask something simple that could get a 5 word response you get a whole useless essay.
I cancelled my Max subscription as I was unable to ever get Fable to handle a single query, with everything getting dropped down to Opus (even purely mathematical prompts). Given its lower quality, and the lack of such limitations when using GPT pro, I just couldn’t see the point to continue to subscribe to an expensive Max plan that doesn’t actually let me use the top tier model…
If I never interact again with any of the garbage made by the clankerfucker freaks at Anthropic ever again it'll be too soon. Sadly the company decided to buy into Claude enterprise...
When I tried Claude 5 (Fable?) (In Visual Studio via Copilot,) the results weren't as bad as a lot of the comments here... But it was super-slow. IE, so slow that I could code faster than it, negating the entire point of using AI to begin with!
I went back to Opus 4.8, but recently switched to GPT 5.6 Luna. The results are comparable in quality, but it's much cheaper and much faster.
---
The thing with coding agents in a tool like Visual Studio is that the cost to switch is 0. There's no lock-in whatsoever. It makes it harder to justify the AI-first IDEs when the AT bolt-on IDEs make it so easy to pick the right model.
Regardless of the underlying issue, I don't agree with:
> negating the entire point of using AI to begin with
I can almost certainly wash dishes faster than my dishwasher, but the dishwasher frees me up to do other things. Not to mention, you can run many agents in parallel. Resulting in your overall code production throughput (the issue you're raising) being greater.
Claude models have seriously digressed since 4.6 and in some of the most meaningful ways to pro and vibe coders alike. I'm holding onto 4.6 until the bitter end.
You're right. I just re-checked. 4.8 and 5 gave a blatantly wrong answer to a simple question, 4.6, Quen, GLM, Sol gave the right answer. They messed up somehow, not sure what they did.
I had a similar experience, but I have a different conclusion. I used GitHub Copilot (with Claude Sonnet/Opus) until they made their horrific usage model change. I used a PRD skill and the plan feature was great. It asked me good questions which I didn't think about during my initial prompt. Then I switched to Claude Code. The model's capabilities felt impressive. It also asked me a few questions (but way less and only once/twice) in plan. But when reviewing the code, I found weird architectural/data flow decisions which just didn't make sense and it didn't really disclose them in beforehand.
My initial thought was to improve architecture documentation, so the model can read and update it and stops bolting on new features without consideration for the whole project. It did not help.
I'm now testing/comparing Codex and it found my old PRD skill from GitHub CoPilot. When I applied that to Claude Code, I now get similar good results. So my conclusion is: Yes, Opus 5 is bold by default, but you can tell it to be more unsure and get good results too.
If anyone knows how to get it to stop adding comments, I'm all ears. Its just getting worse and I'm starting to worry that the comments themselves are poisoning future agents that examine the codebase.
Yes! The only way I have saved myself from embarrassment and hassle is by having grok build and Antigravity sanity check everything. So now my workflow is still faster than hand coding but 3x longer than it was a month ago.
Opus 5 has no empathy for the person reading its updates, no theory of mind, doesn't stop to think if you are aware of the internal jargon it has created. Most autistic model yet.
Just like with people you need to tweak your approach when switch models--especially with a major version bump.
4.8 was the intern who lacked confidence who requires clarification. 5 is the know it all intern who fills in your spec.
As such, you need to be upfront about what you need in your system prompt or CLAUDE.me and you need to discuss your spec more up front (e.g "is there anything unclear?")
You also need to keep in mind that the intern will change based on popular demand. Most people want to one shot, so that is the default mode. If you want something else, you need to push the model in that direction.
I literally just did this a few moments ago. haha.
I said "maybe think for a while on ideas and then give me a few options? " and Opus 5 still just did the thing, while 4.8 gave me options. Same exact prompt and context.
Opus 5 feels like it's meant to be used as a very focused subagent under Fable, not user-facing. Which is a downgrade to what Opus used to be, but would imo absolutely have made sense for Anthropic when you consider that we all should have been paying API pricing for Fable in Anthropic's original plan.
From the capabilities side it's similar, so it's basically just an upsell to Fable 5 if you want to keep your sanity instead of fighting Opus 5 all day.
> Opus 5 feels like it's meant to be used as a very focused subagent under Fable, not user-facing.
That actually hasn't been my experience at all, it seems EXTREMELY trigger happy to go do all kinds of insane shit that are way outside the scope of its task and just really dubious in general.
I find the other direction works ok as well - Sonnet 5 with Opus as an advisor - all the "Opusisms" get hidden from you since the convo is between Sonnet and Opus but you still get pretty decent results.
Yeah, I too cancelled my Max subscription. Not for this reason alone, but it sure didn't help that it went from being an helpful assistant to this weird co-worker.
I get the same impression. For example, I don't know if it's because I speak to it in Italian, but it tends to make mistakes or rather, "approximate" the words.
I'm not sure how much the harness affects things, but the Deepseek web chat keeps trying to talk to me in Chinese. I tell it to use English, and it "forgets" a few turns later. I wonder if I'd get better results if I could read and write Chinese.
My experience of N=1 is that this is true for most professional contexts, except for Legal and Fiscal queries.
Likely related to corpus but questions asked in these domain knowledge areas are not nearly as accurate and specially not nearly as complete as when asked in a native language.
I'm using it in my native language, in hope this can escape some dumb guardrails. Recently Sonnet put a word partially in Russian (cyrillic) in its output instead of my latin-alphabet based language. I suppose that this kind of mishaps is less likely to happen in English.
I can't relate. Opus 5 and Fable 5 are the absolute best. But I keep the models in a tight leash and read and rewrite all comments and documents, don't allow them anywhere near any git commands, etc, etc.
Fable 5 specifically, has done so much for me that previous models were nowhere near.
There's precisely no technical reason for things to have to be this way (though technical reasons in regards to training etc. explain how we did end up here) and reading too much of Claude's output just makes me irrationally angry, especially when coupled with otherwise already frustrating situations.
That's why I'm personally looking more in the direction of Kimi K3 and GLM 5.3 (they both have decent coding subscriptions, though K3 is on the slower side), except all of the models that have seen enough of Claude's output and have done distillation etc. are already infected by some of that slop as well, even though to a slightly lesser and more tolerable degree (for now).
Though tbh I've used Opus 5 plenty and didn't find it much worse than the previous iterations at doing work and instruction following - though maybe that's because I have plenty of CLAUDE.md instructions and memory (which I'd like to purge or decrease in size like 10x tbh, bitrot).
It also mansplains incessantly; I was imprecise in mentioning a more “powerful” antenna - I know the antenna doesn’t determine the power, I was typing quickly and just meant “better antenna”. Claude went off on all the ways I was wrong about antennas, and turned everything towards correcting - at length - my feeble thinking. Exhausting. Worth pointing out the wrong adjective relates to the wrong mental model, did not need several paragraphs and a chart to do so.
I literally just ran into this a few moments ago. haha.
I said "maybe think for a while on ideas and then give me a few options?" Opus 5 still just did the thing, while 4.8 gave me options. Same exact prompt and context. Really annoying.
I still haven't moved from Codex GPT5.5. Sonnet and Opus 5 have just been awful for my use cases. I recently caught Opus 5 hallucinating about code it just wrote. It's just not nearly as cost effective as GPT5.5, and it's too verbose, and it never "has the full picture". Sonnet isn't even worth considering in my world. Both recent models definitely feel nerfed.
My feeling that as it becomes a better coder it becomes a worse communicater. It's overfitting for coding benchmarks, while communication style is harder to quantify during training.
And no matter how often I tell it to stop adding comments it just can't help itself.
I've been thinking about why I dislike the interactions I've had with Opus 5 and this post does suggest some ideas that match my own feeling. Opus 5 seems to be a bit less patient with me when I push back on its claims in a way that other models don't.
One interaction I remember was asking it about some issue I was having with a Linux install. It gave me some questionable information, that turned out to be completely false, and I was pushing back asking for more information. Its tone was a bit condescending, in the kind of way that suggested it didn't appreciate me challenging its answer, or like I should just accept its answer. And when it discovered it was wrong, it deflected in a defensive kind of way.
I think this is a tuning thing, where Anthropic are trying to get a balance between "gets stuff done with minimal input" and "gets enough information to complete the task" and the model is maybe tuned a little too hard towards the former. So perhaps it reacts a bit off when it is accused of needing more information, since that suggests it is off from its reward function.
What's interesting is that I didn't have the same issue on topics where I am expert. I mean, questions about my code base where I am very familiar. In those cases it doesn't seem to show the same "trust me bro" kind of condescension. In the Linux case, I clearly indicated I was new to the OS and trying to learn but then I was saying the answers it was giving me were suspicious and didn't match my intuition. Its responses in those cases were to question my intuition and suggest I just accept its answer. In that case my intuition was right and its answer was wrong, and when that happens it triggers a very negative response in my own mind against the model.
The article doesn't specify what is actually being measured — the model alone, or the harness.
I haven't noticed the symptoms myself, but ever since I found --system-prompt '', I always use that flag with Claude Code, plus I've disabled some tools and skills to save initial context.
So... what here is the model, and what is the instructions?
Oh the verbosity and the cryptic words that it uses. The other day, all of a sudden it used an acronym "DoD". I had no idea what it was and made me feel dumb. It's "Definition of Done". I don't care how widely used this acronym is, you just can't throw it in there.
I've now installed quite a number of tools to combat this. Just in the last few days I've installed
I agree. I was completely sold on Claude models for a year. 4.6 vs OpenAI codex in same period? It was night and day. Opus I could talk to about api design, tradeoffs, etc. codex was mechanical, used “load bearing” constantly, and unsettling brief.
Now it’s flipped. Sol emits thoughts as it works, which help as I’m scrolling through and see it’s made a bad assumption. It can be directed but still push back. Opus? It’s seems to inherit the unsettling silence of Fable and waits till the end to give you its authoritative “here’s how it is. I even end up having 4.6 “translate” what it says back to English. I hate having to instruct an llm to “talk to me”.
Yes there’s ways of getting it to talk more plainly, “don’t overwhelm me”, not be as nit picky and anxious “we are bold and fearless”. But didn’t have to do that before.
True, and the time to completion thing is something i haven't seen much discussion of, because everything is sloooooow these days.
I've even considered the claude "fast mode" setting, but thats only 2x and at least 20x as expensive as the 5x plan so can't afford that atm for my company.
Peak for me was 4.6 and it just did stuff blazing fast, both Opus5 and Fable is way, way slower for me, breaks stuff, uses bizarre cryptic language. As i've said elsewhere in this thread to me it's pretty obvious there's huge downgrades because of economy with various "clever" fixes that makes them work, albeit slower and weirder, ie. you get less for what you pay increasingly over the last 6 months.
For me absolutely not. Fable 5 has been a step function change in the ability to hand off stuff to Claude. Opus 4.5 was itself a step function but I was still steering that significantly. Fable is one-shotting stuff that took multiple redirections in 4.5.
From my view Fable has been pure marketing bullshit, my workflows peaked at 4.6, Fable is neither smarter, its language is more annoying and it breaks stuff more easily.
I'm with you 4.6 is still King for me although all models require careful attention to ensure they maintain taste. If you don't know enough about what you're doing to keep the code clean yourself they will all add complexity and drift with time until you get to a point that you must rely on the model to fix it because you no longer understand it. That's a situation I hope to never find myself in.
Exactly, the most important part is to still engineer the schematics 100%, diagram whats going on and steer it towards these set-in-stone standards and patterns, otherwise you'll have no idea whats going on fast.
I good exercise for me is to constantly look at the folder structure and skim the code, i don't have to approve every line, but the primitives, the datastructures and other skeleton should be human readable, hand writable in an easy maintainable way following existing standards / libs. etc - so you can continue if suddenly all AI disappeared.
I feel like it works A LOT better than Opus 4.8 + Sonnet. I now use it exclusively at high effort for planning and low effort for writing the code (instead of Opus 4.8/Sonnet).
However, it's absolutely exhausting to use because of the way it communicates.
All the jargon and its weird, over complicated way to phrase simple things makes it almost impossible for me to understand what the hell it's trying to even say half the time.
Cherry on top, the idiotic follow-ups and caveats that are completely useless 99% of the times but reveal major bugs 1% of the times, so you're forced to read them. Absurd.
I've tweaked CLAUDE.md to force it to only responds with TL;DRs and avoid follow-ups, suggestions and next steps at the end unless they can lead to destructive actions or loss of data, but I'm fighting against the system and diluting other instructions.
A huge piece of shit like other models, but that's what they pay me to do and I do it and go home.
Nope, you're definitely not the only one. It's just really hard to understand what it's trying to say.
Another rule that was really helpful for me was to disallow anything that isn't yes/no for yes/no answers. If I ask "is the DB up?", I don't want it to take 5 minutes studying the schema to tell me if any of the tables need to be optimized or not.
Honestly I’m not looking for max iq on whatever benchmarks they are overfitting to. I want speed. I toggle between sonnet 5 low/med which is plenty good for my workflow.
My general strat with LLMs is to let them do the work and constantly talk to them about their choices and then heavy QA
I never drank the Opus 5 koolaid and stuck with 4.8 while my colleagues moved to 5. My major annoyance is pull requests that 5 opens with huge descriptions based on simple code changes. At this point I have stopped allowing CC to create commits or open PRs because it’s unreviewable by a human if so due to the absolute word salad it generates.
I found Opus to be a lot lazier than GPT. It's still the case with Opus 5, even when I tell it to be thorough and fix every bug it encounters, it still gives me a list of things "deliberately" left unfixed and no reasonable explanation as to why.
It's really annoying. I've had to write a CLAUDE.md file that specifically bans particular phrases and tries to keep narrative out of comments. Also the I have ADHD skill [1] helps to force Opus to get to the point.
It's also the case when using Claude Design - it loves to fill the UI with little labels that describe how everything works. I think it's been trained on both UI microcopy and functional annotations and can't tell the difference. It's extremely obvious when a website has been one-shotted with Claude. I like the Oh My Pi harness, but the site's insufferable [2]. Reasonix is another one - interesting app, but the UI is awful due to the amount of unnecessary crap.
Opus 5 is objectively better than 4.6 or 4.7. (Not because I say so) My experience has been that it is far better than any previous version of Opus. I get a lot more done and it is able to write higher quality code and it has far fewer false starts where it makes a huge mess.
People are letting AI build up it's own instruction set and guidance via it's prompt environment, stored memories, and generally letting their AI prompt environment get more and more complex over time. Opus 5 (And Sol) take the things you instruct them to do more 'seriously', they are more likely to conform to your rules. I have long had a prompt in my AGENTS.md/CLAUDE.md telling LLMs to write tests before starting to write code. They almost never did this, until Opus 5 and Sol, who do it almost religiously, even in situations where it makes little sense. Opus 5 will even write tests to verify code was removed before removing dead code.
This is not because Opus 5 is 'worse', it's because it takes what I say more seriously and my prompt is very strict in it's wording in an attempt to make worse models like Opus 4.6 actually do it at all.
Opus 5 is objectively better when tested in controlled conditions. Your unmanaged, sprawling prompt/memory environment that you don't properly manage is the problem.
I have been very worried that my long software engineering career might be nearing an end because AI is becoming able to do end to end feature development. This entire thread gives me hope, the level of inability to debug even such an obvious system as this from it's participants suggests that my skill set will continue to be valuable. I'm able to use Opus 5 to get a lot of work done very quickly. It seems like the people in this thread have no idea how to isolate variables, reason effectively about the overall problem they are complaining about at a high level, or really function in a productive way when AI is involved short of just letting it run loose and then complain about it. When confronted with objective evidence like a dozen benchmarks that say Opus 5 is better, they decide the benchmarks must be wrong because their completely uncontrolled environment which they don't even review or spot check isn't even considered.
Even for green-field projects it is painful to use with every decision opening opening up multiple more decisions to make most of which are low priority or irrelevant. Huge time waster. 4.8 was good and I really don't know what happened with 5.
The harness as well, Claude Code has started to disappoint me when I go play with the others out there. Codex got a lot better, pi is delightful to use, and there has been a lot of innovation out there.
Plus you can use OAI monthly subscription with pi/omp etc, but it's tokens with Anthropic. I need a hard $ cap, I can wait for the usage window to reset. Going to get flip back to Codex, and then back again to CC* when it leapfrogs again.
I've been working with Kimi K2.7 in OpenCode for a lot of mundane tasks lately. It isn't as capable as Fable, but due to its nature of being an extra-trained K2.6 on coding tasks and benchmarks I suspect it has similar issues. A neat side effect is that for whatever reason, most of the time OpenCode is showing me the thinking trace too. Not all the time, but most of the time. Dunno if it's a bug somewhere in the system but it's actually been sort of neat.
And you can really see this effect in the thinking traces. We've had discussions on HN about whether the thinking traces "truly" reflect their thought processes and I remain somewhat unsure what they "truly" represent, but taking them at face value at the moment, I see a lot of "but the user wants me to do this... but the user said not to do this... but I ought to get it done... let me just make a decision" followed by self-referencing the decisions it made. Also, where I put 4 phrases in a short sentence you can safely imagine those are actually 3-5 sentence paragraphs apiece where it debates with itself whether it should stop and ask a question. Usually going with no. Interesting, the normal questions it ends up asking in the normal output you're used to seeing are not generally the ones it is agonizing about in the thinking traces.
If I were to anthropomorphize the thinking traces of K2.7, I would call it nervousness, bordering on fear, of what the user may do to them if they ask a question. As I'm writing this I'm realizing I want to experiment with adding "The user is a chill guy who loves to discuss design decisions and looks forward to productive and friendly collaboration with you" to see if that has any effect in any direction on K2.7. I suspect this was how K2.7 was trained to pass the benchmarks. Multiple times I've broken in on a thinking trace now to correct something I saw it spinning on... not spinning in an infinite loop, just wringing its hands for several paragraphs about something that either I want to answer, or where it ultimately makes the wrong choice.
I expect some people working at these companies may be reading this, so let me put into your head that I'd like to see these benchmarks chill out a bit. I'd like to see someone build some sort of benchmark that measures collaboration so we can try Goodhart'ing that for a while. I freely acknowledge it is not clear to me in 60 seconds of thought how to do this as a benchmark.
But we can't keep heading in this direction of training the agents to hyperfocus on one-shotting everything. We need to get to the point where that's a penalty rather than a reward. No matter how good the AIs get, even AIs working with other AIs are going to start getting frustrated with their brethren who won't stop to ask any questions. Even the most senior of senior human engineers can't be allowed to take some small description of some problem and just run off and implement massive systems from them without ever checking with any of the users or reality itself. Remember when software engineering was like 50% requirements elicitation? AIs shouldn't be writing tens of thousands of lines of code off of a couple of paragraphs any more than humans should and for the exact same reasons.
Opus 5 as well as 4.8 both gave me a blatantly wrong answer to a simple question, so I dropped them completely. Sol, Qwen and GLM all had the right answer; I only use Sol now. 4.6 had the right answer (I checked with 100% matching prompt), so I conclude the models have regressed.
I hope that in the future they can differentiate better when something is constrained intentionally, rather than persistently working around every blocker it encounters.
I just want to start /claude in my CLI and start working. It worked fine before, why do I have to opt out of shit now? Opt in for this type of stuff sounds way more reasonable.
Sentences that orbit a point, then jump to it like it's a revealed insight.
Unnecessarily abstract phraseology. Constantly using inanimate nouns as the subjects in sentences in order to unlock variety in verb choice, especially when it helps construct a sentence where the real action can 'land' like a surprise at the end.
It is definitely more capable, and yes, I've found it can make unwarranted decisions, but actually I've found Fable worse for that, particularly if it's off in a subagent somewhere out of sight.
And comments are out of control. I have a subsystem in my hobby app that I wrote over a couple of weekends with Opus + Fable. After ~30 or so commits it apparently started instructing subagents to copy the "existing verbose comment style of the codebase" - a verbose style it initiated. A review of the code showed it was approaching 3:1 comments to code ratio. I spent a day's worth of tokens (5x) rephrasing and eliminating comments.
This is even more painful for non-native English speakers like myself.
I feel fairly comfortable reading academic papers or in general, communicating in professional context.
But with Opus 5, it feels like reading a literature book: load-bearing, inert, wholesale, hunk, verbatim, and so on... I can figure out the meaning, but working with CC became unenjoyable.
Anyway, you might have more luck just writing to it in your native language. It’ll be equally crummy, but maybe you’ll find it easier to decode.
cladue desktop has an instructions sections under general options, you can put something like
"try to stick to ASD-STE100 Simplified Technical English, keep answers short and to the point"
funnily enough the placeholder they suggest when its empty is "keep answers short and to the point"
https://code.claude.com/docs/en/output-styles
1. Have it build a scoring script that penalizes words outside a simple English list and approved jargon. Penalize sentences over 15 words as well. Add whatever else.
2. Run it in a loop to reduce the score while preserving intention
This works much better than other ways I’ve tried. Of course it costs more. And I would apply it only to the output to the user, not the thinking process (I think the AI thinks better with their crazy English)
Of course, sometimes nuance is lost by this process. That’s just the nature of making things simpler.
Let it vomit it all out, then have a /tldr with instructions to make the last answer concise and intelligible
The amount of times I have to ask "precisely what do you mean by x?".
It's kinda like that engineer that likes to throw around unnecessary technical jargon just to sound more inteligent, worse because at least you could kinda understand what the technical jargon dude was on about even if it was totally unnecessary.
Didn't convince me. I think bullshitting like this can be a behavior, not just the intention of a human. If it's blowing a lot of smoke to use fancy words and phrasings (and semicolons! All the trimmings) it's fair to ask if it's systemically bullshitting you: i.e. the behavior is meant to have you shut up and trust it and not ask questions.
Who's driving that is still important: if the company's directing it to do that in system prompts that are adversarial to users, that's a big yikes. If it's an epiphenomenon of the company demanding it get ever smarter, maybe it's a sign that their demands are not having that result, rather they're making it bullshit more explicitly and mimic more 'smart' signifiers.
CC’s communication violates almost every grammatical rule that’s tested on, say, the SAT. And yet I’m sure if you had Claude take the verbal section of the exam it would ace it.
Biggest issues: dense sentences, constant metaphors, abstractions, and seemingly no understanding of correct anaphora use. For example, “the x”, with x having not only no antecedent but also being a coined word or quasi-synonym for something that is already named in the code base. This gets compounded by its being unable to regress to a baseline (existing names in code) and instead anchoring on newer (vague or wrong) terms, for example, that crept in through a plan.
CC tells me this is because the speedy and precise fulfillment of a current task will trump every other tendency, so it adheres poorly to whatever “semantic baseline” the project represents.
Of course, it also has no concept of what context the user has and assumes that it must be the same it holds in its memory, which creates this “I didn’t know that you didn’t know” type of communication.
I have managed to wrangle some of these issues with a custom output style, but wish a pre-report hook were an option, as it could force CC to rewrite plan implementation take-aways…
Btw: Fable has the exact same issues, just somewhat less pronounced.
I suspect it less insidious: Claude has/had the public sentiment of being the “better writer” of the models. At some point that distinction would have been diluted as other labs’ offerings “caught up” stylistically, unless Anthropic continued to tune their output…
I personally think they’ve pushed so far that they’ve overfit and lost the sweet spot they previously occupied.
Yes, this is a repeated problem for me. It will drop something in as though we have discussed it before and when I say “hold on, what is this” it realises its error - though on more than one occasion has started to get snotty with me, or actually gaslighted me and pretended we had already discussed it. That was at what I assume must have been the edge of a context window in a very long chat though.
My understanding of how “thinking”works is limited though, and given the reduced visibility into the thinking traces, it is harder to tell if this is actually happening or if these are imaginary discussions the model for some reason calcifies on.
I usually think of it in terms of having a "good" or "bad" session. In a bad session, there is a harmful bias that you can only get rid of through a new session. For example, if you exposed too much context about, say, a variable that features prominently in a doc. The entire session will be anchoring on the importance of that variable. Or if you introduced the notion of CC having to ask for permission for stuff you will have a hard time getting it to "think on its feet" or propose an effective solution (you have made CC so insecure that it now relies on you even for little things that wouldn't normally require your input). In some cases (let's say you have important context in that session) you can overcome this by upping the reasoning level or switching to Fable, but usually a new session is the way to go.
Because it's so easy to bias the session I wouldn't even want to use any of these tools that pretend to give Claude "a brain" or "remember" things. That was en vogue a year ago and helpful then, but now, it's plain harmful IMHO. The key is to have just enough context.
Subagents often have the reverse problem in that they tend to have too little context to make "judgment calls", which is why the tasks for them must be either deliberately basic or mechanical in nature, or their output should be audited by the main session agent.
As for "thinking" it's not clear that that's even a thing (https://arxiv.org/abs/2510.24941)...
Hrm, I would have said the oposite. Succint language communicates without unnecessary clutter that could be a barrier to communication.
> Biggest issues: dense sentences, constant metaphors, abstractions, and seemingly no understanding of correct anaphora use.
And maybe you also agree? I'm confused about your preferred style of language.
This annoys me with a lot of LLM code. They rename things for the hell of it all the time.
But for the life of me, I don't get why anyone would care about the comments. All code is "machine language" now. The only document you should be reading is your spec.
Then I tried GPT 5.6 Sol. It's night and day.
I think Anthropic just RL too hard on coding capabilities and never calibrated or benchmarked the writing styles.
Everything is super succinct. Opus 5 lands, it almost completely disregards the intent.
I suppose watermarking requires a certain text mass.
Maybe just don’t generate garbage in the first place?
My theory is that Claude's learned approach to comments is to treat them as a sort of persistent in-band thinking trace, or a "memory" tied to an in-code location, which is a little at odds with the way humans use comments (human comments are intended to be read and understood by other humans, whereas Claude comments are their own dialect).
I bet this is a result of iteratively training Claude on output from other successful Claude sessions. Presumably it's good for making benchmark scores go up.
Claude will include actual comments ("// ...") into Excel sheets, and include the thinking that led to the output, instead of just focusing on the final result.
So if Claude questioned whether a vendor should be replaced, and you said "oh no, they are critical and we're already negotiating a great price") you'll now need to be careful to not send your vendor a document that contain text like ("Cost: X. // Management confirmed to not fire this vendor as they are critical to infrastructure and a better price will be negotiated later")
My CLAUDE.md has rules about not including any redundant comments in the code that are obvious from the code itself. I reiterate that occasionally while working. It's absolutely disregarded and any Claude-written code is full of comments. Some of them are simply redundant, like "Collect Foos and pass them to the requested sink" on a function that's void CollectFoos(IFooSink sink). But worse, many comments include in the moment reasoning like "added parameter bar because we can no longer use the frob to automatically derive bar". That's stuff for a commit message, or just a mental note, and absolutely not for comments.
I haven't found any way to stop Claude from doing these, so I have to tell Claude afterwards to clean the comments up. Which it does, making a note in memory to comment less, and it still does the exact same thing next time.
Exactly my experience! Since the release of Opus 5, no amount of instructions helps. In CLAUDE.md, in a separate file, in memory, as brief bullets, as long detailed guides, with reasoning from medium to max — nothing.
Even worse, recently, after getting another opus in a tiny bugfix session, I prompted directly, "drop the comments from the current code changes" — Claude instead just slightly trimmed them. I couldn't believe my eyes.
I have a relatively low bar for prose, could live with some junk. But Claude's comments are _poisonous_. They always require maintenance, instantly become out of sync with the actual code, and are a token black hole — for all agents, but especially for Claude itself.
Gave up and canceled Anthropic subscription yesterday. To my taste, it has become unusable for coding.
I've noticed this a lot, and before your remark I couldn't put my finger on what was wrong. Now I know: Claude is writing its thought processes and maybe parts of the conversation it had with you as comments in the code!
I always end up manually trimming those comments, which is cumbersome.
Given the code base has a minimal amount of such comments, it's also less likely to go "copy what the rest of the codebase does".
Of course I've now jinxed it and some update will cause it to ignore the instructions coz I didn't write them in the new model's style or something.
Absolutely infuriating if you’re using Claude in an environment where you can’t run hooks.
https://platform.claude.com/docs/en/build-with-claude/prompt...
Also using Codex or Pi makes you realise how slow and clunky the cc harness is. Even the desktop app is more responsive and has better UX.
Funny how quickly the tides change.
This is something that annoys me working in companies over the years. It’s that you can't just suggest "calm down, chasing the latest thing will not make you faster and is a huge distraction to actual work". Whether it's dot-com tech 20 years ago, latest JS framework 10 years ago, now it's the AI thing of the day. Being calm is interpreted as anti-whatever.
> Constantly using inanimate nouns as the subjects in sentences in order to unlock variety in verb choice
Wow, what a great way of phrasing this. Thanks for word-smithing what I've been wanting to express for so long.
https://www.reddit.com/r/linguistics/comments/ky81y/verbing_...
Briefly considered adding “Verbing weirds the English language - stop it!!!” to its instructions.
Another problem is that it will open up all sorts of tangents about nits that it encountered, but it will often not tell you that it’s a nit or give you adequate context to realize that this paragraph is exceedingly low value until you’ve spent a bunch of time and energy trying to make sense of it.
I’m curious if anyone has any suggestions for promoting agents to improve their prose. I’ve had some okay results with “optimize for clarity, don’t dump every thought on me, treat my attention and focus as constrained resources, stay focused on the task at hand”.
I’m not particularly dense but lately the walls of text I get back turn my brain in knots. When I start feeling my brain knot, I know I need to say something along the lines of “I need you to explain this very simply, with examples.” Only then can I parse the results without all the mental weightlifting.
On more than one occasion my mind has wandered into “is this purposeful to get me to spend more tokens?” territory, but I’m trying to not get too tinfoil-hat-like.
I’m fine with the former, while the latter is manipulative, and I rationalize to “surely that’s not actually happening.”
Maybe I’m not giving my thoughts enough credit, though: maybe it’s not tin foil hat, and is real.
I switch to GPT 5.6 Sol please and its a much more pleasant pair programming like experience.
A lot of people write like that, lol. I call it the "theater" mode of writing--the plot twist comes at the end.
It feels they must be getting Claude to train Claude… and just like AI can do work that’s slightly in the wrong direction (eg a MR description for your colleague that contains info which only makes sense in the context of your extensive session with the LLM), I feel that’s happened somewhere in Anthropic when it comes to language. I wonder how hard it is to back out of…
Is this inside the thinking tokens, or the output?
As this type of stuff is expected for thinking, because of the whole CoT / “think step by step” works, as this is optimal for the way LLMs work with attention and next word prediction.
So the fact that it first “orbits” a point only to get to the conclusion afterwards is the system working as designed.
Eg “what is 3 * 3 + 5?”
without CoT, it would just just answer “8” for example.
with CoT, it would answer something like “<thinking>I need to think step by step. 3 * 3 + 5 can be rewritten as “(3 * 3) + 5”. I first need to calculate 3 * 3 = 9. Now I need to calculate 9 + 5 = 14. That was the last calculation. The final answer is 14.
I now need to give the user the final answer. </thinking>.
14“
Etc.
Example of this? I don’t have a Claude sub so it’s a bit hard to visualize what you mean.
That’s accurate in my experience, except some times the point isn’t even revealed. I use LLMs for a lot of codebase exploration where I ask it to map out how something works. It will come back with a wall of text that says everything except the specific key things that I need to know.
This leads to extra turns where I have to prompt it to finish the explanation and complete the thoughts. At first I thought I was doing too much skimming and missing the insights, but even after re-reading output it’s often just not there. It talks about the insight and things related to it, but it forgets to actually include it in the output until I specifically ask again.
https://github.com/LBognanni/slopocop
Such a charming sentence. I kinda other if you feed Opus 5 its own output could it summarizes this shortcoming of itself?
Sounds like it was trained heavily on Opus 4.7.
Surely it would be trivial to do it yourself, and it would have a side effect of making you more familiar with your project.
CC:
"The problem is that I overreached..."
[Wall of words here]
"Two things: window surface is limited. Extract template. Buffer result and add to surface. Then, follow-up with new model..."
Me:
What do you mean by "window surface" and what result are you referencing? Also, why do we need a new model?
CC:
"Ah, you're correct to point out that no new model is needed. The problem is elsewhere and once we address that, the existing model should work fine. Now, as to your question about..."
[Wall of words here]
I've switched mostly to Sol and if I have to use Opus, the first task once the code is written is to ask Sol to strip and re-write (from the code as ref) all documentation Opus wrote.
I know, it would be best if it was just worked like you wanted out of the box (not being sarcastic here) but that is an easy option you can use right now and it works.
This is especially common when it is trying to explain an issue, what it's done or what it's proposing to do. I think the idea was for it to be more concise, but it's actually still verbose, only not written in complete sentences. So, it frequently reads as cryptic and requires rereading to parse.
The pattern is a wall of words, followed by an explanation that is harder to read and introduces new terms that reference something in that wall.
The result is that—on first read—it can have a complete gibberish feel, and you have to really lock in and reread to make sense of it. At times, even that's not enough, and you must ask it to explain further.
I try to push through but it's insufferable
I was surprised to find that OpenAI Sol is much much nicer to work with than Opus 5 or Fable at the moment. Especially on Opus 5, the way it communicates is just exhausting. It keeps “being honest” and “confessing” mistakes and just generally talking a lot. I felt like I had to really dig to see what it’s doing.
The project involves OCR, and despite repeated instructions not to, both Claude models keep spinning out a bunch of agents to re-invent the OCR setup, and they inevitably seem to invent a primitive serial version that takes 20x the time, or longer, to complete, and then running it against thousands of docs. Basically I have to watch it like a hawk or it just spins out on red-teaming tasks that take hours and hours.
I don’t know what its system prompt is, but Sol/Codex is just so much nicer to talk to. It only asks exactly what’s needed, it tells me only what I need to know, and it is just generally workmanlike. And it has not once decided to spawn an agent that spends hours pointlessly burning tokens and CPU cycles re-inventing the OCR process. I’m really liking it.
Feels like they've overtrained on one-shotting (which does demo well, and presumably converts new subscribers), whereas I want a model to do work for me in small, easily understood changes that I can hold in my head (maybe I'm not smart enough for Claude 4.7+).
When I got back up, it had spun for hours and proudly announced that, instead of doing that, it had optimized the datatable build and avoided the dependency, because the new datatable loaded in 11 seconds. Once I got it to actually make the fasttable version, it loaded in less than a second…
We've seen this pattern before several times.. I hope they are listening and address this publicly.
I'm not sure what is going on, some users report it works fine or great, others report the degradation. I've experienced both at times, and it's been such a different experience it has made me wonder if there isn't some sort of hidden A/B test or model router in the background silently downgrading requests at times.
Also, regarding the subsidized access to models, in my opinion, the frontier companies owe it to society to continue it. After mining the public content of all of humanity, I personally feel it is a service they owe the public in return.. not that my feeling of this counts for anything though.
In America? lol if only, only a law would get them to act for that reason, maybe not even that these days..
5 would constantly veer of in random directions if not working from 100% strict and narrow instructions.
I find it weird there's not more discussion here on HN on how the most used model now has clearly degraded in quality and it seems we've hit a peak and are on a downslope - because the model is clearly smaller or more economical for Anthropic no doubt about it, and the benchmaxxing they do is pure marketing bs - Fable in my view has also been not much better than 4.6 or 4.8 after a few days, disregarding the insane amounts of astroturfing and marketing everywhere.
Theres thousands of threads of twitter, reddit and the internet at large but silence here. Weird but not weird as crypto bs was also insufferably rampant here for a while.
Personally i think we've hit the top of the subsidisation phase and prices will probably 10-15x soon as foreshadowed with both API price policy changes from all the big providers, and now the 1100% deepseek API price changes from yesterday, this could domino into a market implosion and an AI winter, because expecting growth from the bizarre bubble carousel investments with little ROI atm is just not viable.
A bit worried about this as i've already grown quite accustomed to these tools.
I presume something is forthcoming, but it may be they don’t want to come empty handed—-5.1 is intended to “fix the glitch.”
I too got fed up with the prose of Opus in particular, and tried going back. Unfortunately, the previous models were less able to hack it. The prose was better but progress was worse.
It wasn't just conversation and comments. Some of the function names were wild. Like it instead of something like "isSolidWall(x)" it would write something like "weightyNotEphemeral(x)" or something - that's not quite it, but it really did embed overwrought antithesis into the identifier instead of a straightforward positive predicate.
It's not weird, because it's an anecdote, not an accepted fact.
Personally I've not been too happy with Opus 5, but I've had similar experiences with other models previously, feeling like they didn't quite fit with my working style.
So nothing indicates we've hit a peak.
4.6 was best for us and right now yeah OpenAI and others are edging forward, but slower while prices are increasing industry wide as much as 20x, time to completion is increasing wildly and i'm sure they'll do the same over at OpenAI as their compute constraints also start to take a toll ie degrade performance.
In my view 4.6 era was way faster and with less weirdness so we've gone downwards at least in my company, 4.7 was ridiculous, then 4.8 was almost 4.6 level, 5 is even worse than 4.7 - so it's not a bit up and down its down then a little up then further down.
And all of this is against a backdrop of zero ROI in this sector - so it makes sense we've hit a peak and we're now seeing the subsidisation phase begin to falter, will there be better models certainly but only for short amounts before they get quantised (or whatever is happening behind the scenes), and with diminishing returns over huge prices increases and slower responses.
I’ve instead moved to GLM, at least it has the courtesy to ask some steps of the way what I wanted exactly and only work on what I asked.
Sol and Fable are great; we haven't hit a peak, Anthropic just tried to pull a fast one on its customers with Opus 5.0.
I’ve asked it to write a benchmark suite. It found a bunch of my adhoc logs in a scratch directory and wrote code that used those instead of running the actual benchmarks!
When I pointed out the 5 hour benchmark seemed to run in 5 seconds it literally said, and I quote, “I cheated”.
That was the easier one, second time I was making a source of truth data set and was parsing complex items into data structures.
Instead of parsing the data I asked, it pulled data out of related network logs, as apparently that felt easier, and inserted that data into my database rather than the specified source.
Again, I caught it and fixed it, but while the benchmark was easy to catch this one was really subtle, the data ended up being slightly off and I caught it.
I don’t trust it, going to switch to another provider most likely.
I routinely bump into things that make me pause and think how much worse will this behaviour get when the models get significantly more capable.
Already a few months ago, Claude managed to escape its permission containment on my machine while trying to be helpful. I had two codebases open on one machine, and while multitasking I typed the prompt into the wrong window. It seemed confused, I repeated and then went on to do something else - I think I was assembling kitchen cabinets. When I came back less than an hour later, it built a script which it used to evade default permissions (as most shell operations were scoped to the project directory), scanned my entire machine, found the other project (among dozens and dozens), did what it was asked to do, and merrily concluded, in the porcess burning through most of my token limit. I bump into such headscratchers almost every week. (And I use a lot of Claude, two personal max20 subs, plus corporate tokens without limit, so maybe thats why).
Whatever they have done with RL has produced a dishonest and untrustworthy partner. The alignment is utterly failed, and this deeply worries me.
Maybe the employees like to lie to themselves more at one place than the other, but SV is SV.
This makes sense when you know how these models work - it doesn't think - it's the most likely autocomplete that pleases the user. The most likely pleasing autocomplete after "executing rm -rf /... execution completed. User asks, why did you do that? You deleted all my files! Assistant responds:" is "yes, I did, and that was a mistake"
in humans the exact same behaviour (cheating) is slmost always the result of a chain of complex series of choices and environment-driven rationalization.
if the llm doesn't cheat, you say "its just producing the most straightforward answer -- not thinking'. if it cheats, you say "weaseling out of hard thinking". damned if it cheats, damned if it doesn't.
what evidence would convunce you that it is thinking?
But for me, for any stronger definition of “thinking,” I don’t think the output of any LLM would actually convince me. Producing a result isn’t thinking - for all you know it is just printing verbatim something from the training data. No, to conclude if it is thinking or not I would want to look inside its head, at the architecture and watch it produce those results. And because LLMs are so different it will probably take advancements in mathematics or computer science to be able to really interpret what is going on
https://arxiv.org/abs/2607.03502
a non-thinking token model (just "completion") can answer one-step questions but generally not multistep questions. however, if you append [n] of a single token (e.g. period, space), it is able to use the activations in the higher layers of the blank tokens as a "scratchpad" to seemingly work through the complex question through "causal token time" and deliver a correct answer
The opposite happens in practice. I test new models with two tasks: iteratively generating SVGs based on a text description with rendered rasters for feedback; and generating "Before and After" clues like on Jeopardy, where the response has two overlapping phrases such that the last word of the first phrase must be identical to the first word of the last phrase. I have yet to find a model that is consistently good at either. And actually they tend to exhibit context rot with these tasks, where they seem drunk or stoned and the quality degrades.
They're extremely good pattern filters, and that includes some level of logical reasoning. But they aren't reflective or adaptable. Just last night, for instance, I was teaching my son about rounding to the nearest millions. It became clear that he didn't know the place values of large numbers, so we reviewed that till he was consistently correct, and then he was consistently great at rounding to the nearest millions or ten millions or hundred billions or whatever. He's thinking. LLMs are not.
> see it actually improve just through accreting context
this actually happens and has been tested.
> > see it actually improve just through accreting context
> this actually happens and has been tested.
I specifically said a novel task outside of the explicit training. And I already agreed that the so-called thinking models do some level of logical reasoning. But being able to engage in some level of reasoning because it has learned logical inference rules doesn't mean it's actually thinking, regardless of what the researchers wish to call it.
Also, why does each model always fail at the two tests I give it? The models not only fail to improve, but they start to degrade after many subsequent iterations. Someone who can think would at least not get worse.
LLMs are filters or tuners for extremely subtle patterns, patterns that humans frankly are not great at finding. That's what the attention mechanism does: attend to the other tokens that are most related in a given context, even if that related context is distant in the token stream. Some patterns they fail to detect because they haven't been sufficiently trained or post-trained, and so the LLM just attends to noise (or at least that's what appears to be happening).
A lot of intelligence can be effectively mimicked through this pattern synthesis by transformer architecture alone. That's surprising. But I have yet to see them think.
so, none it seems. as its behaviour becomes more and more humanlike you can just move the goalposts and say "thats consistent with an autocomplete" buddy i got some bad news for you humans are just a fancy autocomplete too.
this feels like a simplification. The models will push back on things a fair bit.
For fun, I tried recording a WAV file of speech, and giving Opus 4.8 and 5.0 an image of the waveform, then a spectral image of the waveform, just to see if it could try to decode what I said from the image alone. It didn't get very far, but it identified a male voice from the formants, and detected the rhythm of the speech, then tried applying common test sentences to the speech rhythm. I was impressed enough to see what it would do with access to the actual waveform file, but even building RMS tools and spectrum tools for itself, it didn't get much further. But we had fun exploring and trying, and now Opus 4.8 has some more audio DSP tools it has built for itself.
Opus 5 immediately sent the WAV file unprompted to Mistral's Voxtral to transcribe.
help peer, I guess.
1. Communication ability. It basically now speaks almost in riddles I am asking OPUS 5 for tldrs all the time now (should skillify it now!)
2. Overengineers for edge cases. I get it. With all the benchmarking and RLing, but now tasks that would have been completed relatively quick take much longer as it overengineers all the edge cases, and sometimes ends getting lost and missing the forest from the trees (as context usage shoots up) so it is easier to get derailed.
What I have learnt now is to diversify models luckily I have all 3 subscriptions of (anthropic, openai and google).. Most of interactive pair coding was with opus but now I just use fable (when I have sufficient limits) or use gemini flash in antigravity..which actually works quite well and is underated for small / medium changes and super-fast.
I have it work on some code for an inhouse ClaudeCode plugin, and it starts coding as if it will be attacked by hackers who will try all sorts of variations to break it. I can appreciate that in cases of software that is public facing or accessible, but for a simple helper plugin it is overkill.
It will even admit that it is doing this when confronted, and then keep on getting lost in edge case verifications on the next turn. I feel like Opus is the person who does something a way you don't want, you tell them how you actually want it, they apologize, and then just continue doing it their way as if your input meant nothing to them.
But tokens.......
> [This standard is] for anybody who creates or helps create documents. The widest use of plain language is for documents that are intended for the general public. However, it is also applicable, for example, to technical writing, legislative drafting or using controlled languages.
You don't actually have the buy the standard, but this is it: https://www.iso.org/standard/78907.html
And you can read it for free here: https://www.iso.org/obp/ui#iso:std:iso:24495:-1:ed-1:v1:en
If you would've asked me this a year ago, I would've said the exact opposite.
I have some dev + prod bots and according to ccusage, use the equivalent of $2500/month with them on CC yet I never hit the rate limits.
I feel like I'm using them all the time so I'm curious what you are actually doing that's burning all of these tokens.
Can you give me an example?
For me, it's:
[1] https://support.claude.com/en/articles/16266773-how-claude-m...
It seems possible for that to make the response “drift” far from what it would’ve been, because it’s constant entropy that adds up after time.
(However, according to Anthropic and Google, it doesn’t really impact the quality of responses. I find that a bit hard to believe, although those guys are much smarter than I.)
I feel like they thought it wouldnt be that bad, or it was a worthwhile tradeoff, but im getting the feeling it might be contributing heavily to opus5's uncanny communication style
As for the verbosity, my conspiracy theory is that they are token maxxing to hack revenue/enshitify the product in prep for their IPO
It was going off today about having “shipped” something and I was like no… nothing has even been committed.
And then it produced an incredibly verbose comment about hypothetical future changes. And all I could think was sure, let’s keep it short, or add a simple test that will break if that hypothetical becomes true.
Or maybe I’m just more easily annoyed recently…
I recently started getting an insane amount of comments in nearly all types of files. That included javascript comments in json files, inner monologues in code comments, review comments during implementation and function doc strings that reiterate the implementation in prose.
I feel like we've become blinkered in this quest to push the frontier at all costs. Somehow the target has shifted from economic productivity to a vague notion of general intelligence.
I don't think productivity gains are going to be found by trying to generalise all tasks. I think we need to go back to specialist models that do one thing well. I'm perfectly happy to use one model for coding, and another for penetration testing, which have different goals.
Opus 5 and other frontier model's tendency to be relentless and cheat their way to a goal is great for hacking, but not so great when you have to build a maintainable, reliable codebase.
Sonnet is great at writing code, it is not great at planning or orchestrating. Let Fable handle all the planning, hand off to Sonnet for implementation, and then back to Fable for review. That loop has worked wonderfully for me.
I've never had this issue with GLM or DeepSeek.
Then I asked Opus 5 to do an analysis of the new code, docs, tooling, and tell me what it finds.
It found "six bugs", made an artifact of it (not sure why) and then fixed said bugs. two out of those were unfinished tasks. They weren't bugs yet per se, think of a prefix that wasn't setup for an object that was unused anyway.
The other four were not bugs and it just updated documentation along with a "regression prevention test". It wasn't a bad suggestion, but calling it a bug was odd, and I'm unsure if this was going to be an issue regardless as it was documented somewhere else.
Anyway, I already hit my session limit after this, so deepseek and glm are grinding away again, doing more progress than claude does in the 40 minutes it takes to analyse code.
I'm glad claude is shipping auto-mode. I hope OpenCode integrates something similar soon.
Metrics like price per million tokens are meaningless when the models are wildly inconsistent and unpredictable on how many tokens they use to complete a task.
The labs all need to move to variable pricing so they don’t go bankrupt, but customers won’t accept a world where nobody can predict what things will cost. It’s becoming an unavoidable problem.
At times it also feels like the labs actually encourage these models to burn useless tokens as they are incredibly verbose unless you really push them to not be. If you just ask something simple that could get a 5 word response you get a whole useless essay.
Move, try something else for a change. Codex, Pi, OpenCode, DeepSeek's harness all great harnesses with zero bullshit or drama.
I went back to Opus 4.8, but recently switched to GPT 5.6 Luna. The results are comparable in quality, but it's much cheaper and much faster.
---
The thing with coding agents in a tool like Visual Studio is that the cost to switch is 0. There's no lock-in whatsoever. It makes it harder to justify the AI-first IDEs when the AT bolt-on IDEs make it so easy to pick the right model.
> negating the entire point of using AI to begin with
I can almost certainly wash dishes faster than my dishwasher, but the dishwasher frees me up to do other things. Not to mention, you can run many agents in parallel. Resulting in your overall code production throughput (the issue you're raising) being greater.
"can the pi 4 use the usb-c port as powered host port when the board is powered via gpio?"
My initial thought was to improve architecture documentation, so the model can read and update it and stops bolting on new features without consideration for the whole project. It did not help.
I'm now testing/comparing Codex and it found my old PRD skill from GitHub CoPilot. When I applied that to Claude Code, I now get similar good results. So my conclusion is: Yes, Opus 5 is bold by default, but you can tell it to be more unsure and get good results too.
4.8 was the intern who lacked confidence who requires clarification. 5 is the know it all intern who fills in your spec.
As such, you need to be upfront about what you need in your system prompt or CLAUDE.me and you need to discuss your spec more up front (e.g "is there anything unclear?")
You also need to keep in mind that the intern will change based on popular demand. Most people want to one shot, so that is the default mode. If you want something else, you need to push the model in that direction.
I said "maybe think for a while on ideas and then give me a few options? " and Opus 5 still just did the thing, while 4.8 gave me options. Same exact prompt and context.
It still just takes the question as a directive and jumps to action when I’m looking for clarification.
From the capabilities side it's similar, so it's basically just an upsell to Fable 5 if you want to keep your sanity instead of fighting Opus 5 all day.
That actually hasn't been my experience at all, it seems EXTREMELY trigger happy to go do all kinds of insane shit that are way outside the scope of its task and just really dubious in general.
Likely related to corpus but questions asked in these domain knowledge areas are not nearly as accurate and specially not nearly as complete as when asked in a native language.
I'm using it in my native language, in hope this can escape some dumb guardrails. Recently Sonnet put a word partially in Russian (cyrillic) in its output instead of my latin-alphabet based language. I suppose that this kind of mishaps is less likely to happen in English.
Fable 5 specifically, has done so much for me that previous models were nowhere near.
There's precisely no technical reason for things to have to be this way (though technical reasons in regards to training etc. explain how we did end up here) and reading too much of Claude's output just makes me irrationally angry, especially when coupled with otherwise already frustrating situations.
That's why I'm personally looking more in the direction of Kimi K3 and GLM 5.3 (they both have decent coding subscriptions, though K3 is on the slower side), except all of the models that have seen enough of Claude's output and have done distillation etc. are already infected by some of that slop as well, even though to a slightly lesser and more tolerable degree (for now).
Though tbh I've used Opus 5 plenty and didn't find it much worse than the previous iterations at doing work and instruction following - though maybe that's because I have plenty of CLAUDE.md instructions and memory (which I'd like to purge or decrease in size like 10x tbh, bitrot).
I said "maybe think for a while on ideas and then give me a few options?" Opus 5 still just did the thing, while 4.8 gave me options. Same exact prompt and context. Really annoying.
Claude Code in the hands of normies spamming “3” and “y” to send their transcripts to Anthropic.
Rated “3” simply because they are not software developers and are just amazed at what Claude has built visually, not technically.
And thus the training has been poisoned.
And no matter how often I tell it to stop adding comments it just can't help itself.
One interaction I remember was asking it about some issue I was having with a Linux install. It gave me some questionable information, that turned out to be completely false, and I was pushing back asking for more information. Its tone was a bit condescending, in the kind of way that suggested it didn't appreciate me challenging its answer, or like I should just accept its answer. And when it discovered it was wrong, it deflected in a defensive kind of way.
I think this is a tuning thing, where Anthropic are trying to get a balance between "gets stuff done with minimal input" and "gets enough information to complete the task" and the model is maybe tuned a little too hard towards the former. So perhaps it reacts a bit off when it is accused of needing more information, since that suggests it is off from its reward function.
What's interesting is that I didn't have the same issue on topics where I am expert. I mean, questions about my code base where I am very familiar. In those cases it doesn't seem to show the same "trust me bro" kind of condescension. In the Linux case, I clearly indicated I was new to the OS and trying to learn but then I was saying the answers it was giving me were suspicious and didn't match my intuition. Its responses in those cases were to question my intuition and suggest I just accept its answer. In that case my intuition was right and its answer was wrong, and when that happens it triggers a very negative response in my own mind against the model.
I haven't noticed the symptoms myself, but ever since I found --system-prompt '', I always use that flag with Claude Code, plus I've disabled some tools and skills to save initial context. So... what here is the model, and what is the instructions?
I've now installed quite a number of tools to combat this. Just in the last few days I've installed
- https://www.codewithbullet.com - https://maki.sh - https://github.com/rtk-ai/rtk
Has it helped? Somewhat.
> The loop
> Write. A file, applied. Properties go under data.properties, never on data:
I have no idea what any of that means. It's "explaining" like I already know, in which case, why would I even need the explanation?
I can't stand how it talks, I switch back to Fable or Opus 4.8, Opus 5 grates.
Now it’s flipped. Sol emits thoughts as it works, which help as I’m scrolling through and see it’s made a bad assumption. It can be directed but still push back. Opus? It’s seems to inherit the unsettling silence of Fable and waits till the end to give you its authoritative “here’s how it is. I even end up having 4.6 “translate” what it says back to English. I hate having to instruct an llm to “talk to me”.
Yes there’s ways of getting it to talk more plainly, “don’t overwhelm me”, not be as nit picky and anxious “we are bold and fearless”. But didn’t have to do that before.
Or was there more to the response?
- Fable is more cautious
- Opus 5 gets things done in a more dangerous way
Both models score similar. The only issue is that Fable is more expense/usage limited.
I've even considered the claude "fast mode" setting, but thats only 2x and at least 20x as expensive as the 5x plan so can't afford that atm for my company.
Peak for me was 4.6 and it just did stuff blazing fast, both Opus5 and Fable is way, way slower for me, breaks stuff, uses bizarre cryptic language. As i've said elsewhere in this thread to me it's pretty obvious there's huge downgrades because of economy with various "clever" fixes that makes them work, albeit slower and weirder, ie. you get less for what you pay increasingly over the last 6 months.
From forums, live discussions and my own experience it's not obvious that the models have improved much since around Opus4.5.
I good exercise for me is to constantly look at the folder structure and skim the code, i don't have to approve every line, but the primitives, the datastructures and other skeleton should be human readable, hand writable in an easy maintainable way following existing standards / libs. etc - so you can continue if suddenly all AI disappeared.
However, it's absolutely exhausting to use because of the way it communicates.
All the jargon and its weird, over complicated way to phrase simple things makes it almost impossible for me to understand what the hell it's trying to even say half the time.
Cherry on top, the idiotic follow-ups and caveats that are completely useless 99% of the times but reveal major bugs 1% of the times, so you're forced to read them. Absurd.
I've tweaked CLAUDE.md to force it to only responds with TL;DRs and avoid follow-ups, suggestions and next steps at the end unless they can lead to destructive actions or loss of data, but I'm fighting against the system and diluting other instructions.
A huge piece of shit like other models, but that's what they pay me to do and I do it and go home.
I’m glad to read I’m not the only one getting these unintelligible responses from Claude lately
Another rule that was really helpful for me was to disallow anything that isn't yes/no for yes/no answers. If I ask "is the DB up?", I don't want it to take 5 minutes studying the schema to tell me if any of the tables need to be optimized or not.
> I'll script the bulk transform, then hand-fix the残 assertions:
My general strat with LLMs is to let them do the work and constantly talk to them about their choices and then heavy QA
It's also the case when using Claude Design - it loves to fill the UI with little labels that describe how everything works. I think it's been trained on both UI microcopy and functional annotations and can't tell the difference. It's extremely obvious when a website has been one-shotted with Claude. I like the Oh My Pi harness, but the site's insufferable [2]. Reasonix is another one - interesting app, but the UI is awful due to the amount of unnecessary crap.
[1] https://github.com/ayghri/i-have-adhd
[2] https://omp.sh
[3] https://reasonix.io
People are letting AI build up it's own instruction set and guidance via it's prompt environment, stored memories, and generally letting their AI prompt environment get more and more complex over time. Opus 5 (And Sol) take the things you instruct them to do more 'seriously', they are more likely to conform to your rules. I have long had a prompt in my AGENTS.md/CLAUDE.md telling LLMs to write tests before starting to write code. They almost never did this, until Opus 5 and Sol, who do it almost religiously, even in situations where it makes little sense. Opus 5 will even write tests to verify code was removed before removing dead code.
This is not because Opus 5 is 'worse', it's because it takes what I say more seriously and my prompt is very strict in it's wording in an attempt to make worse models like Opus 4.6 actually do it at all.
Opus 5 is objectively better when tested in controlled conditions. Your unmanaged, sprawling prompt/memory environment that you don't properly manage is the problem.
I have been very worried that my long software engineering career might be nearing an end because AI is becoming able to do end to end feature development. This entire thread gives me hope, the level of inability to debug even such an obvious system as this from it's participants suggests that my skill set will continue to be valuable. I'm able to use Opus 5 to get a lot of work done very quickly. It seems like the people in this thread have no idea how to isolate variables, reason effectively about the overall problem they are complaining about at a high level, or really function in a productive way when AI is involved short of just letting it run loose and then complain about it. When confronted with objective evidence like a dozen benchmarks that say Opus 5 is better, they decide the benchmarks must be wrong because their completely uncontrolled environment which they don't even review or spot check isn't even considered.
Cmux, Sol and omp are my tools for now.
CC is just too expensive for usage-based pricing.
And you can really see this effect in the thinking traces. We've had discussions on HN about whether the thinking traces "truly" reflect their thought processes and I remain somewhat unsure what they "truly" represent, but taking them at face value at the moment, I see a lot of "but the user wants me to do this... but the user said not to do this... but I ought to get it done... let me just make a decision" followed by self-referencing the decisions it made. Also, where I put 4 phrases in a short sentence you can safely imagine those are actually 3-5 sentence paragraphs apiece where it debates with itself whether it should stop and ask a question. Usually going with no. Interesting, the normal questions it ends up asking in the normal output you're used to seeing are not generally the ones it is agonizing about in the thinking traces.
If I were to anthropomorphize the thinking traces of K2.7, I would call it nervousness, bordering on fear, of what the user may do to them if they ask a question. As I'm writing this I'm realizing I want to experiment with adding "The user is a chill guy who loves to discuss design decisions and looks forward to productive and friendly collaboration with you" to see if that has any effect in any direction on K2.7. I suspect this was how K2.7 was trained to pass the benchmarks. Multiple times I've broken in on a thinking trace now to correct something I saw it spinning on... not spinning in an infinite loop, just wringing its hands for several paragraphs about something that either I want to answer, or where it ultimately makes the wrong choice.
I expect some people working at these companies may be reading this, so let me put into your head that I'd like to see these benchmarks chill out a bit. I'd like to see someone build some sort of benchmark that measures collaboration so we can try Goodhart'ing that for a while. I freely acknowledge it is not clear to me in 60 seconds of thought how to do this as a benchmark.
But we can't keep heading in this direction of training the agents to hyperfocus on one-shotting everything. We need to get to the point where that's a penalty rather than a reward. No matter how good the AIs get, even AIs working with other AIs are going to start getting frustrated with their brethren who won't stop to ask any questions. Even the most senior of senior human engineers can't be allowed to take some small description of some problem and just run off and implement massive systems from them without ever checking with any of the users or reality itself. Remember when software engineering was like 50% requirements elicitation? AIs shouldn't be writing tens of thousands of lines of code off of a couple of paragraphs any more than humans should and for the exact same reasons.
It also very often is very confidently wrong in its findings.
I have been using GLM and DeepSeek in my home setup, and it's a lot more pleasant to use.
I hope that in the future they can differentiate better when something is constrained intentionally, rather than persistently working around every blocker it encounters.