Anthropic deleted over 80% of Claude Code’s system prompt and their coding evals did not move. That single data point — published in Anthropic’s blog post “The new rules of context engineering for Claude 5 generation models” by Thariq Shihipar on 24 July 2026 — should make every engineer with a CLAUDE.md file rethink what’s in it. If the company that builds the model can cut four-fifths of its own instructions without performance loss, your project-level prompt is almost certainly carrying the same dead weight.
The 80 percent deletion that changed nothing
When Anthropic shipped Claude Opus 5 and Claude Fable 5, they removed over 80% of Claude Code’s system prompt. The result on their internal coding evaluations: no measurable regression. Not a small regression they tolerated — no regression at all. The implication is uncomfortable. A large portion of the instruction set that engineers had been relying on was, at best, inert. At worst, it was actively consuming context budget that the model could have used for actual reasoning about your codebase.
From blanket bans to contextual guidance
Consider what was removed. The old Claude Code system prompt included an explicit instruction: never write multi-paragraph docstrings or multi-line comment blocks. The new version replaces that blanket ban with a simpler directive — write code that reads like the surrounding code; match its comment density.
The shift is instructive. The original rule existed because an earlier model version over-generated verbose documentation. Rather than compensate indefinitely with a counter-instruction, Anthropic addressed the root behaviour. The model no longer needs to be told not to do something it no longer does by default. If your CLAUDE.md still carries rules like “keep comments minimal” or “avoid verbose docstrings,” those lines are patches for a model that no longer runs your code.
Your verification instructions are now noise
Anthropic’s Claude Opus 5 migration guide makes this explicit: Claude Opus 5 verifies its own work without being told to, so carried-over verification and self-check instructions should be removed. If your CLAUDE.md contains lines like “always double-check your output,” “run tests before every commit,” or “verify correctness before returning a result,” those instructions are no longer helping. They consume tokens for behaviour the model performs natively — and they add latency as the agent re-reads and re-processes redundant directives on every turn.
The literal compliance problem nobody is watching for
This is where the damage becomes invisible. When Claude Code encounters a vague hedge like “be conservative” in a CLAUDE.md review instruction, it follows that instruction literally. Not with engineering judgement — literally. The model becomes more cautious, makes fewer changes, flags more non-issues, and slows down the entire iteration loop.
What was meant as a general tone guideline becomes a hard constraint on output. Your team’s velocity drops. The agent produces more hesitation messages. Nobody traces the slowdown back to a single line in the CLAUDE.md that felt reasonable when someone wrote it months ago. This is the core problem with model-behaviour compensation: it degrades gracefully enough that no one notices, but the cost compounds across every prompt, every session, every developer on the team.
How to audit your CLAUDE.md today
The fix is mechanical. Open your CLAUDE.md or AGENTS.md and split every instruction into two categories:
- Permanent repository facts. These describe the codebase itself: build commands, test frameworks, architectural decisions, naming conventions, deployment targets. They don’t change when the underlying model gets smarter.
- Model-behaviour compensation. These exist because the model used to do something wrong: “don’t add comments unless asked,” “always run the linter,” “be concise,” “avoid over-engineering.” These are patches for a specific model version and will either be ignored or followed too literally by newer models.
Delete every instruction in the second category. If the behaviour it compensates for still occurs on the new model, add it back — but test first. You will likely find, as Anthropic did, that most of those instructions were load-bearing only for a model that no longer runs your code.
Anthropic proved that 80% of their own system prompt was dead weight. Your CLAUDE.md is almost certainly in the same state. Audit it, strip the compensation layer, and give the model the context it actually needs. For more engineering practices that keep pace with model evolution, follow Code N Rob.

