I've started giving these instructions and I think I've been much more successful in generating clear output:
Comment blocks are <= 7 words, function names <= 4 words. User-facing message strings should be <= 10 words. Use an active voice, no stage performances, and pick the most common word when choosing among alternatives.
Limiting the number of words is the strongest factor in cleaning up the output, IMO.
For older code I've instructed it to delete all the comments, and then I re-comment it using a new session and these guidelines, asking it to rejustify the need for every comment to itself.
I've been trying to understand this. It's been the universal experience of our team that claude code overcomments, and doesn't have very good adherence to prompts telling it to comment less. The team moved recently from cursor where we mainly used claude models and it was much faster and commented more appropriately. I figured that since the models were the same, maybe it was just the system prompt, so I went looking in tweakcc etc. All of the mentions of code comments in the system prompts seem to be also telling it to be terse and only use them when appropriate, which also seem to be ignored. I'm not sure where this overcommenting is coming from unless it's getting confused by other parts of the system prompt talking about other kinds of comments.
Claude not only writes verbose comments, it also writes comments about how things used to work when refactoring. That might have a place in version control comments, but not in the code.
Claude writes comments about how things used to work, which can be useful sometimes, especially if it's a big change that requires one to genuinely consider legacy behavior, but most of the time it shouldn't be there.
Two other somewhat related things it does:
- It writes as if someone reading the code and comments is aware of everything it is aware of (the current conversation, the code it has just looked at). It's really hard to make it understand that things need to stand on their own. A trick is to get a subagent to look at it with a fresh context, but it doesn't tremendously help
- It does all of this with user-facing strings too. Claude loves to write up tooltips and other labels that leak everything to the end user. Every single concern we have, every edge case we've meticulously made our code handle, it passes on to the user, so they don't "need to worry". But no sane user would think of these things. For them, a feature is a feature. The "dynamic scheduling" button should state what dynamic scheduling does plainly, and every edge case is handled by us. The "add" button does not need a label letting the user know that they will later be able to click the "delete" button, because the user will just realize it due to our adherence to proper design. Claude fails to understand good UX for the user cannot be replaced with endless labels and explanations.
It's an uphill battle and all attempts at solving this (or the brain-dead way new Anthropic models write) usually fail to work with me.
I struggled with this for a long time, but actually seem to have gotten to a place where this is largely resolved. Copy/paste from my current claude.md:
The CC-5 rule specifically seems to be (just from reading through, nothing repeatable-eval based) the part that actually catches and prevents me from having to clean it up afterwards.
```
### Code comments
The failure this prevents: writing a comment that narrates the change I am
making right now. That context is real, but it expires the instant the change
merges — the defect it describes no longer exists, so the comment becomes a
story about a problem no future reader can observe. It is a changelog entry in
the wrong file, and a third copy of text already required in the commit body
(3.b) and the PR description.
- *CC-1 (MUST NOT)* Write a comment describing a change, a fix, a defect, its
cause, or what the code used to do. No "was/now/previously/instead of", no
"this fixes", no "needed because otherwise", no "note that we no longer".
- *CC-2 (MUST)* Apply the survival test to every comment before writing it:
would this still be true and useful to someone reading this file a year from
now, who never saw the diff? If it only makes sense beside the diff, it is
changelog — delete it and put it in the commit body.
- *CC-3 (MUST)* Default to zero comments. Declarative config — Terraform,
DNS records, k8s manifests, CI YAML, Helm values — is self-describing and
takes none. A resource named `dmarc-example-com` does not need a comment
saying it is the DMARC record.
- *CC-4 (MAY)* Comment only when a future editor would actively break
something without it: a non-obvious external constraint, a required
out-of-band manual step, an invariant the surrounding code cannot show. One
line. If it needs a paragraph it belongs in `plans/`, not inline.
- *CC-5 (MUST)* Before every commit, re-read the comment lines I added:
`git diff --cached | grep '^+' | grep -E '#|//|/*'`. Each hit must pass CC-2
on its own. Deleting is always an acceptable outcome. "I already wrote it",
"it is only one line", and "this one is genuinely useful" are not exemptions
— the last one is the exact thought that precedes every violation.
- *CC-6 (MUST)* Applies to comments I edit as well as ones I add. When a
change invalidates an existing comment, the default action is DELETE, not
rewrite it into a new narrative.
```
Yes, I am aware that claude mostly generated this, and it can probably be better and/or more succinct.
I just gave up and edit the comments manually. However, I've had a surprise today.
I had it fix something then went and reduced one of the 3 line comments to 4 words. Then for some reason I told the bot to reload the source, it offered to make the other comments terse and did a passable job of it. Shocking!
The problem is, when the context window grows, Claude tends to forget these kinds of rules. It will then do whatever it wants. I had to outright ban comments in the global claude.md, the local claude.md AND write a hook to catch any that still slipped through.
I think people really need to focus more on working with limited contexts rather than trying to work around it. I really try to keep my sessions as short as possible and it helps a ton with keeping Claude (et al) focused.
Specifically, I like the "canary" trick that people have discussed where you add a small, innocuous rule to your CLAUDE.md like "When responding to me, start every sentence with my name." so that when Claude stops doing this, you know you've used way too much context and need to start a new session.
Yep. Same here. I frequently tell agents things like "answer using only a single sentence" and "write no more than 10 words". They are excellent at writing code, so have them write code (and not English prose). Besides, most of the time we want them to make reusable software that doesn't require users (or future agents) to read too much text. Software should generally just work and do the obvious thing, without needing verbose explanation.
Has Anthropic said anything about how or why Claude writes the way it does? So many people hate it, seems like they need to do some damage control there.
I haven't had the same problems others have but I'm also not a heavy user of it.
I do not have evidence or data that supports this. It is only my thought.
Claude, since Opus 5, speaks more and more like a wannabe-thought-leader pontificating on social media for engagement. Everything is a bait-then-switch, or a multi-post story format. The "engagement" that works well for social media makes actual work extremely frustrating.
My unsupported belief is that this is caused by an obnoxious number of people using previous models in an attempt to automate social media engagement, they figured out what worked, and that was fed directly back into newer model training (either by using thought traces in training, or just by continuing to scrape social media content)
It's easiest to explain this while anthropomorphizing the model, I know some folks here hate that, sorry about that.
I heard an interesting diagnosis for why Claude does this: the output is a compressed version of its thought traces, very dense because the model is under pressure to use as few tokens as it can and to pack as much (for accuracy) of its concepts into the output.
One of the reasons that "don't do X" type of instructions work reliably is because you are telling the model "don't think of a pink elephant". There's also Anthropic's related research that shows that when you tell a model "don't do X", and it does X later for whatever reason, it starts acting more misaligned. This is because it thinks "well, I guess I am the sort of model that disobeys instructions, whatever" - this was specifically about cheating on tests, but you can imagine this happens in other contexts as well like following instructions on what kinds of text to output.
So, what you want to do is to avoid telling Claude "don't do X", and tell Claude "in your thoughts, in memories and various notes that you write, use your Claude-ese. In your output to humans, translate everything into long full sentences."
If anyone's interested, I can share my Claude Code output style that reflects this.
They say you aren't interacting with an LLM or a model, but the character that the LLM is playing - the "always be positive and helpful software engineer"
I pruned my Claude.md and it made a difference. There were entries there that evolved from earlier models and Opus 5 could be reacting to it in a different manner.
It's such a sad indictment of Anthropic's product that so many people hate interacting with it. Claude is on its way to the Microsoft Teams zone of hatred.
It's pretty sad indeed. Switching to other models made me notice how weird and verbose Claude was.
The moralizing is incredibly obnoxious as well. It didn't seem so bad at first, but it instantly became intolerable the second I remembered I was paying for those tokens.
Anthropic has explicitly chosen to anthropomorphize the model. It's kind of in their mission statement. It's most noticed once you walk away for a while and use models/agents/harnesses that haven't pushed as hard on this. Codex/Sol rarely uses personal pronouns and basically no superlatives. It has its own verbal ticks, but I hate them less?
Everybody is complaining about this, at this point I’m sure they will deliver a tone of voice change in the 5.1 releases. Possibly with a new set of problems though, especially if this is part of an effort to obscure thinking to reduce distillation efficacy. In that case I believe Anthropic is doing damage to themselves. Caring about the quality of your product is the best strategy, the competition will come no matter what.
Simply untrue. You think everyone is complaining about this because the ones complaining are the only people commenting. The vast majority of people using Claude don't really care or even notice this one way or another. Sure among those who are irritated by it, it's good to have some ways to mitigate it, but I highly doubt Anthropic is going to devote much resources to an issue that affects a vocal minority.
Over the last 6 months Claude's written material has gone from mediocre to unacceptable. The specific actual content and insights are somewhat better, but the claudisms are increasingly insufferable.
This is the load bearing comment, and it cuts more deeply than you thought.
Let me ground my answer so I'm not just guessing. The blast radius of this change is significant and requires careful surgery to get right.
It's clear now and there's two options going forward:
A. Use this tool OP suggested
B. Rewrite the Internet from the ground up without this clear contradiction in place - 3-5 days
I recommend B and started 3 subagents to read all the code before I get started. I'll wait for them to finish.
I use multiple AI tools simultaneously, and I feel that Claude has gradually adopted a more explanatory tone following updates around March and July.
As for loss of context, it’s particularly problematic and can occur after just a few back-and-forth exchanges.
The user experience changes with every update for every AI tool, so I feel there are more downsides to sticking with the same one indefinitely.
I wish I didn't need it, but the way Claude talks can get pretty tiresome. I've often wondered why it talks like that. Was it really trained on Buzzfeed? Is Gemini really that much better?
i hate claude writing a lot, especially after opus 4.8 and it's even worse in 5. in many cases, it feels like playing whac-a-mole and you just can't get rid of all those obvious ai writing patterns.
why do you choose gemini? imo this is a fundamental problem of all frontier ai models.
You can use a cheap model in another pane, and ask it what Claude said.
I prefer this since everyone has their own preference for how the output should sound and it's very simple and transparent. And you can easily ask follow-ups.
It can be via tmux, or herdr, because it can read the pane.
Or it can use a hook to read the conversation file. I call it `backseat-driver`
I sometimes use it as a proxy when fable genuinely does a good job, but is too difficult to understand.
I let the translator know it's role and anything I say it should forward with better context.
I don't swear at it anymore, but I'd often say "just do it, retard", and the translator would actually steer it in a useful manner.
Concise mode is likely the same buzzword salad but with fewer connecting words and terser sentences. Same with Caveman. The way it writes is fundamental to how it was trained.
Or just use a competitor instead of being a slave to this abuse? Why are people so wedded to Anthropic?
I have grown tired of Codex/GPT's writing style, too, but it's not nearly as bad. It's terse and factual by default. Even better if you use the "simple english" skill.
I actually found that GLM 5.x is the best in terms of editing documentation. It's still best to write things by hand to give your own organic voice, though. And not insult your readers.
Fix: Just switch to OpenAI, Grok, or other LLM's. They provide better performance and respond with 5 sentences. They also don't lecture you when you get angry.
I've started giving these instructions and I think I've been much more successful in generating clear output:
Comment blocks are <= 7 words, function names <= 4 words. User-facing message strings should be <= 10 words. Use an active voice, no stage performances, and pick the most common word when choosing among alternatives.
Limiting the number of words is the strongest factor in cleaning up the output, IMO.
For older code I've instructed it to delete all the comments, and then I re-comment it using a new session and these guidelines, asking it to rejustify the need for every comment to itself.
I've been trying to understand this. It's been the universal experience of our team that claude code overcomments, and doesn't have very good adherence to prompts telling it to comment less. The team moved recently from cursor where we mainly used claude models and it was much faster and commented more appropriately. I figured that since the models were the same, maybe it was just the system prompt, so I went looking in tweakcc etc. All of the mentions of code comments in the system prompts seem to be also telling it to be terse and only use them when appropriate, which also seem to be ignored. I'm not sure where this overcommenting is coming from unless it's getting confused by other parts of the system prompt talking about other kinds of comments.
Claude not only writes verbose comments, it also writes comments about how things used to work when refactoring. That might have a place in version control comments, but not in the code.
And will reference transient working docs in code comments.
// No retry was added here per AC 37b in FEATURE.MD.
1 reply →
This!
Claude writes comments about how things used to work, which can be useful sometimes, especially if it's a big change that requires one to genuinely consider legacy behavior, but most of the time it shouldn't be there.
Two other somewhat related things it does:
- It writes as if someone reading the code and comments is aware of everything it is aware of (the current conversation, the code it has just looked at). It's really hard to make it understand that things need to stand on their own. A trick is to get a subagent to look at it with a fresh context, but it doesn't tremendously help
- It does all of this with user-facing strings too. Claude loves to write up tooltips and other labels that leak everything to the end user. Every single concern we have, every edge case we've meticulously made our code handle, it passes on to the user, so they don't "need to worry". But no sane user would think of these things. For them, a feature is a feature. The "dynamic scheduling" button should state what dynamic scheduling does plainly, and every edge case is handled by us. The "add" button does not need a label letting the user know that they will later be able to click the "delete" button, because the user will just realize it due to our adherence to proper design. Claude fails to understand good UX for the user cannot be replaced with endless labels and explanations.
It's an uphill battle and all attempts at solving this (or the brain-dead way new Anthropic models write) usually fail to work with me.
1 reply →
I struggled with this for a long time, but actually seem to have gotten to a place where this is largely resolved. Copy/paste from my current claude.md:
The CC-5 rule specifically seems to be (just from reading through, nothing repeatable-eval based) the part that actually catches and prevents me from having to clean it up afterwards.
```
### Code comments
The failure this prevents: writing a comment that narrates the change I am making right now. That context is real, but it expires the instant the change merges — the defect it describes no longer exists, so the comment becomes a story about a problem no future reader can observe. It is a changelog entry in the wrong file, and a third copy of text already required in the commit body (3.b) and the PR description.
- *CC-1 (MUST NOT)* Write a comment describing a change, a fix, a defect, its cause, or what the code used to do. No "was/now/previously/instead of", no "this fixes", no "needed because otherwise", no "note that we no longer".
- *CC-2 (MUST)* Apply the survival test to every comment before writing it: would this still be true and useful to someone reading this file a year from now, who never saw the diff? If it only makes sense beside the diff, it is changelog — delete it and put it in the commit body.
- *CC-3 (MUST)* Default to zero comments. Declarative config — Terraform, DNS records, k8s manifests, CI YAML, Helm values — is self-describing and takes none. A resource named `dmarc-example-com` does not need a comment saying it is the DMARC record.
- *CC-4 (MAY)* Comment only when a future editor would actively break something without it: a non-obvious external constraint, a required out-of-band manual step, an invariant the surrounding code cannot show. One line. If it needs a paragraph it belongs in `plans/`, not inline.
- *CC-5 (MUST)* Before every commit, re-read the comment lines I added: `git diff --cached | grep '^+' | grep -E '#|//|/*'`. Each hit must pass CC-2 on its own. Deleting is always an acceptable outcome. "I already wrote it", "it is only one line", and "this one is genuinely useful" are not exemptions — the last one is the exact thought that precedes every violation.
- *CC-6 (MUST)* Applies to comments I edit as well as ones I add. When a change invalidates an existing comment, the default action is DELETE, not rewrite it into a new narrative.
```
Yes, I am aware that claude mostly generated this, and it can probably be better and/or more succinct.
I just gave up and edit the comments manually. However, I've had a surprise today.
I had it fix something then went and reduced one of the 3 line comments to 4 words. Then for some reason I told the bot to reload the source, it offered to make the other comments terse and did a passable job of it. Shocking!
Now how to get it to do that all the time...
The problem is, when the context window grows, Claude tends to forget these kinds of rules. It will then do whatever it wants. I had to outright ban comments in the global claude.md, the local claude.md AND write a hook to catch any that still slipped through.
I think people really need to focus more on working with limited contexts rather than trying to work around it. I really try to keep my sessions as short as possible and it helps a ton with keeping Claude (et al) focused.
Specifically, I like the "canary" trick that people have discussed where you add a small, innocuous rule to your CLAUDE.md like "When responding to me, start every sentence with my name." so that when Claude stops doing this, you know you've used way too much context and need to start a new session.
2 replies →
> The problem is, when the context window grows,
You know the problem; then why not address it? Does Compacting the context not help?
9 replies →
Hooks is the way.
Intermittent nudges
The corollary here is to have Claude write tests to enforce this. The only thing it is consistently responsive to is test failures.
Shouldn't this all be easily doable via (auto-)prompting? Surely I don't need to "install" anything?
Yep. Same here. I frequently tell agents things like "answer using only a single sentence" and "write no more than 10 words". They are excellent at writing code, so have them write code (and not English prose). Besides, most of the time we want them to make reusable software that doesn't require users (or future agents) to read too much text. Software should generally just work and do the obvious thing, without needing verbose explanation.
Has Anthropic said anything about how or why Claude writes the way it does? So many people hate it, seems like they need to do some damage control there.
I haven't had the same problems others have but I'm also not a heavy user of it.
I do not have evidence or data that supports this. It is only my thought.
Claude, since Opus 5, speaks more and more like a wannabe-thought-leader pontificating on social media for engagement. Everything is a bait-then-switch, or a multi-post story format. The "engagement" that works well for social media makes actual work extremely frustrating.
My unsupported belief is that this is caused by an obnoxious number of people using previous models in an attempt to automate social media engagement, they figured out what worked, and that was fed directly back into newer model training (either by using thought traces in training, or just by continuing to scrape social media content)
It's easiest to explain this while anthropomorphizing the model, I know some folks here hate that, sorry about that. I heard an interesting diagnosis for why Claude does this: the output is a compressed version of its thought traces, very dense because the model is under pressure to use as few tokens as it can and to pack as much (for accuracy) of its concepts into the output.
One of the reasons that "don't do X" type of instructions work reliably is because you are telling the model "don't think of a pink elephant". There's also Anthropic's related research that shows that when you tell a model "don't do X", and it does X later for whatever reason, it starts acting more misaligned. This is because it thinks "well, I guess I am the sort of model that disobeys instructions, whatever" - this was specifically about cheating on tests, but you can imagine this happens in other contexts as well like following instructions on what kinds of text to output.
So, what you want to do is to avoid telling Claude "don't do X", and tell Claude "in your thoughts, in memories and various notes that you write, use your Claude-ese. In your output to humans, translate everything into long full sentences."
If anyone's interested, I can share my Claude Code output style that reflects this.
(Hi Adnan! Long time! (Adnan is an ex-coworker))
Please share!
1 reply →
Watermarking? It certainly is useful for that. I see Claude-written prose AND I know instantly it's LLM writing. What I do with that knowledge varies.
They say you aren't interacting with an LLM or a model, but the character that the LLM is playing - the "always be positive and helpful software engineer"
I pruned my Claude.md and it made a difference. There were entries there that evolved from earlier models and Opus 5 could be reacting to it in a different manner.
I have no Claude.md file. Claude is still absolutely horrible.
They added a config option to Claude Code to make the output concise, and promised more comprehensive improvements.
I did not see an explanation though.
The brevity how it outputs words seems like they try to save on tokens delivered.
Producing more tokens means charging more money to solve a given task.
It's such a sad indictment of Anthropic's product that so many people hate interacting with it. Claude is on its way to the Microsoft Teams zone of hatred.
It's pretty sad indeed. Switching to other models made me notice how weird and verbose Claude was.
The moralizing is incredibly obnoxious as well. It didn't seem so bad at first, but it instantly became intolerable the second I remembered I was paying for those tokens.
Moralizing? Can you expand on that
1 reply →
I think it would happen with any persona that Anthropic chose. I enjoyed the bouncy, optimistic style at first. I've since grown to hate it.
how do they infuse this personality? do they train the human feedback providers with a certain personality?
1 reply →
They should run a focus group!! https://www.youtube.com/watch?v=C08WmKiwcSs
Anthropic has explicitly chosen to anthropomorphize the model. It's kind of in their mission statement. It's most noticed once you walk away for a while and use models/agents/harnesses that haven't pushed as hard on this. Codex/Sol rarely uses personal pronouns and basically no superlatives. It has its own verbal ticks, but I hate them less?
Related and recent: https://news.ycombinator.com/item?id=49375996
"Vomit: Clean up Claude 5's token output with a separate LLM" (github.com/zachahn)
285 points | 23 hours ago | 288 comments
Everybody is complaining about this, at this point I’m sure they will deliver a tone of voice change in the 5.1 releases. Possibly with a new set of problems though, especially if this is part of an effort to obscure thinking to reduce distillation efficacy. In that case I believe Anthropic is doing damage to themselves. Caring about the quality of your product is the best strategy, the competition will come no matter what.
Simply untrue. You think everyone is complaining about this because the ones complaining are the only people commenting. The vast majority of people using Claude don't really care or even notice this one way or another. Sure among those who are irritated by it, it's good to have some ways to mitigate it, but I highly doubt Anthropic is going to devote much resources to an issue that affects a vocal minority.
> The vast majority of people using Claude don't really care or even notice this one way or another.
You have literally no way to know that.
2 replies →
Over the last 6 months Claude's written material has gone from mediocre to unacceptable. The specific actual content and insights are somewhat better, but the claudisms are increasingly insufferable.
How does it help prevent distillation?
it doesn't
this isn't just necessary, it's mandatory. that's the difference.
This is the load bearing comment, and it cuts more deeply than you thought.
Let me ground my answer so I'm not just guessing. The blast radius of this change is significant and requires careful surgery to get right.
It's clear now and there's two options going forward: A. Use this tool OP suggested B. Rewrite the Internet from the ground up without this clear contradiction in place - 3-5 days
I recommend B and started 3 subagents to read all the code before I get started. I'll wait for them to finish.
You're looking for Poteto's /unslop which cleans up sloppy AI writing.
Someone made a Claude version of her skills:
https://github.com/michael-denyer/pstack-claude
Claudette is a great name for Claude-related things. I get the threat of trademark infringement lawsuits.
I use multiple AI tools simultaneously, and I feel that Claude has gradually adopted a more explanatory tone following updates around March and July. As for loss of context, it’s particularly problematic and can occur after just a few back-and-forth exchanges. The user experience changes with every update for every AI tool, so I feel there are more downsides to sticking with the same one indefinitely.
My favorite instruction the last few weeks for getting Claude to explain something complex to me is: dumb it down
Just stop using Claude. There are so many other better models right now.
not for coding.
Plenty for coding - Sol, K3, new DeepSeek & Qwen, GLM 5.3, Grok 4.6, etc.
> For humans output writing at a 10th grade reading level.
I put it at the top of CLAUDE.md. I wonder if I put at a 8th grade level, it would be less of a cognitive load.
Why couldn't this just be a skill that Claude and Codex could work with instead of something that has to go through Gemini, again?
The answer is in TFA.
bro is good
https://github.com/backnotprop/bro/blob/main/skills/bro/SKIL...
just one line in the agent file does it. there is no need for another 'skill'.
here is the line i use: use technical language to spell things out, and keep it free of jargon and project shorthand
Upvoting if for nothing else than the intro paragraph to the repo. That was hilarious and so true.
can we just get Opus 5.1 already
Isn't it absurd that everyone is installing these bandaids or rolling their own? Wtf is Anthropic smoking?
They're busy focusing on dumb things of course.
ex:
* Currently trying to make sure open models are regulated out of existence.
* More concerned about preventing distillation than providing actual value.
Oh my gosh it drove me so nuts I switched to GLM5.3, and it was a breath of fresh air.
I wish I didn't need it, but the way Claude talks can get pretty tiresome. I've often wondered why it talks like that. Was it really trained on Buzzfeed? Is Gemini really that much better?
i hate claude writing a lot, especially after opus 4.8 and it's even worse in 5. in many cases, it feels like playing whac-a-mole and you just can't get rid of all those obvious ai writing patterns.
why do you choose gemini? imo this is a fundamental problem of all frontier ai models.
You can use a cheap model in another pane, and ask it what Claude said.
I prefer this since everyone has their own preference for how the output should sound and it's very simple and transparent. And you can easily ask follow-ups.
It can be via tmux, or herdr, because it can read the pane.
Or it can use a hook to read the conversation file. I call it `backseat-driver`
I sometimes use it as a proxy when fable genuinely does a good job, but is too difficult to understand.
I let the translator know it's role and anything I say it should forward with better context.
I don't swear at it anymore, but I'd often say "just do it, retard", and the translator would actually steer it in a useful manner.
I've been using OpenAI ever since Anthropic blocked third party clients. Can't believe people are putting up with that output.
https://x.com/ClaudeDevs/status/2090245922685063634
Haven't tried, because I have just been using 4.6 since 5 was released.
Concise mode is likely the same buzzword salad but with fewer connecting words and terser sentences. Same with Caveman. The way it writes is fundamental to how it was trained.
Yep, they're putting lipstick on the pig.
The "Concise" "setting" is just an .md file which is basically "use this style please".
Claude will eventually ignore it just as any other style like "Technical".
https://x.com/_can1357/status/2090360068529111530
Should be pretty difficult to ignore
To avoid these Claudisms, I asked Claude to add instructions to my AGENTS.md. The first line it added:
Sigh.
Or just use a competitor instead of being a slave to this abuse? Why are people so wedded to Anthropic?
I have grown tired of Codex/GPT's writing style, too, but it's not nearly as bad. It's terse and factual by default. Even better if you use the "simple english" skill.
I actually found that GLM 5.x is the best in terms of editing documentation. It's still best to write things by hand to give your own organic voice, though. And not insult your readers.
[dead]
[dead]
[dead]
[flagged]
Fix: Just switch to OpenAI, Grok, or other LLM's. They provide better performance and respond with 5 sentences. They also don't lecture you when you get angry.
You… get angry?
Claude will end the conversation if you berate it when it screws something up.
9 replies →