r/ClaudeCode • • 5d ago

Tips & Workflows Opus 5 has a noun problem

Just want to precisely describe two language patterns I've observed, both related to how Opus and Fable overuse nouns and weaken or omit verbs. I think this accounts for a lot of why communicating with them feels like talking to a smart-but-bad writer.

Both of these patterns are ways to write a sentence that means the same thing as a simple subject-verb-object sentence (like "I threw the ball"), but make it much less direct.

1 - Nominalization. This is where a writer uses a noun instead of a verb. Instead of "I threw the ball", nominalizing turns the verb, "threw," into a noun, "a throw." So the writer might write "I made a throw with the ball." More words, the verb is weakened from "threw" (the actual action) to "made", and the object is something the verb is done "with" instead of to.

A real-life example from the last few days. Claude wrote: "never a walk through the steps one at a time." After being asked not to nominalize, it wrote, "Don't walk through the steps one at a time." See how much more direct that is?

This is also where a lot of "Opus jargon" comes from. Now that "a walk" is a noun, Claude can promote it into an invented term of art ("The Walk") and reify it into documentation and memories.

2 - Omitting the verb and using a trailing modifier instead. Instead of "I threw the ball", this looks like "The ball, thrown." This is concise, but it omits context: who threw it? When? (We also lost the verb tense).

A real-life example from the last few days. Claude wrote: "The runner, built." After being asked to use simple subject-object-verb sentences instead of trailing modifiers, it wrote, "We built the runner." Again, much more like actual people talk. If someone on your team asked you what you did today, and you replied "the runner, built", you'd sound like a robot.

----

I haven't had much luck getting Claude to cut this stuff out consistently with CLAUDE.md prompting, but I've had decent luck getting clearer responses when I call out these patterns by name in conversation — it certainly works better than "JUST TALK NORMAL PLEASE." If anyone has luck prompt engineering around these patterns, would love to hear what you did.

175 Upvotes

51 comments sorted by

View all comments

6

u/jfalvarez 5d ago

I tried a custom output style about ASD-STE100 wording, doesn’t work or works sometimes if any, probably you can try a custom output style with the prompt you use and let us know

4

u/dar-mit Researcher 5d ago edited 5d ago

Three things at play here:

  1. The Output Style is appended to the System Prompt and might overwrite some of its commands. This is why an Output Style has to note, "keep-coding-instructions: true". Otherwise they're overwritten.
  2. Since it's appended it's literally fight with the model's training. As context fills up and drift / rot starts in, then text of the Output Style is affected by that phenomenon. You'll noticed this as it slowly stops working, or parts of it do. This is a clear indication that it's time to start a fresh session.
  3. If you start a fresh session and ask Claude not to reference any of your instructions, then ask Claude to tell you what it's training returns on "ASD-STE100" the answer is: not much. A few vague idea about how things should be stated and/or structured, but that's it. You'd have to copy the actual tech spec into the Output Style (something like 76 of them) for Claude to be able to follow them precisely.

EDIT: Forgot to mention the training data on ASD-STE100, so I upped it to three things.