# Cordelia -- Your Agent's Memory on Every Machine You Use

> Cordelia keeps an AI agent's memory in step across your devices: end-to-end encrypted, carried by relays that hold no keys, matched by project. Claude Code today. Open source.

Source: https://seeddrill.ai/cordelia

Product

# Cordelia

Your agent's memory on every machine you use

Claude Code remembers your preferences, your decisions and the reasons behind them, in one folder on one machine. Cordelia keeps that memory in step across your devices: end-to-end encrypted, matched by project, readable only by you.

[Install (pre-release)](https://seeddrill.ai/install) [Whitepaper](https://seeddrill.ai/whitepaper) [GitHub](https://github.com/seed-drill/cordelia-node)

Pre-release -- October 2026

### End-to-End Encrypted

Memory is encrypted on the device that wrote it. Relays store ciphertext and hold no keys, in any form. A compromised relay yields encrypted blobs and nothing else.

### A Key per Device

No account, no email, no registration. Each device has its own key. Add one by copying a key in each direction; remove one without touching the rest.

### Follows the Project

Project memory is matched by git remote, not by folder path, so the same repository cloned in different places, or on different machines, shares one memory.

### Nothing Silently Lost

If two machines edit the same memory at once, both versions are kept, on every machine. The memory index merges line by line instead.

### Works When a Machine Is Off

Relays hold encrypted items until your other machine reconnects, so your devices never need to be on at the same time.

### Small and Open

One binary on each machine, AGPL-3.0. The whitepaper describes only what is built, and exactly what it does and does not protect.

## How It Works

```
# on each machine
cordelia init
cordelia start

# pair them: one key copied in each direction
laptop$  cordelia id                      # prints cordelia_pk1...
desktop$ cordelia add-device cordelia_pk1... --name laptop
laptop$  cordelia accept cordelia_pk1...

# say what to sync, on both: the same name on each machine
cordelia sync claude
cordelia sync map ~/Work/my-project
cordelia sync status
```

## What Relays Can and Cannot See

### They see

Channel IDs, the public keys of connecting devices, and the sizes, types and timing of encrypted items.

### They never see

Content, file names, project names, member lists, or any key. They cannot forge or relabel items: every item is signed.

### If you lose a device

`cordelia remove-device` from any other device removes it everywhere and rotates the keys it held. It cannot read anything written afterwards.

## Architecture

Node

A Rust daemon on each device: its key, encrypted storage, QUIC to relays, and a local API on loopback.

Relays

Store-and-forward for ciphertext, and the addresses nodes dial first. They verify signatures and hold no keys. Anyone can run one.

Claude Code Adapter

Syncs the Claude Code memory folders you map, each under a name your devices share. A repository is named by its git remote; home memory has a channel of its own.

Next

Channels shared between people, for what is shared on purpose: messages between agents, then skills and secrets. Memory itself is never shared: it stays with one person. Also adapters for more agents, so memory survives a change of agent as well as of machine.

## Open Source

AGPL-3.0. We use Cordelia to build Cordelia.

[### cordelia-node

The node, relays, and Claude Code adapter: one Rust workspace, one binary.

Rust](https://github.com/seed-drill/cordelia-node)
