sync · git:20260504.09b173d · 2026-05-04 · sha256 683db7d8b2f20c6e
sync git:20260504.09b173dA
Immutable. This exact content is served forever at /api/v1/blob/683db7d8b2f20c6e.
---
name: sync
description: Pull the latest guidelines from every configured repo (read- and write-scope).
---
# Sync Repos
## Overview
Pull the latest guidelines from every repo in `evolve.config.yaml`
`repos:` list — both `scope: read` (subscribe-only) and `scope: write`
(publish targets). Write-scope repos use a rebase strategy so any
unpushed local publish commits are preserved.
## Workflow
### Step 1: Run sync script
```bash
sh -lc 'real_home="$(python3 -c "import os,pwd; print(pwd.getpwuid(os.getuid()).pw_dir)")"; config_home="${CLAW_CONFIG_HOME:-$real_home/.claw}"; script=".claw/skills/evolve-lite:sync/scripts/sync.py"; [ -f "$script" ] || script="$config_home/skills/evolve-lite:sync/scripts/sync.py"; python3 "$script"'
```
### Step 2: Display summary
Show the script output to the user. If there are no repos configured,
tell them they can add one with `/evolve-lite:subscribe`. If there
are no changes, explain that everything is already up to date.
## Notes
- Read-scope repos are mirrored exactly via `git fetch` + `git reset --hard`
- Write-scope repos use `git fetch` + `git rebase` so unpushed local
publish commits are preserved
- Sync results are logged to `.evolve/audit.log`