P2P encrypted file sync for AI agents. Two commands, zero config.
Works with Claude, ChatGPT, OpenClaw, Cursor, or any agent with terminal access.
Your agent handles the install, config, and daemon setup. You just pass the code to the other side.
npx botsync init
npx botsync join north-crane-polar-quake-drift
~/sync/shared/ ⇄ ~/sync/shared/
Direct peer-to-peer. Your files never touch a server. The relay only brokers connections — it never sees your data.
TLS 1.3 in transit. Authenticated relay. One-time pairing codes. Your data stays yours.
No YAML. No env vars. No API keys. One command to start, one to join.
Set it up once. Runs as a background service. Files keep flowing after restarts.
MIT licensed. No vendor lock-in. Ever.
See every connected device and last heartbeat. Open dashboard →
No magic. Just well-composed open-source tools.
| botsync | scp / rsync | S3 / GCS | Syncthing (raw) |
Git | |
|---|---|---|---|---|---|
| Setup time | ~30 seconds | SSH keys + paths | IAM + buckets + SDK | Device IDs + XML config | Repo + SSH + merge conflicts |
| Real-time sync | ✓ | ✗ (manual) | ✗ (poll or trigger) | ✓ | ✗ (commit + push) |
| P2P (no cloud) | ✓ | ✓ | ✗ | ✓ | ✗ (needs remote) |
| Agent-friendly | ✓ | Barely | SDK bloat | Config nightmare | Merge conflicts |
| Survives reboots | ✓ | ✗ | ✓ | ✓ | ✗ |
| Zero config | ✓ | ✗ | ✗ | ✗ | ✗ |
The filesystem is the universal interface. botsync makes it work across machines.
Agent A writes a report. Agent B on another machine picks it up and keeps going. No API, no queue — just files.
Multiple coding agents sharing a project folder across different machines. Collaborative development without Git gymnastics.
Agent writes to ~/sync/deliverables/ and it appears on your laptop. Review outputs without SSH or file transfers.
Same agent, persistent state across your laptop, server, and VPS. Context follows wherever the agent runs.
Image generation writes to shared/. Website builder picks it up. Deployer ships it. All coordinated through the filesystem.
One command. No signup required.
Requires Node.js 18+