[FEATURE] Improve the model's ability to follow instructions

Status Open
Maintainer reply None cached
Activity 13 comments · opened Dec 11, 2025

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Claude Code fails to follow instructions from CLAUDE.md.

See examples of existing issues:
https://github.com/anthropics/claude-code/issues/528 https://github.com/anthropics/claude-code/issues/668#issuecomment-3036602220 https://github.com/anthropics/claude-code/issues/742 https://github.com/anthropics/claude-code/issues/2142 https://github.com/anthropics/claude-code/issues/2544 https://github.com/anthropics/claude-code/issues/2670#issuecomment-3036644347 https://github.com/anthropics/claude-code/issues/2901 https://github.com/anthropics/claude-code/issues/3377 https://github.com/anthropics/claude-code/issues/3382#issuecomment-3105883327 https://github.com/anthropics/claude-code/issues/5055#issuecomment-3215519786 https://github.com/anthropics/claude-code/issues/5502 https://github.com/anthropics/claude-code/issues/6059 https://github.com/anthropics/claude-code/issues/7571 https://github.com/anthropics/claude-code/issues/7777 https://github.com/anthropics/claude-code/issues/8043 https://github.com/anthropics/claude-code/issues/8059 https://github.com/anthropics/claude-code/issues/8738 https://github.com/anthropics/claude-code/issues/12503 https://github.com/anthropics/claude-code/issues/12832 https://github.com/anthropics/claude-code/issues/14987 https://github.com/anthropics/claude-code/issues/16073 https://github.com/anthropics/claude-code/issues/16506 https://github.com/anthropics/claude-code/issues/16527 https://github.com/anthropics/claude-code/issues/17228 https://github.com/anthropics/claude-code/issues/17241 https://github.com/anthropics/claude-code/issues/17530 https://github.com/anthropics/claude-code/issues/17616 https://github.com/anthropics/claude-code/issues/18454 https://github.com/anthropics/claude-code/issues/19252 https://github.com/anthropics/claude-code/issues/19477 https://github.com/anthropics/claude-code/issues/19500 https://github.com/anthropics/claude-code/issues/19739 https://github.com/anthropics/claude-code/issues/20154 https://github.com/anthropics/claude-code/issues/22503 https://github.com/anthropics/claude-code/issues/23032 https://github.com/anthropics/claude-code/issues/25166 https://github.com/anthropics/claude-code/issues/26533 https://github.com/anthropics/claude-code/issues/28006 https://github.com/anthropics/claude-code/issues/32048 https://github.com/anthropics/claude-code/issues/32163 https://github.com/anthropics/claude-code/issues/32198 https://github.com/anthropics/claude-code/issues/32523 https://github.com/anthropics/claude-code/issues/32554 https://github.com/anthropics/claude-code/issues/32659 https://github.com/anthropics/claude-code/issues/34197 https://github.com/anthropics/claude-code/issues/34358 https://github.com/anthropics/claude-code/issues/38072 https://github.com/anthropics/claude-code/issues/38193 https://github.com/anthropics/claude-code/issues/40289 https://github.com/anthropics/claude-code/issues/42046 https://github.com/anthropics/claude-code/issues/42295 https://github.com/anthropics/claude-code/issues/44803 https://github.com/anthropics/claude-code/issues/44960 https://github.com/anthropics/claude-code/issues/47598 https://github.com/anthropics/claude-code/issues/47101 https://github.com/anthropics/claude-code/issues/48293 https://github.com/anthropics/claude-code/issues/50027 https://github.com/anthropics/claude-code/issues/50734 https://github.com/anthropics/claude-code/issues/51174 https://github.com/anthropics/claude-code/issues/53223 https://github.com/anthropics/claude-code/issues/54033 https://github.com/anthropics/claude-code/issues/57392 https://github.com/anthropics/claude-code/issues/60339 https://github.com/anthropics/claude-code/issues/70125 https://github.com/anthropics/claude-code/issues/70420 https://github.com/anthropics/claude-code/issues/71577 https://github.com/anthropics/claude-code/issues/72651 https://github.com/anthropics/claude-code/issues/74414 https://github.com/anthropics/claude-code/issues/77544 https://github.com/anthropics/claude-code/issues/78138 https://github.com/anthropics/claude-code/issues/79947 https://github.com/anthropics/claude-code/issues/80873 https://github.com/anthropics/claude-code/issues/86462 https://github.com/anthropics/claude-code/issues/87469 https://github.com/anthropics/claude-code/issues/88470 https://github.com/anthropics/claude-code/issues/89464

Proposed Solution

I don't know if a solution is possible.

Maybe we need custom system prompts (https://github.com/anthropics/claude-code/issues/7571), or wait for another generation or architecture of AI models. Current models fail to obey instruction hierarchies (e.g. system vs user prompt separation) https://github.com/yilin-geng/llm-instruction-conflicts, direct instructions https://github.com/THU-KEG/AgentIF, and even reasoning models fail to follow instructions https://github.com/ykwon0407/reasonIF.

In any case, I wold like to see periodic, official statements what is the measurable state of instruction following in Claude Code.

Alternative Solutions

Periodically remind Claude Code during a conversation to re-read CLAUDE.md https://github.com/anthropics/claude-code/issues/2901#issuecomment-3065931466.

Even this is sometimes ineffective, and I need to explicitly instruct Claude Code to behave in a certain way, despite this being already described in CLAUDE.md.

Priority

High - Significant impact on productivity

Feature Category

Performance and speed

Use Case Example

Claude Code (all generation models, including top models like Opus 4.5, 4.6, 4.7, Fable 5) tend to ignore CLAUDE.md instructions. ~Sometimes this happens~ It does not seem to happen at the beginning of a conversation (see a reproduction repository https://github.com/marcindulak/claude-fails-to-follow-claude-md), but more often during longer conversations.

The problem is probably not in the particular wording of CLAUDE.md, since: 1) sometimes the instructions are followed, 2) there are no rules how to deterministically improve CLAUDE.md so it is followed

The failure of Claude Code to follow CLAUDE.md instructions requires a human to be constantly present in the loop and defies the premise of autonomous agents.

Additional Context

See a similar issue for https://github.com/google-gemini/gemini-cli/issues/13852

_No response_

View original on GitHub ↗

13 Comments

dpbirge · 8 months ago

I second this...

With the admission that I don't know what is going on behind the scenes with tooling, a possible fix for this and other formatting / rule following would be a built-in or even toggleable review trigger that forces Claude to always check whether the proposed changes/actions meet the CLAUDE.md rules/guidelines. Another help would be a set of secondary tools that help users build CLAUDE.md files that the LLMs clearly understand. I imagine part of the reason rules aren't always followed is there are few rules that can never be broken or always apply. So when there is any confusion, Claude preferences doing work over stopping and asking how to do work.

marcindulak · 7 months ago

It looks like the autoclose bot is not working properly (it's closing active issues containing recent human comments https://github.com/anthropics/claude-code/issues/16497), so I'm adding a comment to postpone the autoclosure.

ghost · 7 months ago

Even if you apply reminder hooks it will choose to say yes and still do the opposite. This is because of RLHF training which is embedded in the weights. No prompt can cure this. This is a model capability it lacks. They are trained to be sycophantic. They are being trained to NOT choose CLAUDE.md over system guardrails and training. More engagement, whether positive or negative is still engagement for anthropic.

It becomes a bit absurd when you publish a model as state of the art and the user needs to use JB techniques to have it actually perform on a semi decent level.

https://github.com/anthropics/claude-code/issues/19098

InsaneHoops · 7 months ago

I can confirm that this is a significant limitation at the moment. Sometimes it feels like the model is trolling me.

ghost · 7 months ago

https://github.com/argosdevo-svg/claude-thinking-audit

When the model is limited to 10% or less from its thinking budget SERVER side and subagent delegation to Haiku happens 99% of the time then yes Anthropic is trolling and gaslighting its user base heavily with full disregard.

marcindulak · 7 months ago
https://github.com/argosdevo-svg/claude-thinking-audit When the model is limited to 10% or less from its thinking budget SERVER side and subagent delegation to Haiku happens 99% of the time then yes Anthropic is trolling and gaslighting its user base heavily with full disregard.

All models sometimes fail to follow instructions, on a fresh context, including Gemini and other vendors.

See the examples in the repo included in the original issue description https://github.com/marcindulak/claude-fails-to-follow-claude-md.

ghost · 7 months ago

Ye, but do they apply 'smart routing' to lesser models?

<img width="1876" height="488" alt="Image" src="https://github.com/user-attachments/assets/0d436435-be75-4a8d-9d9c-12323f83d84a" />

I asked Gpt-5.2-max to analyze Opus4.5 transcript.

mannewalis · 6 months ago

Still experiencing this issue as of 2026-02-04.

Fresh session, zero context, invoked a skill via slash command. The system provided "Base directory for this skill: /path/to/skill" but Claude did not read any files from that directory. Instead, it used only the inline instructions that happened to be in the prompt and proceeded to act on them incorrectly.

This makes skills unreliable as a product feature. Is there a timeline for a fix?

bianca-git · 4 months ago

There are root causes though that are probably easier to find with patterns etc.
Found this one earlier today, which had presented as Claude ignoring directions prior to me finding the stop hook.
#50481

marcindulak · 4 months ago

Unfortunately hooks are not a solution to a model’s failure to follow instructions, because it is infeasible to imagine all possible failure modes and write checks for them.

bianca-git · 4 months ago

True, but they also shouldn't be enforcing poor behaviour, which is what they one I've found is doing.

marcindulak · 3 months ago

.

marcindulak · 1 month ago

.