Copies your live ~/.claude/ configuration into this repo, applying anonymization rules to strip personal data before committing.
pip install -r scripts/requirements.txt
cp scripts/anonymization.example.yaml scripts/anonymization.yamlEdit scripts/anonymization.yaml with your real data — app names, URLs, domains, people. The file is gitignored and never committed.
# Preview what would happen (no files written)
python scripts/sync.py --dry-run
# Run the sync
python scripts/sync.py
# Audit existing repo files for personal data leaks
python scripts/sync.py --audit-only
# Use a different source directory
python scripts/sync.py --source /path/to/claude-config- Reads
anonymization.yamlfor replacement rules - Copies files from
~/.claude/matching thefile_mappatterns - Applies exact string replacements (longest first, to avoid partial matches)
- Applies regex patterns for catch-all rules (paths, emails)
- Regenerates the
docs/workflow-guide.htmlDATA arrays (commands, agents, skills, hooks) from live config viagenerate_workflow_guide.py, preserving hand-written French descriptions and flagging genuinely new entries - Prunes orphaned repo files under synced roots (
commands/,agents/,skills/,hooks/,rules/) whose live source has disappeared - Runs an audit: greps all output files (
.md,.html,.yml,.yaml,.sh) for patterns that should not survive - Prints a summary and
git diff --stat— you review and commit manually
The anonymization.yaml has four sections:
replacements: Exact string replacements. Add your real app names, URLs, domains, and people here. Longer strings are applied first automatically.patterns: Regex patterns for catch-all rules (e.g., home directory paths).audit_patterns: Patterns to grep for after sync — anything matching is a potential leak.skip: Directories/files in~/.claude/to ignore entirely.file_map: What to copy and where to put it.
The example config uses "Option B" — public apps (already on GitHub) keep their real names, while private apps get descriptive placeholders like my-budget-app. This makes the repo more readable for public apps while protecting private projects.