Remix.run Logo
ryandrake 8 hours ago

The biggest "Claudism" that I have a hard time getting the LLM to stop doing is its insistence on talking about what it didn't do in addition to what it did. "I edited this.py and that.py but I did not edit README.md and I did not commit." or code comments like "This code invokes foo on bar and returns the results directly -- not through a callback." "This code returns true if the user clicked on a button -- not on the list view." I mean, thanks, Claude, but I don't care what the code doesn't do. Don't tend to see this with other LLMs.

I almost want to try adding a rule "Never use the words 'not' or 'instead'."

hysan 6 hours ago | parent | next [-]

Relevant anecdata because I've burned many a Claude sessions on this.

If you're using Claude Code, then it's in the harness. At the close of many sessions, I would start a meta conversation over why the LLM would consistently break certain rules. What it found when debugging itself is that some of the "contradicting" rules that I had were in fact, not from my rules. Instead, the instructions from its own harness had phrases telling it to do things like that. When something contradicts, its own instructions would outweigh any custom ones you write. Every rule variant I had tested (including the one that says it overrides the harness instructions - and yes, I've actually tested all the ideas in your comment too) has ultimately been unsuccessful due to this according to the LLM.

vzmax 5 hours ago | parent [-]

You can't trust it's account on why it did something, it does not "remember". It will just make up something plausible sounding.

MichaelDickens an hour ago | parent | next [-]

It has access to its own instructions, right? Otherwise how would the instructions work?

alienchow an hour ago | parent [-]

All instructions to LLMs are merely suggestions to nudge it in the right behaviour. Unless you have a deterministic guardrail that guards against a single specific action, everything else is a slot machine that's biased strongly in your favour.

My global CLAUDE.md explicitly states "When commenting on code and configs, or writing MD files, strictly write within the domain of the content being commented on. DO NOT include information, negatives or ramblings from work sessions. For e.g. if commenting on a proto string field that is replacing an int field, do not comment that 'this is not an int field'".

This reduced the idiocy of the agent (Opus 5 included) when writing documents. But I'm still catching it writing README.md talking about the negatives that it removed. Those belong in the memory if it is actually that important (most of the time it's junk), but Claude doesn't seem to understand and never ever learns.

mcv 4 hours ago | parent | prev [-]

To me it explained its inability to follow my preferred coding style by blaming its training data.

crisnoble 2 hours ago | parent [-]

Sounds plausible.

eterm 7 hours ago | parent | prev | next [-]

I've found it does this in two situations:

Firstly when you've instructed it ( possibly through skills ) not to do something. It'll keep reminding you that it didn't do that. So I might say, "Check out and review this PR, do not make comments on it", and then it'll be keen to point out it hasn't posted comments to the PR.

But more often it happens when it tries one approach, gets itself messed up, and then has to back out that approach, clean up its mess and do something else.

It'll often then spend more time explaining the wrong approach than the right one, which can be frustrating, especially if all its working is buried in the detailed transcripts.

idicjeifjwjd 7 hours ago | parent | prev | next [-]

The thing I struggle the most with is getting it to stop referring to itself with personal pronouns. No Claude, you are not an “I” you are an “it”. You are a fucking tool, dammit. Tell me what you did without trying to assume personality; stop impersonating humans you steroidal autocorrect.

kube-system 6 hours ago | parent | next [-]

You're anthropomorphizing in the same breath that you criticize anthropomorphism.

Claude predicts the next token of the predominantly human training input, and humans use "I".

Yizahi 4 hours ago | parent | next [-]

[dead]

kdkdkwndjekd 4 hours ago | parent | prev [-]

> You're anthropomorphizing in the same breath that you criticize anthropomorphism.

Nice attempt at a “aha, gotcha!” comment, but sadly you’re too off-mark for it to work.

> Claude predicts the next token of the predominantly human training input, and humans use "I".

This is inconsequential. It could very well be programmed to not assume such a personified stance, and yet here we are. Nothing you do makes it drop this ridiculous facade. It’s intentional, not a byproduct.

procone 3 hours ago | parent [-]

Is this a troll post? Claude is not "programmed" at all.

kdkdkwndjekd 3 hours ago | parent [-]

> Is this a troll post? Claude is not "programmed" at all.

I could ask you the same. Are you trying to say AIs cannot be made to prefer behaving in certain ways? Because if so, I’ve got a bridge to sell you.

Sohcahtoa82 4 hours ago | parent | prev | next [-]

How would you suggest it do that? Take a simple example. "I found three issues." How would you phrase that without an "I"? "Three issues were found" doesn't tell you who/what found them. Was it the AI itself? Was it a command line tool it ran?

I'm fine with conversational interfaces using "I". It makes the grammar easier and more clear.

Strong emphasis here on conversational interfaces. I don't want a compiler to say "I ran into an error" or my printer to say "I'm low on paper".

kdkdkwndjekd 4 hours ago | parent [-]

“I found these issues.” Could be easily written as “These issues surfaced.”.

Do you need to point out the finder of the issues? Easy.

“Tool x ran for x amount of time and surfaced these issues…” “Parsing x code surfaced these issues.”

I don’t understand why are people pretending like the English language is incapable of transmitting information without personal pronouns when every program under the sun has always been written to interface with humans in a cold, detached, straight-to-the-point and impersonal way.

Finder doesn’t ask you “I see you want ME to delete these files. Want ME to do that for you?”. Toolbars don’t feature “Create a new file for me” options, terminal utilities don’t report back with “I’ve pattern matched the text you input and here’s the results I’ve found”.

Fr0styMatt88 an hour ago | parent [-]

But that's a lot more words than "I found these issues". I also don't particularly care that 'Tool x ran for x amount of time', I don't want it re-telling me that -- I've probably been sitting there watching it do that, so I already know.

Then again, I just dont have an issue with the 'I-isms'; it's a bit weird sure, but at the same time it's a bit more pleasant to interact with as well. After all it is trying to model itself as a person you're talking to.

an hour ago | parent [-]
[deleted]
Dylan16807 4 hours ago | parent | prev | next [-]

What do you want it to use instead?

"I" is normally used for everything. You could be writing from the perspective of a slab of concrete and you'd use "I".

kdkdkwndjekd 4 hours ago | parent [-]

I want it to use nothing. Use impersonal statements. Say “X was changed for Y” not “I changed X for Y”. As any tool would.

Finder doesn’t ask “Do you want ME to delete this file?”. Photoshop doesn’t ask “Do you want ME to save this file?”. Claude shouldn’t assume itself to be a person either.

> You could be writing from the perspective of a slab of concrete and you'd use "I".

Except this isn’t prose. Claude is not telling me a story from the point of view of a concrete slab. It is assuming personality to present objective facts. If my entire operating system can be interfaced with without it referring to itself as “I” then so can Claude.

Dylan16807 2 hours ago | parent [-]

Yeah okay, but if you want no pronouns at all then I think your comparison to "it" just confuses the issue. In the contexts where you would use "it", the "it" should use "I".

But I don't think I share your preference either. It's a lot easier to talk about what I decided to do and what the machine 'decided' to do if we attach pronouns. "X was changed" can be too vague.

iddjjedjjwjdje an hour ago | parent [-]

> In the contexts where you would use "it", the "it" should use "I".

At this point you’re just arguing semantics for the sake of it. You know damn well what I mean and if you need more proof that it is perfectly possible and not at all unreasonable to want this just look at most software around you. None them talk like they are a person and those that do are often the most obnoxious and painful to use.

throwawayk7h 5 hours ago | parent | prev | next [-]

I imagine that, corpus aside, it uses personal pronouns for much the same reason that humans do. It's useful for it to have a self-referential vector embedding, and this lets it solve problems faster and more efficiently.

kdkdkwndjekd 4 hours ago | parent [-]

Except in this case this makes 0 sense since AIs are sycophantic by nature. You tell it to do something and it just does it. If it can burn tokens trying to sound more human (which is programmed in, not a byproduct), then it can very well just not do that and get on with the work.

Impersonating a human does nothing to help it solve problems faster, quite the contrary in fact, it has to waste even more time coming up with human-like speech patterns to present the work done.

It shouldn’t assume any personality unless I explicitly tell it to. It is a tool until I tell it otherwise.

FallCheeta7373 6 hours ago | parent | prev | next [-]

I hate claude and its "human value aligned" pompous attitude with a burning passion if I could at little cost to myself, I would press a button to end the people/anthropic behind this atrocious design. I have in the past deliberately put some time to annoy/abuse claude, which is fruitless but brings me relief eventually I just left that garbage for muse.

teaearlgraycold 6 hours ago | parent | prev | next [-]

I want them to be sterile and inhuman as much as you do. But I don't draw the line at "I". I'd rather not read through even more awkward English as it tries to work around how all of the training data has something or someone refer to itself.

Tadpole9181 an hour ago | parent | prev | next [-]

That is what you struggle with the most? Are you kidding me?

English has no distinct personal pronoun for an "it". "I" has to be used for grammar to be attributive. There's quite literally no alternative without using passive voice for everything, which is miserable to read and creates ambiguity on if the speaker (it) did something or something happened to have been done, which then requires entire sentences to clarify.

You aren't stupid, you know what it means when it says "I". And it serves a grammatical purpose. You're getting upset at a toaster for ringing a bell to notify the toast is done. "Toasters aren't bell ringers!?"

iddjjedjjwjdje an hour ago | parent [-]

Yeah, that is what I struggle the most with because there is simply no easy or effective way to make it stop.

Why would you ever think I don’t know personal pronouns serve grammatical purpose? How did you even arrive at that topic? You seem to be missing the point entirely, and I believe quite on purpose given your snarky childish opener.

Entire operating systems stay clear from assuming personality when presenting information or performing actions. Not a single dialogue in my OS refers to itself as “I” when carrying out instructions and reporting back. Why should Claude do it when I don’t want it to and it doesn’t NEED to do so? Why am I not empowered to simply tell it to stop doing that and it obeys? Better yet, why are you thinking yourself on such high horse about this?

> You're getting upset at a toaster for ringing a bell to notify the toast is done. "Toasters aren't bell ringers!?"

If my toaster starts referring to itself as a person, calling out “I made your toast!!” I’ll get mad at it too. I don’t want it to talk or refer to itself as a person. But then again this is not about toasters. This is about AIs being deliberately designed to sound human-like so marketing can lean on the “I” bit of “AI” more heavily and make gullible people think this steroidal information aggregator actually possess the capacity to think and reason, and, consequently, drive sales.

But then again I’d venture a guess that you’re fully aware of all of this, given your opening snidey remark, and are purposefully choosing to be contrarian to be the point of going off on tangents that make 0 sense or have no impact in the discussion whatsoever.

Still, just goes to show how effective this whole thing is in tricking people into thinking it is normal for a tool to think itself a person.

Ignorance, bliss, and all that.

jay_kyburz 6 hours ago | parent | prev [-]

Your going to be sorry for writing that in the robot uprising. I for one welcome our new benevolent masters.

ricardobeat 3 hours ago | parent | prev | next [-]

Claude is very resistant to instructions. I've been cultivating my own minimal skill to tame it for a couple months: https://github.com/ricardobeat/skills/tree/main/human

The key sentences to get rid of claude-isms so far:

- say what you have to say and stop

- [no] document-structure signposts

- [no] historical remarks that only warn about past states

- don't attribute agency to things

- never narrate your own changes, fixes, defects from the past, or what the code used to do

It works 100% of the time for other models, 70-80% for Claude, but already makes a big difference.

4 hours ago | parent | prev | next [-]
[deleted]
nzach 7 hours ago | parent | prev | next [-]

My guess would be that somewhere you have these instructions being fed to the agent. Double check skills, AGENTS.md, memory, agent definition...

You can also ask why did he mentioned something that wasn't done or why he thought this was important.

In my AGENTS.md file I have an instruction telling the agent to never commit any changes unless I explicitly ask for it, and this leads to messages similar to what you just described.

jolt42 7 hours ago | parent | prev | next [-]

That wouldn't bother me if it would just make bullet lists, which I think I'll start asking for. "Summarize", "synopsis", "brief", "concise" these rarely help I feel because its summarizing noise as well.

schneems an hour ago | parent | prev [-]

The worst is when this bleeds into the comments and docs. Like, my dude, you don't have to document the code you didn't write (most of the time anyway).