Claude Code keeps per-project memory at <home>/.claude/projects/<key>/,
where <key> is the project's absolute path with every separator and the
drive colon turned into a dash. That makes it both rename-fragile and
machine-specific, and this project has hit each of those once:
- D:\DEV\Schunix -> D:\DEV\SchOS changed the key, and 43 memories were
invisible until moved across by hand.
- Development happens from Windows and from Linux, and each looks in a
different place for the same checkout.
Committing .claude/memory/ fixes both -- git carries it across renames
and between hosts -- and `import` puts it wherever the local machine
expects. .claude/settings.local.json stays ignored: those are per-machine
permissions.
The colon maps to a dash rather than being dropped. Deleting it gives
D-DEV-SchOS, which matches nothing and silently finds zero memories; that
was the first attempt. On Git Bash the key comes from `cygpath -w`,
because Claude Code is a Windows program and sees D:\DEV\SchOS, not
/d/DEV/SchOS.
21 lines
901 B
Markdown
21 lines
901 B
Markdown
---
|
|
name: nexoniarz-sharing-preference
|
|
description: Does not want unfinished work shared or published anywhere
|
|
metadata:
|
|
node_type: memory
|
|
type: user
|
|
originSessionId: d1a1ea76-f919-411c-b0ef-0e1bc5064563
|
|
modified: 2026-08-01T17:16:58.232Z
|
|
---
|
|
|
|
Strongly does not want to share work that isn't finished. Stated while
|
|
explaining an aversion to git ("you need to login to github or gitlab to use
|
|
it and this is stupid... I don't like to share stuff that aren't done").
|
|
|
|
**Why:** it's about publishing, not about version control — the objection was
|
|
based on believing git requires a hosted account.
|
|
|
|
**How to apply:** never push, publish, or otherwise send this work anywhere
|
|
without being asked. Local-only git is fine and was accepted once clarified
|
|
that `git init` needs no account and uploads nothing — but do not assume that
|
|
extends to any remote. Ask before anything leaves the machine.
|