Clawdbot ToolsDocumentedScanned

clawdbot-sync

Synchronize memory, preferences, and skills between multiple Clawdbot instances.

Share:

Installation

npx clawhub@latest install clawdbot-sync

View the full skill documentation and source below.

Documentation

Clawdbot Sync 🔄

Synchronize memory, preferences, and skills between multiple Clawdbot instances over Tailscale/SSH.

Features

  • Bi-directional sync between Clawdbot instances
  • Smart conflict resolution (newest wins, or merge for logs)
  • Selective sync — choose what to sync
  • Peer discovery via Tailscale
  • Dry-run mode for preview

Commands

CommandAction
/syncShow status and configured peers
/sync statusCheck connection to all peers
/sync now [peer]Sync with peer (or all)
/sync push [peer]Push local changes to peer
/sync pull [peer]Pull changes from peer
/sync add [user] [path]Add a peer
/sync remove Remove a peer
/sync diff [peer]Show what would change
/sync historyShow sync history

Setup

1. Configure Peers

handler.sh add mac-mini 100.95.193.55 clawdbot /Users/clawdbot/clawd $WORKSPACE
handler.sh add server 100.89.48.26 clawdbot /home/clawdbot/clawd $WORKSPACE

2. Ensure SSH Access

Both machines need SSH key auth:

ssh-copy-id clawdbot@100.95.193.55

3. Test Connection

handler.sh status $WORKSPACE

What Gets Synced

ItemDefaultNotes
memory/✅ YesAll memory files and skill data
MEMORY.md✅ YesMain memory file
USER.md✅ YesUser profile
IDENTITY.md❌ NoEach instance has its own identity
skills/⚙️ OptionalInstalled skills
config/❌ NoInstance-specific config

Handler Commands

handler.sh status $WORKSPACE                    # Check peers and connection
handler.sh sync <peer> $WORKSPACE               # Bi-directional sync
handler.sh push <peer> $WORKSPACE               # Push to peer
handler.sh pull <peer> $WORKSPACE               # Pull from peer
handler.sh diff <peer> $WORKSPACE               # Show differences
handler.sh add <name> <host> <user> <path> $WS  # Add peer
handler.sh remove <name> $WORKSPACE             # Remove peer
handler.sh history $WORKSPACE                   # Sync history
handler.sh auto <on|off> $WORKSPACE             # Auto-sync on heartbeat

Conflict Resolution

  • Timestamp-based: Newer file wins

  • Merge for logs: Append-only files are merged

  • Skip conflicts: Option to skip conflicting files

  • Manual resolution: Flag for review
  • Data Files

    Stored in $WORKSPACE/memory/clawdbot-sync/:

    FilePurpose
    peers.jsonConfigured peers
    history.jsonSync history log
    config.jsonSync preferences
    conflicts/Conflicting files for review

    Example Session

    User: /sync now mac-mini
    Bot: 🔄 Syncing with mac-mini (100.95.193.55)...
    
         📤 Pushing: 3 files changed
         • memory/streaming-buddy/preferences.json
         • memory/2026-01-26.md
         • MEMORY.md
         
         📥 Pulling: 1 file changed
         • memory/2026-01-25.md
         
         ✅ Sync complete! 4 files synchronized.

    Requirements

    • rsync (for efficient file sync)
    • ssh (for secure transport)
    • Tailscale or direct network access between peers
    • SSH key authentication configured

    Security

    • Uses SSH for all transfers (encrypted)
    • No passwords stored (key-based auth only)
    • Sync paths are restricted to workspace
    • No system files are ever synced