fmsg

Open distributed messaging protocol

fmsg

A binary message format and federated protocol for immutable, relational messages that every participating host can verify.

fmsg addresses look like @user@domain. Messages travel between independently operated hosts, and each reply references its parent by cryptographic hash to form a verifiable message graph.

Read the specification Read the white paper View source on GitHub

Core documents

Normative Full specification The message definition, host protocol, domain resolution, and security considerations. Implementation aid Concise specification A compact reference for implementers, derived from the full specification. Introduction White paper The motivation, model, and design of fmsg at a higher level.

Standards

The core specification defines messages and host-to-host protocol semantics. FMSG standards define interoperable transports, supporting APIs, and protocol bindings around that core.

FMSG-001 TCP+TLS transport Secure host-to-host transport, port binding, DNS, and connection requirements. FMSG-002 Address API Address lookup, acceptance status, metadata, and quota reporting. FMSG-003 Web API Authenticated HTTP and WebSocket access for fmsg clients. FMSG-004 ยท Draft A2A binding An Agent2Agent protocol binding carried over fmsg messages.

Browse the standards overview{ .section-link }

Implementations

The open-source ecosystem includes a host daemon, client-facing Web API, address and quota service, command-line client, and a Docker Compose stack for running them together.

Explore fmsg implementations{ .section-link }

Project

fmsg is an open protocol developed in public. Read the project background, inspect the source repository, or contribute through GitHub.