Claude Code Keeps Making the Same Mistake?

Published Aug 6, 2026

A correction that doesn't stick feels like it can't learn — but it's almost always about where the correction lives, not whether it was understood.

Cause 1 — most common

The Correction Only Lived in Conversation

A correction made mid-conversation applies to that session — it doesn't automatically carry forward to a new one, because a fresh session doesn't have that conversation's memory.

Fix: if it should apply every time, write it into CLAUDE.md once instead of re-explaining it each session. See CLAUDE.md best practices for what belongs there.
Cause 2

The Correction Was Implicit, Not Explicit

"That's not quite right" is a weaker signal than stating the actual rule. Without the specific rule spelled out, the same category of mistake can resurface in a slightly different form.

Fix: state the actual rule, not just that something was wrong — "always use snake_case for Python" beats "not like that."
Cause 3

It's a Different Mistake That Looks the Same

Two bugs can produce identical symptoms with different root causes. What looks like "the same mistake again" is sometimes a genuinely new issue that happens to look familiar.

Fix: ask it to explain the root cause before assuming it's a repeat — see 5 prompts for fixing bugs for a prompt built exactly for this.

New to Claude Code? Start With the Basics

The free guide covers the permission model and a first real workflow — good CLAUDE.md habits from day one.

Get the Free Guide →

Frequently Asked Questions

Does a correction carry over to the next session?

Not automatically — a correction made in conversation applies to that session. If it should apply every time, it needs to live in CLAUDE.md, not just be said once.

Is this a sign the tool can't learn from feedback?

No — it's a sign the feedback needs to live somewhere persistent (CLAUDE.md) rather than only in one conversation's memory, which naturally doesn't carry forward to a new session.

Should I just re-explain it every single session?

That works but doesn't scale — write it into CLAUDE.md once instead, so every future session starts already knowing it.