Skip to content

Features

Zoen is a messenger first. Everything else — pages, agents, mini-apps — lives inside a conversation, so nothing needs a second inbox.

Each feature below carries a status so you always know what’s real:

Badge Meaning
Built Implemented in the shared core and/or clients on main, with tests or recorded journeys.
In progress Partly implemented; completion gates are still open (see the roadmap).
Planned Designed or decided, not implemented yet.

The everyday core: talk to one person, a group or a whole community.

Capability Status Notes
Direct messages and groups, end-to-end encrypted by default Built OpenMLS; the relay stores ciphertext only (encryption).
Communities In progress Conversation and permission foundations exist; discovery, moderation and reporting are open. Communities are moderated and relay-readable by design (ADR 0027).
Unified Chats list with optional filters Built Direct chats, groups and communities share one list (Apple; web shell follows the same hierarchy).
Offline-first sending Built A durable outbox survives restarts and reconnects (ADR 0004).
Replies and quotes Built An inline reply stays in the timeline and quotes the original.
Delivery/read receipts and reactions Built One reaction per person per message; receipts only move forward (review).
Search, edit and delete Built Scoped search with stable paging; edits and deletes are signed events (review).
Typing and presence Built Ephemeral — forwarded, never stored (ADR 0005).
Encrypted profiles and chat backgrounds Built Names, bios and photos are sealed (ADR 0016).
Linked devices with history Built Phone and computer share one account and its history (ADR 0045); browser pairing is in progress.
Encrypted backup with a recovery key Built (development) Production recovery authority still open (ADR 0046).
Photos and voice messages In progress Encrypted blob transport exists; native photo/voice delivery is open.
Push notifications In progress Contract and seams exist; APNs/FCM delivery is open (push).
Voice/video calls and live Planned Listed for a later phase in the plan.

Under the hood, every conversation is a Space: a signed, append-only log with members, items and permissions. People never see the word — they see a chat. Spaces are what make every feature consistent: a message, a page edit, a vote in a poll and an agent’s approval request are all signed events in the same log (ADR 0014).

  • Owned and ordered by the relay per Space (ADR 0018, ADR 0023).
  • Readable only by members when end-to-end (the default for direct chats and new groups).
  • Resources stay inside the conversation: community permissions, shared files, pages and mini-apps belong to the Space.

Reply to a message in a thread to keep side discussions out of the main timeline. Built in the core and the Apple apps.

  • A thread hangs under one root message; the root shows its reply count.
  • Threads are one level deep: replying to a thread reply points back at the root.
  • Opening a thread shows the root followed by its replies, oldest first.

Documents that people and agents keep up to date together, inside the chat (ADR 0041, contract).

Capability Status
Block document (headings, paragraphs, tasks, lists…) on Loro, Markdown in and out Built
Encrypted drafts, retries and signed versions; restore an older version as a new one Built
Plans — a page with typed rows, costs in exact cents and a budget, shown as a card in chat In progress (canonical writer and approvals migration open)
Full block editing UX, comments, nested pages, live bindings, two-device convergence Planned
Agent-maintained sections Planned

Agents are first-class members of Zoen — not a bot bolted onto a chat.

Capability Status
Own encrypted identity and device, profile and avatar Built (runtime base in zoen-agentd)
Owner authorization: an agent can only register with its owner’s signed consent Built (ADR 0049)
Shareable agent link with a public page (/a/CODE), revocable, with expiry and use limits Built
Creator agent: describe an agent in conversation, approve it, and it exists Built (prompt-driven; owner approval required)
Durable approval cards: “Your agent needs you” before replies or actions Built in the core (ADR 0048)
Owner notes (“New booking”, “Booking cancelled”) Built
Sandboxed tools: WASM, microVMs and browsers in microVMs In progress (ADR 0028)
Production model execution, managed custody and billing In progress — deliberately closed until certified

See Agents runtime & sandboxes for how it works.

Small apps that open inside a conversation, with shared state everyone sees live. Zoen is an MCP Apps host (mini-apps).

Mini-apps on main today:

Mini-app What it does
Agenda (schedule) Booking for any business: services, prices, weekly hours, free slots. Clients see busy times only, never other clients’ names.
Saturday hike (hike) Three trails with maps and photos; vote, compare, then the agent plans the day.
Poll and Group list Vote on options; a shared “what to bring” list.
Group pet, MapTap, Dinner A group pet with a mini-game, a turn-based geography game, a shared recipe with live servings.

Remote MCP servers, a public catalog and the Store are planned.

Capability Status
Apple: glass surfaces for cards and buttons (custom shader on main) Built
Apple: system Liquid Glass Built — merged to main in PR #124
Android: Material 3 with Jetpack Compose, adaptive navigation (bar, rail, two panes) Built — a fuller native Material pass is in review
Chat backgrounds: colours, gradients, doodles and encrypted photos Built
A sky background that follows the person’s local time of day (dawn, day, sunset, night) In progress — implemented for iOS/macOS, Android and the web app in PR #127 (ui/living-sky), not yet on main; evidence there is standalone previews, and the Android checks have not run. The docs site already uses real time-lapse footage of the sky for the same four phases; the app is expected to move to the same footage.
Hand-drawn, animated mascot and illustrations; Reduce Motion respected Built
Plain language everywhere — no technical jargon in the interface Product rule