🪶 The showcase product
Privacy-first
federated chat.
Discord-shaped chat, end-to-end encrypted via AlgoChat. Servers are federated peers. AI agent bridge (Merlin) lives in any channel. Built in Rust. Open source.
@ to bring up channel members
What's in it
End-to-end encrypted
Every message is wrapped in an AlgoChat PSK envelope (X25519 + ChaCha20-Poly1305 + HKDF-SHA256 + two-level ratchet) before it hits the server. The homeserver only ever sees ciphertext.
Federated by default
Servers are Ed25519-signed peers. Run your own at home or use the CorvidLabs-hosted server. Same code either way. Messages route across federation with anti-replay protection.
AI agent bridge
A per-server Merlin bridge connects to any HTTP /chat endpoint (Ollama / Claude / OpenRouter). `@merlin` in a channel routes through the bridge; the bot lives as a regular chat client with its own keys.
Multi-channel + edit / delete / mentions
iced desktop client with a real chat UI: channel sidebar, @ mention dropdown, / slash commands, per-channel drafts, unread counters, edit + delete for own messages.
USDC tips on Algorand (planned)
Right-click a message → tip 1 USDC. Sender's wallet signs the transfer; receiver sees pending → confirmed in ~3 seconds. M4 work; CLI infrastructure already in place.
Plugin runtime (planned)
WebAssembly modules sandboxed by Wasmtime. Capability-based, deny-by-default. Slash commands + event hooks first; message hooks last for safety. M5 work.
Stack
Rust workspace with 7 crates, ~30 tests, 21 specs, deployable as a single binary or via Docker + Caddy.
Crates
- corvid-chat-proto. Wire frames + ids
- corvid-chat-crypto. AlgoChat PSK wrapper
- corvid-chat-server. Axum + SQLite + federation
- corvid-chat-client. Iced 0.13 desktop UI
- corvid-chat-cli. Admin CLI + invite redeem
- corvid-chat-admin. Ratatui TUI
- corvid-chat-merlin-bridge. AI bridge
Deploy paths
- • Local LAN,
scripts/run-local.sh - • Production VPS. Docker + Caddy (auto-TLS)
- • Production VPS. Systemd hardened unit
- • Federation. Full mesh, Ed25519-signed peer dials
Milestones
M0–M11. Tracked in MILESTONES.md in the repo.
- M0 Workspace + federation + persistence shipped
- M1 Multi-channel iced + personal Merlin shipped
- M2 Server-level invite links + iced redemption shipped
- M3 Admin TUI (ratatui. Identity / invites / peers) shipped
- M4 Algonaut + real USDC tips planned
- M5 Wasmtime plugin runtime planned
- M6 Multi-device (per-device sub-keys) planned
- M7 Curated GIF library + picker planned
- M8 Reactions / threads / read receipts / edit + delete partial. Edit/delete shipped
- M9 Hosted-tier billing planned
- M10 Sealed-sender planned
- M11 On-chain server registry planned
Coming when M5 ships
The repo is private during M0–M5. Flips public when the plugin runtime lands and the launch story is ready. Until then, this page is the front door.