claude-code-sync
Back up and restore your Claude Code configuration — skills, hooks, agents, keybindings, global CLAUDE.md, a redacted settings.json, and a plugin manifest. Never your history, sessions, or projects.
Docs: https://shawonashraf.github.io/claude-code-sync/
Quick start
Set up backups on the machine you already use:
uvx claude-code-sync init
Reproduce your setup on a new machine (one command):
uvx claude-code-sync restore https://github.com/you/claude-backup.git
The installed command is claude-sync (with claude-code-sync as an alias
— the PyPI name).
Commands
| Command | What it does |
|---|---|
claude-sync init [dest] |
Interactive setup: choose destination, git mode, auto-backup hook |
claude-sync backup |
One sync pass (no-op when nothing changed; commits in git mode) |
claude-sync restore [src] |
Restore from a directory or git URL; reinstalls plugins |
claude-sync status |
Destination, last backup, drift, pending conflicts |
claude-sync resolve |
Choose a version when two machines diverged |
claude-sync hook install|uninstall |
Manage the SessionEnd auto-backup hook |
What about secrets?
Env vars in settings.json whose names look sensitive (*KEY*, *TOKEN*,
*SECRET*, *PASSWORD*, *CREDENTIAL*) or whose values look like
credentials are replaced with <redacted-by-claude-sync> before anything
leaves your machine. claude-sync status lists what you need to re-supply
after a restore.
Multi-machine use
Backups from several machines to one git repo can diverge. claude-sync never
merges on its own: it detects divergence, skips the automatic backup, and
claude-sync resolve lets you pick which version to keep. The losing
version stays in git history.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_code_sync-0.1.1.tar.gz.
File metadata
- Download URL: claude_code_sync-0.1.1.tar.gz
- Upload date:
- Size: 91.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
80659f5b43d1c160c374fa0a129007e83bb9397d2957b97f41bad9fffc136cb5
|
|
| MD5 |
57894def0d5086309b8ad28eb4b6f0e3
|
|
| BLAKE2b-256 |
cbda18b5459d8a9322369ac177d47c7f19cffacff6745714ad2b5388e5a13329
|
File details
Details for the file claude_code_sync-0.1.1-py3-none-any.whl.
File metadata
- Download URL: claude_code_sync-0.1.1-py3-none-any.whl
- Upload date:
- Size: 17.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a5b5678a11e3b25b4e4b708fba67d2f06e9e8a139e6915d6f57be7c6b8bee4e
|
|
| MD5 |
275318e5a72e8b1c85afcd718c6b7df4
|
|
| BLAKE2b-256 |
53930eaee986c08dd220b08ffa5a40d48d721d498cfafb040b3d1ce51c5ba383
|