[FEATURE] Global CLAUDE.md preferences should apply across all projects without needing to be duplicated in project-level memory
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
Global preferences should not need to be re-taught at the project level.
Global CLAUDE.md rules are being effectively shadowed by project-level memory entries, requiring the user to duplicate preferences per-project. This is a genuinely frustrating limitation and I appreciate any attempts to address / mitigate this.
Proposed Solution
A few options, roughly in order of simplicity:
- Merge rather than override — when loading context, apply global CLAUDE.md first, then layer project-level memory on top. Project entries add or refine; they never silently replace. If a project memory conflicts with a global rule, the global rule wins unless the project entry explicitly overrides it.
- Global rules as non-overridable anchors — introduce a distinction between preferences (can be project-overridden) and rules (cannot). Users mark rules in global CLAUDE.md with something like
!or a[rule]tag, and those are guaranteed to apply everywhere regardless of project memory.
- Visibility warning — when writing a project memory entry that duplicates or conflicts with a global CLAUDE.md rule, warn the user rather than silently accepting it. At minimum this makes the shadowing explicit.
Option 1 is the most natural fix and probably the least disruptive to implement — the current behaviour of "project overrides global" is likely a side-effect of load order rather than a deliberate design decision, so reversing the precedence (or merging) may be a small change with a large quality-of-life improvement.
Alternative Solutions
_No response_
Priority
Medium - Would be very helpful
Feature Category
Interactive mode (TUI)
Use Case Example
All the time. There are some basic tenets that I wish to always follow.
Additional Context
_No response_
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗