Feature Request: Account-level cloud sync for personal state (skills, memory, settings, hooks)
Problem
Claude Code stores personal configuration across 5 separate local directories, none of which sync across devices:
| Content | Location | Portable? |
|---------|----------|-----------|
| Skills (~40 in my case) | ~/.claude/skills/ | ❌ machine-local |
| Project memory | ~/.claude/projects/<path-hash>/memory/ | ❌ machine-local, path-hash bound |
| User settings | ~/.claude/settings.json | ❌ machine-local |
| Hook scripts | ~/.claude/hooks/ | ❌ machine-local |
| Global instructions | ~/.claude/CLAUDE.md | ❌ machine-local |
For users who work on the same project from multiple machines (e.g., a desktop at home + a laptop on the go), there is no built-in way to keep these in sync. The workaround is managing a separate dotfiles repo + manually copying memory files — tedious and error-prone.
The memory path-hash issue makes it even worse: ~/.claude/projects/C--Users-Liu-Lei-Documents-work-3GPT/memory/ on Windows becomes a completely different hash on macOS, so even manual copying requires knowing both hashes.
Proposed Solution
Account-level cloud sync tied to the Anthropic account. When I sign into Claude Code on a new machine and open the same git repo, my personal state (skills, memory, settings, hooks, global CLAUDE.md) should already be there — or sync automatically.
Key considerations:
- Platform-aware settings: some config is platform-specific (e.g., hook script paths referencing
/usr/bin/python3vsC:/Python/python.exe). The sync mechanism could support platform overrides or conditional sections. - Project memory should be keyed by repo identity (e.g., git remote URL), not local filesystem path, so the same project on different machines shares memory.
- Conflict resolution: for settings edited on both machines, a simple last-write-wins or merge strategy would suffice.
Why This Matters
Claude Code's value compounds over time through accumulated skills, memory, and tuned settings. Locking that value to a single machine undermines portability. As users invest more in customizing their Claude Code environment (I have ~40 skills, 6 memory files, custom hooks), the switching cost of working from a different device grows — which shouldn't be the case for a cloud-connected tool.
Current Workarounds
- Git repo for
~/.claude/skills/(manual) - Manual copy of memory files between machines (fragile due to path-hash)
- Maintain separate
settings.jsonper platform (diverges over time)
None of these are satisfactory for a tool that otherwise provides an excellent developer experience.