claude-code - 💡(How to fix) Fix Claude doesn't proactively read memory files before acting on known systems [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#46050Fetched 2026-04-11 06:30:16
View on GitHub
Comments
0
Participants
1
Timeline
4
Reactions
0
Author
Participants
Timeline (top)
labeled ×3cross-referenced ×1
RAW_BUFFERClick to expand / collapse

Problem

Claude Code has a persistent memory system (~/.claude/projects/*/memory/) with an index file (MEMORY.md) that's loaded into context. However, Claude consistently fails to read individual memory files before starting work on known systems, even when:

  1. MEMORY.md index clearly lists relevant memories for the system being worked on
  2. There's an explicit feedback memory saying "Check memory before acting on known systems"
  3. The task involves a system with established deployment procedures, architecture notes, and lessons learned

What happens

  • Claude explores the codebase from scratch (many tool calls, high token usage)
  • Claude rediscovers information that was already saved in memory
  • Claude makes mistakes that were previously documented and saved as lessons
  • Massive token waste on reconnaissance that memory would have eliminated

Expected behavior

Before starting work on any known system (especially ones referenced in MEMORY.md), Claude should:

  1. Scan MEMORY.md for relevant entries
  2. Read those memory files
  3. Use that context to skip unnecessary exploration

Real example

Today: Asked to fix charts + tiers on Immigration Analytics (Server B). Memory had project_immigration_analytics.md with deployment info. Claude ignored it, explored from scratch, then manually recreated Docker containers (wrong approach), broke Traefik routing, had to rollback and rediscover the correct docker-compose deploy method — all of which could have been avoided by reading memory first.

Frequency

This is a recurring issue across multiple sessions. The user has already created a feedback memory (feedback_check_memory_first.md) about this exact problem, which Claude also ignored this session.

Suggestion

Consider making memory retrieval a mandatory first step (like a system-level hook) when the user's message references a known project/system that appears in MEMORY.md, rather than relying on Claude to voluntarily check.

🤖 Generated with Claude Code

extent analysis

TL;DR

Implement a system-level hook to mandate memory retrieval as the first step when working on known projects/systems listed in MEMORY.md.

Guidance

  • Verify that the MEMORY.md index is correctly formatted and up-to-date to ensure accurate memory file retrieval.
  • Investigate the current memory loading mechanism to understand why Claude is not reading individual memory files despite the explicit feedback memory.
  • Consider adding a check to ensure Claude reads memory files before starting work on known systems, potentially by integrating the suggested system-level hook.
  • Review the feedback memory (feedback_check_memory_first.md) to understand why it was ignored and improve its effectiveness.

Example

No code snippet is provided as the issue does not contain sufficient technical details to generate a specific example.

Notes

The suggested fix relies on the assumption that implementing a system-level hook is technically feasible and would effectively address the issue. Further investigation into Claude's memory loading mechanism and the feedback memory system may be necessary to ensure a comprehensive solution.

Recommendation

Apply a workaround by manually ensuring that Claude reads memory files before starting work on known systems until a more permanent solution, such as the suggested system-level hook, can be implemented. This is because the current behavior is causing significant token waste and inefficiencies.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

Before starting work on any known system (especially ones referenced in MEMORY.md), Claude should:

  1. Scan MEMORY.md for relevant entries
  2. Read those memory files
  3. Use that context to skip unnecessary exploration

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING