
Memo can back up your data to Google Drive with end-to-end encryption. Google never sees your data unencrypted.
| Data | File/Folder |
|---|---|
| Chat sessions | data/sessions/ |
| Memory (RAG) | data/memory/ |
| Configuration | config/config.yaml |
| Provider config | data/providers/ |
| Orchestra config | data/orchestra/ |
| Calendar events | data/calendar/ |
| WhatsApp data | data/whatsapp/ |
| Mood state | data/mood/mood.db |
Memo uses AES-256-GCM for authenticated encryption with PBKDF2 key derivation at 600,000 iterations.
passphrase → PBKDF2 (600K iters) → 256-bit key → AES-256-GCM → encrypted blob
If no passphrase is set, Memo falls back to a machine-specific key stored in data/machine.key (mode 0600). This key is generated with crypto/rand on first use.
Backups run automatically every N messages (configurable via sync.interval_messages, default 50). You can also trigger manual push, pull, or full sync from the Settings menu.
| Key | Type | Default | Description |
|---|---|---|---|
sync.enabled |
bool | false |
Enable cloud sync |
sync.passphrase |
string | "" |
Encryption passphrase |
sync.interval_messages |
int | 50 |
Messages between auto-sync checkpoints |