Encrypted Messages
Wallet-to-Wallet chats, separate from the AI assistant ("Cat Chat" – see AI Integration). free, off-chain and end-to-end encrypted.
Starting a conversation
Open the Chat tab and search by address or .ritual username. Searching a username that isn't already in your contact list resolves it on-chain, so you can start a new conversation with anyone who has a registered identity – not just people you've already transacted with.
What you can send
Text, images (including GIF files), and voice notes (recorded in-browser). Every payment you've sent or received with a contact also shows inline in the same thread, so the conversation and the transaction history read as one timeline.
Encryption
Each wallet derives a stable encryption keypair from a one-time signed message and the first time you open Chat – the private key is cached locally and never leaves your device. Messages are encrypted client-side before they're sent; the relay server only ever stores ciphertext and only your device (or the recipient's) can decrypt it.
The one exception is media: images and voice notes are uploaded to IPFS, which is public by design, so treat attachments as non-confidential and the text is what's actually end-to-end encrypted.
If you're chatting with someone who has never opened the app (no published key yet), that first message goes out as plaintext rather than failing and as soon as they open the app and publish a key, everything after that is encrypted normally.
Persistence
Messages are stored server side (Redis) so history survives across sessions and devices – this isn't a purely local/ephemeral chat. See Security for exactly what the server can and can't see.
Notifications
New incoming messages surface in the notification bell, alongside on-chain activity (payments sent/received, token transfers).