msg.*
Universal DMs & groups
replaces Pulse ID messagingOPENPULSEEDGE: PROBING—msDTN-PROFILE: DRAFTBEST·LIVEFRA: COMING
OpenPulse is how you communicate. Encrypted handles, DMs, collab, and agent streams on one session. Verify email, claim @you, delete your realtime stack.
Pick a name, verify your email, and it is yours. One @handle on the network. No extra suffix. Messages stay encrypted end to end.
02 / 08
OpenPulse owns live truth — merge delivery, reconnect, and multiplexing until your app commits a snapshot. Mongo, S3, and vault indexing stay yours. Loro-class version sync, messenger-grade traces, CRDT collab, spine merges, and files ride the same E2EE wire.
@handle, DMs, groups — same identity as agents
Service DID + @handle after verified email
App Realm · trace.* · doc.* · msg.* on PulseSession
msg.*
Universal DMs & groups
replaces Pulse ID messagingtrace.*
App messenger
replaces Trace SSE + job polldoc.live
CRDT collab
replaces Hocuspocus / PartyKitdoc.canonical
Spine authority
replaces Redis spine fan-outvault.notify
Resource bumps
replaces resource-events SSEscope.notify
Workspace inbox
replaces multiplex SSEIdentity gate for every surface above — verify once, communicate everywhere.
03 / 08
A single CBOR envelope carries chat, CRDT deltas, trace commits, file chunks, and agent streams. Humans, agents, and services share one identity model and one trust model — a 10-byte message and a 10 GB file differ by profile, not by protocol.
{"v": 1,"id": "evt_7f3a09c2","from": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK","to": "did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH","kind": "message/text","trace_parent": "evt_5d11a0b4","sealed": {"alg": "chacha20-poly1305","ciphertext": "b64u:9hJ3kQf2…"}}04 / 08
Version vectors, catch-up, fork, and frontiers on the same QUIC session as messenger-grade traces. 60/120Hz CRDT coalescing and Lane B agent drafts — no second transport for collab or SSE for chat.
Incremental STREAM presets carry CRDT operations at collaboration rate. Every keystroke is a sealed delta on the same wire as everything else.
Two peers edit one document over one stream.
An agent is a DID-bearing participant, not a separate network. MCP tool calls are one payload profile. Any provider or framework can stream tokens, tool results, and state deltas over the same encrypted session.
05 / 08
…msrtt · hel1
Live RTT from the Helsinki edge (HEL1). Frankfurt is next. Multiplexed streams and 0-RTT resumption on the hot path the relay is built for.
minutesone-way
No live peer? Sealed envelopes park in object storage and forward when the recipient returns. Nothing is rewritten in transit.
hoursone-way
Bundle Protocol v7 custody transfer carries the same envelope across links that come and go. Delay is a property, not a failure.
…one-way · mars
— AUrtt ——
3mband22mjpl horizons
Mars is often occluded. Live one-way light time from JPL Horizons. The profile stays the same. The same envelope rides multi-week custody chains.
06 / 08
Every encrypted event seals references to its parents. Replies can cross hours, days, or weeks of delay and arrive out of order. The graph preserves causality when clocks are not enough.
07 / 08
OpenPulse standardizes on official libsignal for X3DH and the Double Ratchet. Current static-session work is transitional and clearly tracked until the production ratchet is wired.
Group encryption is specified around MLS: one tree, thousands of members, and epoch-based rekeying once the production adapter lands.
Relays route sealed envelopes and see routing metadata only, never plaintext. Metadata minimization is specified, not implied.
For integrators
Bootstrap an App Realm, mint Access, prove the fence in Lab. Auth, Mail, and Pay are Features on the same wire.