Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Sync OpenClaw workspace between multiple machines (local Mac and remote VPS) via Git. Enables seamless migration of OpenClaw personality, memory, and skills. Use when user wants to (1) push workspace changes to remote before shutdown, (2) pull latest workspace on a new machine, (3) check sync status between machines, (4) migrate OpenClaw to another machine.
.claude/skills/berabuddies-claw-roam/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 164% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 43% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 14% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 49% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 75% | 0% |
Sync your OpenClaw workspace across machines via Git. This allows you to:
Recommended branch model for multi-device:
main = shared baselineremote = this serverlocal = your laptop/desktopbash# Check status (current branch) claw-roam status # One-command full sync (recommended) claw-roam sync # Or step by step: # Commit+push current branch claw-roam push "msg" # Pull latest for current branch claw-roam pull # (Optional) merge another device branch into current branch claw-roam merge-from local claw-roam merge-from remote
Commit and push workspace to remote Git repository.
bashclaw-roam push [message]
Pull latest workspace from remote and sync.
bashclaw-roam pull
Check sync status between local and remote.
bashclaw-roam status
bashclaw-roam sync
Performs the complete sync workflow in one command:
Workflow diagram:
┌─────────────┐ commit+push ┌─────────────┐
│ local │ ───────────────────▶│ origin/local│
│ 分支 │ │ │
└──────┬──────┘ └─────────────┘
│
│ merge main
▼
┌─────────────┐ merge+push ┌─────────────┐
│ local │ ───────────────────▶│ main │
│ 分支 │ │ (shared) │
└─────────────┘ └──────┬──────┘
│
┌──────────────────────┘
│ pull
▼
┌─────────────┐
│ remote │
│ 分支 │
└─────────────┘Recommended daily workflow:
bash# On each machine, just run: claw-roam sync
This ensures:
bashcd ~/.openclaw/workspace git init git remote add origin <your-repo-url>
bashgit add -A git commit -m "initial" git push -u origin main
bashcd ~ git clone <your-repo-url> openclaw-workspace ln -s openclaw-workspace ~/.openclaw/workspace
For multiple machines, use this branch strategy:
local (Mac) ──┐
├──► main (shared) ◄── merge & push
remote (VPS) ─┘Local Mac:
bashcd ~/.openclaw/workspace git checkout -b local git push -u origin local
Remote VPS:
bashcd ~/.openclaw/workspace git checkout -b remote git push -u origin remote
On each machine:
bashclaw-roam merge-from main
bashclaw-roam push "update memory"
bashgit checkout main git merge local -m "merge: local -> main" git push origin main git checkout local
bash# Pull from main, then push to main claw-roam merge-from main && git checkout main && git merge local && git push && git checkout local
If merge-from main has conflicts:
bash# Keep your version git checkout --ours <conflicted-file> git add -A && git commit -m "merge: resolved conflicts" # Or keep main's version git checkout --theirs <conflicted-file> git add -A && git commit -m "merge: resolved conflicts"
For simpler setups without branches:
Just use OpenClaw normally. Before shutdown:
bashclaw-roam push "end of day sync"
Or let it auto-push via cron:
bash# Add to crontab */10 * * * * cd ~/.openclaw/workspace && git add -A && git commit -m "auto: $(date)" && git push
claw-roam pushclaw-roam pullclaw-roam pushclaw-roam pullSynced (preserved across machines):
SOUL.md - Your agent's personalityMEMORY.md - Long-term memorymemory/*.md - Daily conversation logsskills/ - All installed skillsAGENTS.md, USER.md - Context filesTOOLS.md - Device configurationsHEARTBEAT.md - Periodic tasksNot Synced (machine-specific):
Run setup steps above to initialize Git repository.
If you edited on both machines without syncing:
bash# On the machine with changes you want to keep git pull --strategy=ours git push
Ensure your Git remote is configured with proper authentication (SSH key or token).
Use bundled scripts directly:
bash~/.openclaw/workspace/skills/claw-roam/scripts/claw-roam.sh push ~/.openclaw/workspace/skills/claw-roam/scripts/claw-roam.sh pull ~/.openclaw/workspace/skills/claw-roam/scripts/claw-roam.sh status
Other measured skills in the registry, with their headline benchmark lift.