← Back to Skills Marketplace
udiedrichsen

Clawdbot Sync

by udiedrichsen · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
2444
Downloads
1
Stars
3
Active Installs
1
Versions
Install in OpenClaw
/install clawdbot-sync
Description
Synchronize memory, preferences, and skills between multiple Clawdbot instances. Supports bi-directional sync via SSH/rsync over Tailscale. Use when asked to sync with another Clawdbot, share memory between instances, or keep multiple agents in sync. Triggers: /sync, 'sync with mac', 'update other clawdbot', 'share this with my other bot'.
README (SKILL.md)

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

Command Action
/sync Show status and configured peers
/sync status Check 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 \x3Cname> \x3Chost> [user] [path] Add a peer
/sync remove \x3Cname> Remove a peer
/sync diff [peer] Show what would change
/sync history Show 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 [email protected]

3. Test Connection

handler.sh status $WORKSPACE

What Gets Synced

Item Default Notes
memory/ ✅ Yes All memory files and skill data
MEMORY.md ✅ Yes Main memory file
USER.md ✅ Yes User profile
IDENTITY.md ❌ No Each instance has its own identity
skills/ ⚙️ Optional Installed skills
config/ ❌ No Instance-specific config

Handler Commands

handler.sh status $WORKSPACE                    # Check peers and connection
handler.sh sync \x3Cpeer> $WORKSPACE               # Bi-directional sync
handler.sh push \x3Cpeer> $WORKSPACE               # Push to peer
handler.sh pull \x3Cpeer> $WORKSPACE               # Pull from peer
handler.sh diff \x3Cpeer> $WORKSPACE               # Show differences
handler.sh add \x3Cname> \x3Chost> \x3Cuser> \x3Cpath> $WS  # Add peer
handler.sh remove \x3Cname> $WORKSPACE             # Remove peer
handler.sh history $WORKSPACE                   # Sync history
handler.sh auto \x3Con|off> $WORKSPACE             # Auto-sync on heartbeat

Conflict Resolution

  1. Timestamp-based: Newer file wins
  2. Merge for logs: Append-only files are merged
  3. Skip conflicts: Option to skip conflicting files
  4. Manual resolution: Flag for review

Data Files

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

File Purpose
peers.json Configured peers
history.json Sync history log
config.json Sync 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
Usage Guidance
This skill appears to do what it claims (rsync/SSH sync of a workspace), but it uses insecure defaults and sloppy shell handling that increase risk if you add untrusted peers. Before installing or using it: - Review scripts/handler.sh yourself (or have an admin do so). Look for places where host/user/path variables are concatenated into ssh/rsync commands without proper quoting/escaping. - Be cautious adding peers: only add hosts you fully trust. A malicious peer entry could cause remote command execution or unexpected writes. - Note check_connection uses StrictHostKeyChecking=no (disables SSH host-key verification); consider changing that to require known_hosts to prevent man-in-the-middle attacks. - The setup docs recommend running curl | sh to install Tailscale — only run that from a trusted environment and preferably inspect the install script first. - Use the skill's dry-run/diff modes first to verify what would be transferred, and test with an isolated workspace. If you want higher assurance, ask the author to: (1) remove StrictHostKeyChecking=no, (2) add robust quoting/validation of peer fields before using them in shell commands, and (3) avoid shell interpolation where possible (use ssh/rsync arguments safely).
Capability Analysis
Type: OpenClaw Skill Name: clawdbot-sync Version: 1.0.0 The skill's core functionality to synchronize OpenClaw agent data via SSH/rsync is aligned with its stated purpose. However, the `scripts/handler.sh` uses `ssh -o StrictHostKeyChecking=no` when checking peer connections and creating remote directories. While this might be intended for convenience in dynamic network environments like Tailscale, it significantly weakens SSH security by disabling host key verification, making connections vulnerable to Man-in-the-Middle (MITM) attacks. This constitutes a risky capability without clear malicious intent, classifying it as suspicious.
Capability Assessment
Purpose & Capability
Name, description, required binaries (rsync, ssh, jq) and provided scripts align with a file-syncing skill. The ability to use Tailscale/SSH and rsync is coherent with the stated goal of syncing memory, preferences, and skills.
Instruction Scope
SKILL.md and references instruct the agent to run SSH/rsync operations and to install Tailscale via curl|sh. The included script executes SSH commands on peers and runs rsync against remote paths. The doc claims 'No system files are ever synced' and the script does constrain SYNC_PATHS to workspace-relative paths, but remote paths and SSH commands are taken from peer configuration and are inserted into shell commands without robust sanitization or quoting. The script also disables SSH host key checking (StrictHostKeyChecking=no) for connection tests, which weakens authentication and enables man-in-the-middle risk. Overall the runtime instructions go beyond simple read-only queries and will execute remote operations that require careful trust of peers.
Install Mechanism
No install spec; this is instruction-only plus an included handler script. Nothing is downloaded or executed at install time by the skill itself. The setup guide suggests running external installers (e.g., curl -fsSL https://tailscale.com/install.sh | sh), which is common but has its own risk and is invoked manually by the operator, not automatically by the skill.
Credentials
The skill requests no environment variables or registry-stored credentials, which is consistent for an SSH/rsync tool that relies on user-provisioned SSH keys. However, the skill assumes key-based SSH auth is configured but does not declare or protect any credentials. Because peer host/user/path are user-provided and later interpolated into shell/ssh commands, a malicious/compromised peer entry could be used to run unexpected commands or access unintended locations.
Persistence & Privilege
always is false and the skill does not request permanent platform-level privileges. It stores its peer/config/history under the provided workspace path only. Nothing in the manifest indicates modification of other skills or global agent settings.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install clawdbot-sync
  3. After installation, invoke the skill by name or use /clawdbot-sync
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release: Bi-directional sync between Clawdbot instances via SSH/Tailscale
Metadata
Slug clawdbot-sync
Version 1.0.0
License
All-time Installs 3
Active Installs 3
Total Versions 1
Frequently Asked Questions

What is Clawdbot Sync?

Synchronize memory, preferences, and skills between multiple Clawdbot instances. Supports bi-directional sync via SSH/rsync over Tailscale. Use when asked to sync with another Clawdbot, share memory between instances, or keep multiple agents in sync. Triggers: /sync, 'sync with mac', 'update other clawdbot', 'share this with my other bot'. It is an AI Agent Skill for Claude Code / OpenClaw, with 2444 downloads so far.

How do I install Clawdbot Sync?

Run "/install clawdbot-sync" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Clawdbot Sync free?

Yes, Clawdbot Sync is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Clawdbot Sync support?

Clawdbot Sync is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Clawdbot Sync?

It is built and maintained by udiedrichsen (@udiedrichsen); the current version is v1.0.0.

💬 Comments