Install Cordelia

Keep Claude Code's memory in step across your machines, end-to-end encrypted. Cordelia runs as a small background service on each machine.

Pre-release

v0.2.0-alpha.3 is the current pre-release (October 2026), and two relays are running. It is an alpha: expect rough edges, and keep your own copy of anything you cannot afford to lose.

1a. Install

curl -fsSL https://seeddrill.ai/install.sh | CORDELIA_VERSION=v0.2.0-alpha.3 sh

macOS (Apple silicon and Intel) and Linux (x86_64 and arm64). The script checks the download's checksum, installs cordelia to ~/.cordelia/bin, sets it up as a background service (launchd or systemd), and runs cordelia init. Pre-releases are installed only when pinned, as above. Running it again upgrades.

1b. Or build from source

git clone https://github.com/seed-drill/cordelia-node.git
cd cordelia-node
cargo build --release          # Rust toolchain pinned in rust-toolchain.toml
./target/release/cordelia init
./target/release/cordelia start

2. Pair your machines

One key copied in each direction, so each machine has been told by you which key is the other's.

laptop$  cordelia id
         # prints cordelia_pk1...
desktop$ cordelia add-device cordelia_pk1... --name laptop
         # On the other device, run: cordelia accept cordelia_pk1...
laptop$  cordelia accept cordelia_pk1...

3. Say what to sync

On each machine, turn sync on and map the folders you want. Nothing syncs until you map it.

cordelia sync claude                  # on: lists what it found, syncs nothing yet
cordelia sync map ~/Work/my-project   # a git project, named by its remote
cordelia sync map ~/notes lab-notes   # any other folder, under a name you choose
cordelia sync map ~ --home            # home memory
cordelia sync status                  # what syncs, what was found, what your other devices sync

The name is what your devices share: map the same name on each machine and Claude's memory for it stays in step. A git project is named by its remote, so the same clone at different paths needs no name. A machine that has never mapped a name holds neither its memory nor its key.

To sync everything Claude Code has memory for instead (home memory and every git project found), use cordelia sync claude --all.

4. See it at a glance

Claude Code. Add a status line to ~/.claude/settings.json. It shows ● memory synced, ◐ memory sending 3, or ▲ memory: 1 conflict.

{ "statusLine": { "type": "command", "command": "~/.cordelia/bin/cordelia status --line" } }

Omarchy. The Cordelia panel puts an icon in the bar that says whether memory is in step, and opens a panel to turn sync on and off, choose what syncs, pair devices and open conflicts.

omarchy plugin add https://github.com/seed-drill/omarchy-cordelia.git --enable

For Waybar and other bars, cordelia status --waybar prints an icon, a tooltip and a state class as JSON. For scripts and agents, cordelia status --json has everything.

Everyday commands

Command What it does
cordelia statusThis device, its relays and whether memory is in step
cordelia sync statusWhat syncs, what was found, and what your other devices sync
cordelia sync unmap <folder or name>Stop syncing a folder from this machine; its files stay
cordelia devicesList your devices
cordelia invitesInvites waiting for accept
cordelia remove-device <key>Remove a lost or old device everywhere, and rotate the keys it held
cordelia sync offStop syncing; files already synced stay where they are

Relays

Your node connects to these by default. They store and forward ciphertext only, and hold no keys.

Relay Address Status
relay1 relay1.cordelia.seeddrill.ai:9474 Running
relay2 relay2.cordelia.seeddrill.ai:9474 Running

QUIC over UDP port 9474. Your node only dials out and opens no listening port, so it works behind home routers and firewalls, and nothing on a network you join can connect to it.

What stays on your machine

Your device key and your channels' keys live in ~/.cordelia, readable only by you, and never leave the machine. Claude Code's memory files stay plain files on your disk, exactly as they are without Cordelia. Keep that disk as safe as you would keep the memory itself.