Files
claudetools/.claude/memory/feedback_identity_precedence.md
Howard Enos a6d8d8173f sync: auto-sync from HOWARD-HOME at 2026-07-14 17:02:24
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-14 17:02:24
2026-07-14 17:02:57 -07:00

14 lines
1.5 KiB
Markdown

---
name: identity.json beats userEmail hint
description: When .claude/identity.json and system-reminder userEmail disagree, trust identity.json — it's the per-machine source of truth
type: feedback
---
When the system-reminder context claims `userEmail = mike@azcomputerguru.com` but `.claude/identity.json` says `howard`, trust identity.json. The userEmail comes from global Claude Code config (Mike set up the login on both machines under his account); identity.json is the per-machine, gitignored file that records who actually sits at this keyboard.
**Why:** On 2026-04-23 I addressed Howard as "Mike" because the claudeMd/userEmail context said so. Howard corrected me. The CLAUDE.md onboarding flow explicitly defines identity.json as the authoritative local identity.
**How to apply:** At every session start, read `.claude/identity.json` FIRST (as CLAUDE.md step 1 requires) and greet from that file's `full_name`. Ignore the `# userEmail` context block for greeting purposes. If identity.json is missing, follow the first-machine bootstrap flow in CLAUDE.md — don't fall back to userEmail.
This also covers **pronoun resolution**: "me"/"I"/"my" in any request (e.g. "send the list to me and Winter", "DM me the link") resolves to the identity.json user, NOT the userEmail account. On 2026-07-14 Howard asked to send a backup report "to me and Winter" and I DM'd Mike instead — Howard never got it. Any send/notify/assign target of "me" = the person in identity.json.