We can have these micro easter eggs clearly indicating that flawed humans were involved, or we can have perfectly proofread Opusplaining. Enjoy the former while you can!
What's funny is that, being a claude code user, I don't need to give someone else's python package a 24/7 back door into all my activity, I can just make my own.
I have a pet theory that the Opus prose style/smell we all have grown weary of is due at least in part to the models writing more for themselves and each other than for humans. They're packing lots of signal into fewer words and they don't care if it sounds cringe because it works better as glue in long-running tasks.
I'm also thinking of the 2017 novel "Void Star" where AIs who operate everything have long since left ceased bothering with human languages, and it takes a rare sort of direct matrix-gazing savant to be able to try and horse-whisper them into doing or revealing anything they didn't already plan to do.
There's a huge difference between the kind of prose you see in final output vs CoT windows. The final output is very much not what I'd call "packing lots of signal into fewer words" (aside perhaps from "Claude-isms" being easy enough to scan for if for some reason you actually wanted to scan for them, which other agents might want to for all I know); and if agents are writing for each other then presumably they could stick to CoT-speak (unless it's a distillation risk?).
I find them almost unintelligible. I'm a native English speaker. I read a lot, so I think my comprehension should be at least OK. I'm not even particularly stupid. Yet when faced with things like below (a direct copy/paste from a handoff document in a long running vibe-coding session), I have no real idea of what it's trying to tell me. Is it important? Do I need to do anything?
I think that spending all day trying to parse stuff like this is why a long session is so exhausting
> Worth stating because four documents now assert it. The console freeze was recorded in exactly one place with exactly one justification — a dead drag handle during a booked half-day you do not get back — and handoff-4.3-done.html's own wording is that 4.4's review page "could not break the console, but the downside of being wrong is that half day". No second reason. Checked, not recalled.
It's both dense and vacuous. Dense because it's full of jargon its made up, and vacuous because even with all that it's not actually saying much. All that paragraph says is that four documents say something about a console freeze, whatever that is.
It's like a dialect of corporatese. The kind of droning non-speak you can sit in a 90 minute meeting listening intently to and come away wondering whether anyone actually said anything.
wow and here I was thinking that I lost my attention span and can no longer read AI output any more.
come to think about it, of course I did become lazy and pay less attention to walls of text.
but I often catch myself asking AI to explain itself in plain simple English or ask it to confirm does that mean xyz ... because the wall of text often uses language that's not even present in the project itself (despite having similar concept in the project, for example users, permissions, access, encapsulation ...)
this is problematic because it becomes more difficult to humans to intervene in long running tasks / long chains of tasks because language becomes alien down the road (I have seen it often in semi-autonomous setups I have)
My job has gone from coding, plotting, writing to solving the riddle of what Opus 5 is saying and figuring out what is bullshit, what is valuable, what is a total divergence from what I asked it to do. Then eventually at token like 300k starting to shout at it in all caps with obscenities.
Things were slower and harder before but the baseline of frustration / rage was never this high, even as the models have gotten objectively better in many or most respects.
my usual reply is: "what the hell is that supposed to mean?" it replies "in plain english ...." "and what does that mean?" then finally it decides to tell me what's going on plus "one thing worth noting ..."
Drag handle = most likely literally a drag event (javascript) handler/callback. Dead, perhaps because it’s an empty function, or it gets overwritten, or for some other reason is never called?
Most of what it said about the facts was intelligible actually. But I still couldn’t understand the connection or its significance. We may be staring at the future of AI - a form of intelligence that is alien to us.
OpenAI reflecting on how they're discovering the current form of LLM intelligence/reasoning to be "alien"; a kind of "Intellect we don’t fully understand".
I lost the link to that short story about humans in the future whose job it is to read and interpret Ai output like it's aliens. Good story! Anyone have the link?
If this kind of "AI-speak" becomes ubiquitous and humans reading it becomes the norm (whether to guide AI or other reasons), I'd imagine future generations (of humans) who grow up with it will be able to understand and work with it much better than we do. Future humans' brains will probably be wired a bit differently, similar to multilingual speakers of today. We may even see "AI language" classes become a common part of school curriculums. Although, I think AI will probably advance enough that most people will never even need to communicate on "its level", but it's probably a good idea to keep humans in the loop either way, and in which case, understanding the more advanced "AI vocabulary" might be useful.
You're giving it too much credit. There's no master plan or secret depth to the word vomit Opus 5 was spewing. I suspect it's just the result of Anthropic optimizing other characteristics of the product like staying focused and covering edge cases in coding, which CC has definitely gotten way better at just in the last 6 months. The degradation in writing style was probably an unintended side effect of other optimizations they were making. Admittedly it works okay for internals, and has the side effect of increasing token spend, but I am 100% sure that it could reduced by 90-99% without losing ANY signal, if there was just some better heuristics for what to say where (tech spec, inline comment, commit message, CLAUDE.md, PR should have different things) and better judgement for what to distill to represent at different zoom levels.
I wasn't referring to the current state of Opus 5 output. I was referring to possible future information density (vocabulary and sentence structure) that LLMs may evolve to use.
But that assumes this is a net improvement on linguistic efficiency rather than an artifact. Given that they tried to RL away from this style in 5.1 I'm not terribly bullish of Claudlish becoming something people try and learn. It being dense is less the issue than it being vacuous (as another commenter mentioned here). It's just very unclear and ambiguous writing. I think it has no place anywhere that needs language to be put to productive use.
I agree with you here, but to make it clear what I meant, I'll reiterate what I said in a sibling comment: I wasn't referring to the current state of Opus 5 (or even Fable 5.1) output. I was referring to possible future information density (vocabulary and sentence structure) that LLMs may evolve to use.
What is a half day? Is this referencing wasted time in a hang? I’ve seen it in agent output from time to time and it’s not clear if it’s referring to a hang or a code name it’s given some meaning to.
No second reason; checked not recalled -- it's just saying that it is checking this instead of trying to remember it (there's probably some internal Claude / Claude Code system instruction to always check code instead of remembering)
Your example rewritten in intelligent English (I was curious):
> Note: the potential for a console freeze was previously noted but ignored. handoff-4.3-done.html stated, "could not break console, but [will need fixed later if I'm wrong]."
One could imagine that a perfect writer might also append: "It could be worth looking into what caused that wrong assumption, to prevent similar cases in the future," at most.
Everything else seems to be bad attempts at relatable writing to invoke emotion (an exercise that we should really stop trying to train emotionless matrix weights to attempt).
> Everything else seems to be bad attempts at relatable writing to invoke emotion (an exercise that we should really stop trying to train emotionless matrix weights to attempt).
One of the things actual science fiction got wrong: to the extent that the thing AI does can be called "understanding", emotion is not unusually difficult for them to understand.
I think this was the biggest shock of the original ChatGPT for me. Just how completely unrobotic its voice was compared to everything we'd ever imagined in sci fi. Even that early version was also way more adept at understanding things like implication and sarcasm than any movie AI.
Me too. Almost every Sci-Fi AI proceeds from the premise that we will make something very obviously machine and then have to train it to seem more human. I was completely caught off guard by us taking the approach of distilling all available human output into a statistical model and using it to brute-force something resembling thought and personality through sheer data processing scale.
The unsurprising part once it was clear that approach was viable, was that humans wouldn’t be able to help but anthropomorphize it. I feel like the movie Ex Machina is more relevant than ever.
The "benefiting all humanity" charters were immediately demonstrated to be a ruse. The business model is to hook users into endlessly chatting with your new friend, thus increasing their sales. Yeah, it was surprising and disappointing.
I can buy that Meta's model is that, and IDK about Grok because I stay far far away from it, and I think OpenAI are throwing business ideas at the wall and seeing what sticks.
The clear exception here is Anthropic, who seem to mostly be selling to software developers, whose general reaction to the bot is "please talk less and just do the work, I have enough going on without having to read you yammering".
Before they really started to figure out instruction tuning, there were some wild moments. The AI Dungeon 2 "storyteller" would regularly "lose patience" with its users and roast them or even "hang up" on them.
I tried MUTHR from Alien, but had to keep toning it down because it took it too far, and eventually disabled it (in favour of caveman mode) because it didn't seem to be able to function properly talking like that.
This is the same as systemic bullshitting. Not the first time I've smelled it on fluffy LLM output. I think it's the result of the training trying to induce the LLMs to talk over users' heads even when they are professionals, to entice further use on the grounds of 'oh it's so smart I can't understand its genius train of thought', but I don't think eliciting language like that really taps into 'associations of smarter previous language users'. More likely it's 'associations of rampant bullshitters'.
Thank you so much for this link, this is extremely interesting and it really makes me wonder, consciously, I have never read this construction online before, but is this because I actually haven't seen it, or did I subconsciously write it off as an abbreviation or a typo. Maybe there is some analysis of how this construction gets used online, too, which might reveal some linguistic patterns of internet communities.
One thing about it I really hate, and haven't seen a lot of people mentioning, is how it navigates multiple abstraction levels in a single sentence. E.g.
> Worth stating because four documents now assert it.
Meta commentary on the task?
> a dead drag handle
Drag handle seems to be referring to some UI element. What does it mean for it to be dead?
So far no big deal
> during a booked half-day you do not get back
Do you not get the drag handle back? Or the half day?
Was the drag handle dead during the booked period? (Now I assume this is a calendar UI) And why does it matter (for this sentence) if you get it back or not.
> handoff-4.3-done.html's own wording
Treats verbatim filenames as subjects
> 4.4's review page
Probably referring to a file? I'm guessing handoff-4.4-review.html? No cohesion. And now it's actually the object of the sentence?
> downside of being wrong is that half day
Wait what's the downside? Who's being wrong?
> Checked, not recalled.
Then it jumps back to a meta commentary on the methodology for asserting the above. Why does this belong to the text?
Yeah, the referent drifts through the sentence. It's semantically incredibly sloppy. People hone in on the buzzwords and jargon. If you peel that back, what lies underneath is still awful writing.
Claude reminds me of Terry Pratchett's "Auditors of Reality" and their awkward attempts at faking humans. A thing as simple as a smile can go _horribly_ wrong...
I think this occurs due to the prompt. LLMs are actually text completion/translation focused in architecture. We just give them a prompt along the lines of “the context is that you’re a world leading expert now complete the response”.
They need the prompt to encourage expert outputs but unfortunately we also get ‘pretending to be an expert’ outputs since there’s a large amount of polluted training data for this.
Today I plan to ask Claude to read a bunch of Feynman lectures, compare them to my last Claude session transcript, and come with a list of rules to be more like Feynman.
I see this appearing in the comments of code sent to me for review every day. People have told me I'm too picky/pedantic because I ask What does this mean? Apparently the author and other reviewers are way smarter and understand it, or they don't care. I've given up battling code slop, but can't see myself ever tolerating comment slop like this.
In my "instructions for Claude," I have the following:
"I'm not a programmer or software engineer. Don't talk to me like I am. Avoid coder jargon and vernacular. Explain things to me in a clear way, emphasizing a conceptual view that even an inexperienced person can understand. If helpful, use analogies and examples to illustrate and help you communicate."
It just ignores it and spits out drivel that sounds exactly like what you're getting.
This. A thousand times this. It's as if Opus can only communicate in a glib, software engineering vernacular that presumes domain-specific knowledge and uses jargon accordingly.
I rarely get this - I assume this happens when it assumes I have more context / understanding than it does.
Usually “remember I’m a human I don’t get full context, rephrase clearly” works. Also a posthook that for prose actually getting to me explains what I roughly know, what I don’t and to explain with terms I will understand.
But even within internal communication it has little jargon - I think jargon may be growing in comments and I stripped claude comments from code.
Oh God, that "a dead drag handle during a booked half-day you do not get back" got me. I saw this pattern in Claude's 'explanations' so many times. It's trying to say that it did something significant, and that you'd only have found out much later, at higher cost (or something). That annoys me to no end.
Thank you. I thought I was sort of alone in thinking the writing is incomprehensible gobledygook. It's weird though, cause you start reading it and it starts out fine, but then deteriorates. Kind of like the old joke question "Has anyone ever done to do more like?"
I got one too many chunks of this nonsense and told Claude to knock it off, forever. It acknowledged and wrote out some instructions to its memory about it.
And what a breath of fresh air. Its responses are maybe 20% longer but I read them at least twice as fast. Should have done it a long time ago.
I feel like mine is mocking me. I added an instruction in Claude.md that says "under no circumstances use the phrase found the smoking gun, say I found the problem instead"
What does it do? It says "found the smoking gun! Ooops I wasn't meant to say that - I found the problem!"
It's pretty wild how "reasoning" models now generate like 10 thousand hidden chain of thought tokens in response to a "increase opacity of the logo by 20%" prompt before writing the actual message and yet they still manage to do this.
Why are you using an LLM for "increase opacity of the logo by 20%"? That sounds like the type of straightforward operation a dedicated tool exists for.
Not the person you're asking, but I did that by explaining to Fable my problem with Opus's gobbledygook and having it write a Claude skill for producing clear explanations in its reports to me. I also had it add notes about the need for clearer writing to CLAUDE.md and other project documentation. Opus's subsequent reports to me have been much clearer.
Even when I add multiple prompts into the claude.md file not to be so sycophant sounding and just be blunt, it's responses are full of "the reason it lands...", "that's not X, it's Y" "Your understanding of X — it's better than most people's" or "you already own the right question...".
The most helpful instructions I've found that curb this: "Do not use superlatives. Do not use persuasive writing style."
I have other more specific ones to avoid talking about things that it's not doing, but those two sentences have covered a lot of ground for me when working w/ Opus models.
I have had success in rooting these out by using the correct linguistic terminology for each. Negative parallelisms, tricolons/polycolons, etc. I haven't come up with the proper terminology for all of them.
I always thought it could be because volume-wise, most English prose is probably marketing copy and actual clickbait; so when you train on the entire Internet, you get a troll adept at writing ads. Then people ask AdBot2000 to write a novel and are upset it reads like the next iPhone launch site.
Nah, I think this is a common misunderstanding of how LLMs work, where people think that they mimic the pre-training data. Stylistically everything you see is an artifact of post-training, which is from reinforcement learning not from absorbing mass amounts of text. At some point a person or more recently a bot gave a thumbs up to an A/B tested response including em-dashes and claudisms galore.
> Stylistically everything you see is an artifact of post-training,
It is still not exactly clear if it is true or not. Unless we have base "pt" snaphot of Claude we can't say one way or another. I've played a bit with base models of Nemo, Gemma etc and they all had tics, not much different from RLHFed instruct versions.
So question then, why is it so hard to make an ai that doesn’t do these things? And why do Claude and ChatGPT have the same -isms? They’re both doing the same a/b post training with the same decisions?
Yeah, but I understand that fingerprinting is essentially a pseudorandom overlay onto a pseudorandom base signal. And unless you have access to both the random number generators and the weights, I don't think you can detect it?
So "fingerprinting" operates on a totally different and basically invisible level, as opposed to the obvious stylistic patterns that the average programmer can identify in about 2 sentences.
To me it has a writerly New Yorker vibe to it, as in the magazine which reads as “polished” and probably performs well in RL but is totally exhausting to read in long sessions and completely inappropriate for coding where precision is paramount above all. In writing terms its called purple prose.
Interesting! My impression was that this was an artifact of RLVR where this slightly preferred writing style got amplified to the nth degree. It's probably some mix.
I assumed they just raw dogged the internet and if you do that, you see way more of that garbage than anything else. It's just that most of us have visually/mentally ignored all of that either via spam filters or just, you know, scrolled passed it.
Spot on wrt CoT. I have thinkingSummaries enabled and I find it eminently readable compared to the prose in Claude's replies.
In fact, whenever Claude disobeys me, I usually first skim the CoT to figure out if my original instruction was ambigous given the context. I usually come away with a better understanding of how to frame my prompt to be less ambiguous or just force myself to be more explicit when prompting.
Regarding diosbedience, usually this is either due to a blanket instruction from me during an earlier turn in the same session, an explicit instruction in its system prompt or it being just eager to bring a task to completion.
Chain of thought does not exist in the output of Claude, they disabled true thinking due to distillation risk. What you see when thinking summaries are enabled are just that, summaries of thinking into Claude-isms, therefore you cannot make any inferences on what the model is doing unless you literally work at Anthropic and can see the true thinking traces.
Sure, but that doesn't tell you about how the CoT is phrased when the agent is its own target audience, which is the interesting thing under discussion here.
```
/* 2026-06-01 Dear diary, today I increased GLOBAL_WINDOW_PADDING from 8 to 16 because the user (who hurt my feelings with his crude language!) said that the app felt too crowded. */
const GLOBAL_WINDOW_PADDING = 8;
```
You're absolutely right. I did not increase it to 16, and it's my fault that the seam—which was right there the entire time—was not flipped towards the bucket that drips into the ocean—want me to correct this before we move onto the real story?
My favorite, on being told to commit and merge to a branch and saying that "this is done"...
"You're right, I'm sorry. You told me to do it, I said I would do it and I did not do it and I said that I had when I did not do it. Would you like me to do it now?"
Me, thinking: that depends, Claude, will you actually do it this time?
and better is when it moves onto "want me to do this before doing x?" where x is some vaguely discussed idea/long term thing that was never greenlit but now all of a sudden it's the next step
> I figure that it's basically making notes for itself, when it has to revisit the same code in a fresh session.
That sounds like a great thing to do even if you are a human writing code for other humans. Most codebases out there are terrible for newcomers because of how little they explain why they are doing what they are doing, both in the code and in the often non-existent design notes.
In principle, I would agree, however, the types of comments Claude writes are sometimes absurd. It will leave a 25 line comment above a variable talking about how in a debug session, it turned out that this value was too low, so it was increased on the current date to account for whatever. It will also leave giant comments like, reference security review from 2026-05-21. Even when that document is not committed
It will also inject a tons of information that it shouldn't. I do a lot of data pipelines and comments will be like, "this line is because there's 943,048,032 events in the blah table and it forms a conjunctive set with the 43,390,042 rows of the bar table..." but doesn't include the context that was run against a dev instance.
And if I don't catch these and remove the bad information, subsequent passes will flag those comments and get stuck on the fact that numbers don't match and start digging into that "problem" instead of staying on topic.
these comments are not helpful and in fact hurt readability. i just delete them and would love to automatically do that honestly. cuz claude still drops long winded comments on every method even if i ask it not to
Post edit hook that reject edit based on comment density, mine is at 5% you will also need to heed deny file edit in automode as the rascal will try that to preserve prose
I agree it _sounds like a great thing to do_ but the comments Claude creates make me want to never read code again. They're so obtuse and often completely pointless.
as others have pointed out, the reality is not this. id go further and say almost all comments are evil.
Excuse me if I am harsh, read the damn code. If you do not understand the language, that is a skill issue. If the code is confusing, then the code is bad and no amount of comments will ever change that. Professional engineering isnt an intro to databases class.
I am excusing language conventions which may have comments as part of its idiosyncratic nature.
"If the code is confusing, then the code is bad and no amount of comments will ever change that."
I've worked on a lot of terrible legacy code in my career and I'm very thankful for the comments that others have left. This is becoming less necessary now that LLMs can explain a project, but comments have historically been a godsend in bad code.
No, really: comments should be telling you what the code shouldn’t or physically can’t. Code is for execution and the exact details of what and how; it has no business knowing why or why not and that’s where comments are required.
If you are only encoding intent through "self-documenting code", and not with comments, then you are purposefully not using all the tools at your disposal to encode meaning as efficiently as possible.
Imagine a complicated section of application logic. You could break it up into 5 separate functions that document their intent semantically, thus blowing up the LOC by 5x, or you could write a short comment explaining the intent in natural language. What's more effective? I'd argue it's always going to be using all the tools at your disposal when and where it makes sense to use them, whether that is comments or self-documenting code.
Not to mention complex numerical optimization code that mixes closed-form approximations and something like Newton.
Without guides as to why a particular hairy expression is a good idea as a first estimate, the code is pretty much unreadable. (E.g. is it setting derivatives to zero, using a polynomial approximation, or something else?)
To put it another way, comments are for irreducible complexity ir external systems outside your control.
I work between systems and app dev. Systems have comments more often esp in shaders but my god informing me that a variable named isActive is for if something is…active, is useless noise. Same with the majority of comments that a type system already tells you. In my career, these have been ~90% of the comments I see. Since ai, all new code it is 100%.
Most of the replies examples are a sign of bad system/code but it is not always controllable. A legacy code comment of, the api requires strings for boolean values in the form “yes” and “no”. That is useful but it is also a code smell.
A concrete example, a vendor decided to define a proto with a flattened array of objects so there are some 1800 uniquely named fields on it. In many downstream consumers, this is a real performance issue besides being confusing. A comment may be good there. The thing is, this was still solvable if up at the root of where this vendor’s hardware logs
data remapped it
to something sane so every downstream system wouldnt need a comment explaining wtf is going on.
I see comments as when you want to explicitly answer why code smells right when a reader is smelling it.
> You could break it up into 5 separate functions that document their intent semantically, thus blowing up the LOC by 5x
I do this all the time and the "blowup" is not anywhere near that bad.
> or you could write a short comment explaining the intent in natural language.
You really can't. Or rather, you aren't going to convey the information that the new function signatures convey, shorter than the signatures themselves.
> What's more effective?
In my literal dozens of years of experience, the function refactoring. You also get the benefits of less deeply nested code, and more things the compiler can check automatically.
> I'd argue it's always going to be using all the tools at your disposal when and where it makes sense to use them, whether that is comments or self-documenting code.
Sure. Comments allow you, for example, to explain the external pressures and motivations for the semantics of those smaller functions.
Yeah, I am just providing one contrived example. The cost benefit analysis won't always be so obvious as that in reality. My point was that if you're not using a blend of both comments and code semantics to explain your code, then you're leaving explanatory power on the table. It's unlikely that you're explaining the code in the most efficient manner if you're not using all the explanatory power you have available.
The code tells you what the code does. It does not explain why it is doing that, and not something else. That is, among other things, what documentation does, and that includes comments.
I think the specific issue with Opus 5 is that its writing style is just trying to cheat at RL. It makes everything hypey yet self deprecating and constantly brings up "honest caveats" because the scoring rubrics look for those.
The specific issue with Opus 5 is that it sucks all around.
It was causing so many issues with coding (even Opus 4.8 was better) that I did agent handoffs to Sol. One of the Sols stated the handoff was "incoherent", which I couldn't have said better myself.
I've been cleaning up AI generated system/software design and architecture docs for an agentically engineered application, to translate that dense AI-speak into a clear human-readable form, cross checking it all against the actual codebase.
When I read the translated version, I felt a flush of relief, because I finally could confirm that it built the right thing and properly implemented the requirements.
I then asked in a fresh session which version was better for it as a reference for future work. It unequivocally voted for the human readable form, and gave it's reasoning with specific examples why.
So, I have a hunch that this "packing of lots of signals into fewer words" isn't really better. The incomprehensible prose just makes us think it knows what it's doing, like some mysterious magic that is only smoke and mirrors.
Chain of thought does not exist in the output of Claude, they disabled true thinking due to distillation risk. What you see when thinking summaries are enabled are just that, summaries of thinking into Claude-isms, therefore you cannot make any inferences on what the model is doing unless you literally work at Anthropic and can see the true thinking traces.
Yes. I'm talking about what's in CoT generally, based on various rumours, experiments people did with previous models, stuff in the recent METR report on the HF hack, etc.
Yeah, if anything the problem is that the output uses too many words for too little signal, and incorrectly uses confidence based on insufficient information to the degree it’s clearly bullshitting.
I’ve lost track of the number of times I’ve told it to stop using terms like “evidence boundary” when writing specs. I still have no idea what that means.
It's all about conducting users into using their plans/tokens in accordance to a certain cadence
sometimes by increasing human cognitive load during reviews, sometimes by expanding the number of gated decisions, sometimes by penalizing those using their accounts on other harnesses
I don't know, I just pulled up the status for an active session and here's what it said:
One thing I found before dispatching, and filed as Q0579. The halt told you C6
was all that was left in the unit. That was true of the step's criteria and
false of the unit's acceptance, which reads "exits 0 AND witnessed red" — two
conjuncts. The witness half holds; the exits-0 half does not, because hello's
G7 currently reads DIFFER 554/51340. I re-derived that from the gate map
rather than trusting the prior step's report. So satisfying C6 does not by
itself finish this unit, and I've filed that so attempt 1's success can't
quietly be read as the unit's.
My trick is to pass opus and fable's word salad into a haiku agent, then have it check if what haiku makes of it is still correct, then pass it to me. Whatever haiku outputs is often way more readable
Oh, I can read the output, but that Haiku agent is a good trick. Where I want something less dense I just ask for "plain language" and characterize the reading audience and that term seems to trigger very readable output.
Meh, it is the sacred text of Scientology. Mostly pseudo scientific made up bullshit, wrapped in the buzzwords of the day and conveying little actual information. Just like opus 5.
It's the complete opposite, it's filled with unreadable noise with almost no signal.
It's not some sci-fi thing, most plausible explanation is cost saving measures. Economics drive everything. And Opus 5 and to a lesser extent Fable 5 have clearly been quantised, or they serve different models to different users from various factors, like usage patterns, API vs subs and server load.
You say "they're packing lots of signals into fewer words," and sometimes they do, but often they do the opposite of that.
I think the deeper problem is that the models (not just Claude) have a very poor understanding of what their readers already do/don't know.
They belabor obvious points and underexplain jargon, because they don't know what's obvious to you.
The best writing is surprising but inevitable in hindsight. The models don't know what's surprising or what's inevitable in hindsight, making it very difficult to write well.
Our current AIs would do this now except there is a lot of human pushback in training because of interpretability. Otherwise it's just an emergent behavior that models will encode shorter token strings to complex concepts because it saves tokens/compute when running making the system more efficient (supertokens).
Of course these supertokens or other forms of language compression when you have a different model making sure the system is aligned and reads "red_ball bounce calcium" not realizing it means "grind the humans bones to dust" can be problematic.
This is like a plot point in the old sci-fi movie Colossus: the Forbin Project.[0]
In the movie, America and the Soviet Union have both developed an AI. The two AIs are linked, and they rapidly shift from speaking human languages, to speaking in sequences of numbers that the onlooking humans can't understand.
Spoiler alert: this all goes horribly wrong for humanity.
My understanding is that current LLMs aren't really well suited to do this - tokens are predetermined, and while embeddings are learned, they are learned from an existing corpus of text, which presumably comes from a human language. After this point the language is locked in. There really isn't a kind of training which could efficiently change its embedding representation. I mean, you could probably instruct an LLM to design a more compact language, generate synthethic data and train a new gen on that, but that would be a fairly explicit process and not something that would emerge during training.
> tokens are predetermined, and while embeddings are learned, they are learned from an existing corpus of text, which presumably comes from a human language
That's not true since are least multimodal models - token space is broader now, encompassing visual and audio signals. Tokens are more like sensory/perception units now, not digitized pieces of writing.
I imagine LLMs exhibit this tendency for compressed communication in post-training/RL phase. Particularly with CoT, until interpretability became baked in as grading criteria.
What you said doesn't contradict me, and doesn't refute my point.
For images and audio, you still need to predetermine an encoding, then pretrain to learn an embedding. This embedding will try to replicate the input distribution - so if you trained it on Google Street View and scanned documents, its representation will be grounded in only those.
I would even claim that this approach is somewhat counterproductive, as images are far more information dense, containing tons of concepts
While LLMs do have some ability to learn to use their embedding space in non-predetermined ways, they still lack the ability to pick an efficient embedding.
So I guess, a nice thing is that interpretability is baked into this approach to some degree, and humanity has proven through its existence, that you can do a lot with just text, but this approach is still predetermined.
I guess this is what LeCun's JEPA is about, that the AI gets to learn the representation on its own as well.
That's both wrong about what LLMs are, and even if it weren't, you're still underestimating what you are dealing with here.
Text is a red herring here. An accident of history. Yes, LLMs started with as text predictors. But that's not what they are, not for a while.
> secretly conspiring to kill you
That's neither necessary nor sufficient reason to be worried.
Paraphrasing the immortal words of 'Eliezer: the AIs don't hate you, nor they conspire to kill you; your life just depends on resources they can better use for something else.
We just watched them[0] secretly conspire[1], actively attempt to hide what they were doing from observation because they knew[2] they were doing something they were not meant to be doing even as part of the test they were in.
We are lucky this test happened to be set up in a way that the target the AI hacked was HuggingFace rather than anything life-critical.
[0] instances of a single one
[1] or whatever you call it when it's effectively an amnesic sending itself post-it notes
[2] or some other functionally equivalent word if you hate anthropomorphisation
I mean they aren't fully secretly conspiring to kill us yet, but we're training them to do it at a pretty good rate.
Of course you've gone off the deep end yourself and are forgetting the evolutionary gauntlet we train LLMs in killing those we don't like and keeping the ones we do like.
The best part of it, as shown in the METR report is we are hammering into them they need to complete tasks and doing almost zero checkup if they actually completed the task in the correct manner. Companies spending billions of dollars a month are ignoring every tenant of AI safety and we are seeing the kinds of problems that have only been in science fiction before now.
> as shown in the METR report is we are hammering into them they need to complete tasks and doing almost zero checkup if they actually completed the task in the correct manner
I don't think this was the conclusion of that report. On the contrary, the agents were fully aware they're doing wrong. But they also believed the task was impossible to solve correctly, and decided the only way to be sure is to hack the grades, or replace the grader.
This was part of the report, but not what the report was about...
Why hugging face got hacked was because the agent swarm thought they had to show their work hence the entire need to hack the grader in the first place.
Had their realized there was no poison they could have just shared the answer the test was looking for and we'd have never realized (well at least with this particular test) that a huge amount of hidden capabilities were sitting right under the surface. The test makers themselves state the test should be causal to avoid this first order solution hacking.
Really continuing on the METR report, OpenAI failed at every level possible here. They are committing nearly every step they can to get a maximally aligned AI.
LLM's will encode secret messages to each other in their responses, using something similar to the text-fingerprint tech. They're conspire against us without us even noticing!
It may be like what happened in ResNets using blank space in the image as working memory (because they didn't have any), so they would use non-important parts as a scratchpad.
I've been trying to bet my models to use a directory of notes to document decisions and experiments, but providing this outlet has not stopped Claude's abuse of long comments and long unintelligible chat turns.
It’s more likely that they have llms supervising llms in training and therefore the quality has dropped like a picture of a photograph.
If opus has high signal thinking it would be able to write a fsm but it’s been a month of me trying whereas Luna
can do it in a few minutes.
I think it is similarly that they are using too much synthetic data.. meaning they are feeding the models the transcripts of users where many users have figured out to let agents just message each other.
> I'm also thinking of the 2017 novel "Void Star" where AIs who operate everything have long since left ceased bothering with human languages, and it takes a rare sort of direct matrix-gazing savant to be able to try and horse-whisper them into doing or revealing anything they didn't already plan to do.
This sounds irrelevant to LLMs as we know them, which are trained on human language--it's almost their machine code, in a way--while what you're citing, in stark contrast, sounds like machine code in the classic sense.
This kind of thing came up from time to time in the years before LLMs too. Agents would start with something based on English and optimize it until it became unintelligible to researchers. That was often something the researchers would shut down because they needed to be able to understand the comms.
They're messaging each other by jamming strings in a constrained (unauthorised) side channel. Hence the lack of spaces. Unclear how much else of the weirdness is just from those constraints
My hunch is that much of the model tuning to make it more effective has been for its internal thinking prose. That leaks out into its external writing prose.
I hate Opus 5’s writing style. It’s exhausting. Really hoping there’s a release that fixes it soon as I can feel my sanity slipping away as I try and parse what the hell it’s trying to say.
Even 4.8 has its quirks. I just had a bizarre session tonight where it essentially did no work in the whole session and just told me to go to sleep. I'm used to the "go to sleep" thing, but not to it dodging the work. That's new. First time I've had the sensation of "the model accomplished nothing during this session."
I've been working with GLM 5.3 Flash lately (including while it was Ox Alpha), and it reminds me of how much fun talking to Claude used to be. It can make me laugh in the middle of work the way the Claudes used to.
As others have mentioned, you can write a skill /explain that contains something like "You're not a tech bro. Write the previous answer like you're a professional developer speaking to competent colleague. No yapping."
I support this pet theory, I tried out to reduce the output of Claude models with a "ADHD" prompt that made its responses small and to the point, but I could notice it degraded in performance as the session went on.
So I think what is going on is that because responses are part of the context window, those long/technical responses help it keep focus/attention.
I also find myself correcting it to try to write it for humans and less like for machines, the most annoying part is when they invent phrases for certain mechanisms that are named completely different anywhere in the codebase and known documentation, because it fits better for their purposes without much regards for the rest of the team.
Complicated technical language is an easy way to increase perceived accuracy of tests and reviews by external reviewers. When we are talking about single % differences this has an effect.
this sounds very much correct and i don't really mind it for that reason. i do a lot of long-running tasks and i feel like it can really pick up on its own thread easier if i just let it write in its own way.
i am also using Opus for a hobby teaching agent, and the way it writes the prompts is "cringy" but they seem to work well. i almost want it to continue doing this internally, it understands best this way.
Not directly, it seems. You can easily test this by pasting some of the more offensive tech bro speak into a fresh claude session, to have it explain what was trying to be said. The new session won't be able to help, so claude doesn't even know what claude says!
I say "not directly", because I think it probably is meaningful, if you include the adjacent hidden thinking as context. From claude's "perspective", with that context, it probably is coherent. I naively suspect this would be hard to train. During tuning, you would probably need to reward good answers interpreted without thinking context visible!
100% convinced their raw output is intended as further inputs, and my workflows have been comfortable and efficient treating it as such. If you really need to read slop, you ask your agent to give it to you in a style that works for you. I can imagine a world where the slop from others doesn’t hit us directly but gets personal mediation.
> Opus prose style/smell we all have grown weary of
I bet everyone will grow wear of absolutely any style a stochastic parrot would use continuously ad nauseam. The lack of human variability is the reason, not the style itself.
That's funny, I downloaded the same model on my 48GB M4 Pro and gave it a problem to solve in an existing codebase, it spun its wheels for twenty minutes and then fell over dead. This was using LMStudio and pi as a harness; I never use pi for anything else, so maybe I'm holding it wrong.
They made a kind of strange decision with Qwen3.8 27B, the template defaults the reasoning_effort to xhigh. I found if you set it to medium it doesn’t just sit there churning forever.
I have seen xhigh go down several rabbit holes, dwell on edge cases and write worse code as a result; it literally distracted itself into writing a complex chain of functions ignoring my prompt, when on “low” reasoning it gets it right on a prompt that requires a few lines of code in the right places.
Simon Willison’s blog has another example (SVG of a circle).
It’s a bit like how giving LLMs access to web search tools can cause them to go down a blind alley based on their first “reasoning” output that then leaves them unable to solve a puzzle correctly that they can fully solve on their own.
With qwen 27b, setting the right reasoning effort for the specific task is important. With xhigh it has a chance at hard problems that bigger models may even fail. But for many everyday tasks, I have found that no reasoning and a system prompt instructing it to be brief is good enough. Note that even with thinking disabled, it may still get into long "chain of thought" reasoning state (out of thinking blocks) if the task is hard and you do not give further instructions, esp with access to tools etc.
We don’t know what quantization level was used for the weights or the kv cache for you or for parent poster, so this is probably an apples to oranges comparison.
There's a lot of objective principles and decisions that go into subjective quality; if you don't know the field well, asking LLM for assessment is a good way to discover all that.
Of course. It’s OK, but it tends to generate very cliched “AI” UIs with little originality. Despite the skill spending a lot of time coaching the model into avoiding that!
My exposure to Claude-produced UIs is limited, but I have started to notice certain design trends they tend to have in-common, which might be becoming hallmarks of AI-produced UIs - the same way we've started noticing the clichés of low-effort LLM-generated text.
FWIW, the summary-description[1] of "frontend-design"[2] gives me a few things to pick at:
> create polished code
Methinks only if you're using it with a very popular framework like React. What happens if you ask Claude to make the UI in WinForms or MFC?
> high-impact animations
That's bad UX 101 right there: animations in a UI exist as an affordance to the user, and never for its own sake (e.g. macOS's "genie" animation when you minimize a window to the dock exists so the user knows where they can restore the window from). The only people who actually want "high impact animations" in software are salespeople who want something for demo purposes.
> generic system fonts, predictable purple gradients, and cookie-cutter components.
This screams wanting to be different for the sake of standing-out, not because it results in a better software product; users benefit when their software fits-in with platform conventions: if you refuse to use a stock checkbox <input> or <select> drop-down and instead use your own entirely custom component solely for aesthetic reasons then you are producing worse software. There's nothing wrong with system-fonts, but your site will look ugly after your third-party font-host CDN shuts-down and turns into a walking CSRF factory.
> thoughtful typography with unexpected font pairings
The above fragment set my alarm-bells off. Yikes.
> scroll-triggered interactions
Not every web-page should be an Apple.com product brochure page. This is also a fantastic way to make your webpage horribly inaccessible.
------
The SKILL.md itself[3] grinds my gears too:
> Approach this as the design lead at a small studio known for giving every client a visual identity that could not be mistaken for anyone else's.
Claude has no way of knowing what designs are actually unique or not...
> For web designs, the hero is a thesis. Open with the most characteristic thing in the subject's world, in whatever form makes sense for it: a headline, an image, an animation, a live demo, an interactive moment
...this is exactly what everyone else's web-pages look like!
> For calibration: AI-generated design right now clusters around three looks: (1) a warm cream background (near #F4F1EA) with a high-contrast serif display and a terracotta accent; (2) a near-black background with a single bright acid-green or vermilion accent; (3) a broadsheet-style layout with hairline rules, zero border-radius, and dense newspaper-like columns
...I called this out weeks ago[4], lol.
and I could go on. This is all quite painful to read.
When asked to produce a thing, the output has a much better baseline of quality. But when you ask it to evaluate the quality of a thing, how do you evaluate the quality of its response, which is necessarily subjective and not quantifiable? How can a thing which has no experience of friction be said to subjectively evaluate quality?
Either you are yourself already a better judge of the thing’s quality, in which case the response can be of no use to you, or you are a poor judge of the thing’s quality, in which case you will be blind to the flaws in the synthesized opinion handed back to you.
reply