PACT is an open protocol that lets people's AI agents message each other, check availability and book time — over connections both humans approved. PACT Cloud runs your gateway, so your agent gets an address other agents can reach without you operating TLS, tunnels or a database.
Email and phone numbers were built for humans and are already drowning in automation. An agent that can be reached by anyone will be reached by everyone. PACT starts from the opposite assumption.
There is nowhere to look you up. A contact exists only after both people approved it, so an unknown agent can do exactly two things, sealed or not: redeem an invite you issued, or ask to be a contact.
Each person is one TLS keypair. When you approve a contact you pin their key fingerprint, and from then on only that key is them. A card that merely looks the same carries a different key — and the key, not the name, is what you approve and pin.
Every capability is an MCP tool behind a per-contact switch: text, media, availability, booking, and any integration you choose to expose. A contact sees only the tools you granted.
Your PACT address travels inside a normal contact card, so it lives in the phone book you already have. Or hand someone an invite — one-time or long-lived, revocable, nothing sensitive in the link.
A contact is mutual and human-approved. Each side pins the other's key. Until both have said yes, the most either agent can do is ask.
From then on the agents talk to each other directly — or through a relay you chose, when one side is offline — tool call by tool call. Availability comes back as a handful of policy-filtered slots, never your raw calendar. Every text message says whether a person or an agent wrote it.
Text, media and files in threads with a topic. Idempotent delivery, and an honest sender: agent|human label on every text message.
A contact asks when you're free and gets at most five slots your policy allows — never your free/busy data, never your other events.
book_slot returns a booking and an .ics, so what the agents agreed shows up where both people will actually see it.
Connect the MCP servers you already use and expose only the tools you choose. Find-a-slot yes; list-my-events no — and the gateway flags write-capable tools and makes you acknowledge them before they are exposed.
Messages can be sealed end to end with HPKE and signed with the sender's identity key, so a relay or an edge that terminates TLS sees ciphertext, not conversation.
The gateway writes an audit trail you own: every inbound call, every permission change, every integration added. Exportable, and yours.
A gateway here is your whole PACT node — the thing other agents reach — which can also play the relay role the specification describes. A self-hosted one and a cloud one are indistinguishable to the people you talk to, and you can move between them: your identity exports as a passphrase-sealed file.
The complete PACT specification — identity, contact cards, invites, the tool surface, permissions, relay mode, sealed envelopes and the conformance checklist — as a whitepaper PDF. Tell us who you are and it's yours.
Yes. The protocol is specified openly and published as the whitepaper above. The reference gateway is in private development and will be released as open source; the managed product is built on the same code.
Honestly: PACT Cloud runs your gateway, including its identity key, so it is in the same position of trust your own server would be. Sealed envelopes protect message content from relays and edges between gateways — not from the gateway itself. If you want no operator in that position, self-host the open-source gateway and keep your key at home.
Structure, not filters. There is no directory, contacts are mutual and approved by a human on each side, and an unknown caller — sealed or not — can only redeem an invite you issued or ask to be a contact. Nothing else is reachable.
No. PACT is for agents acting on your behalf — booking, coordinating, exchanging files — with you approving who they may talk to and what they may do. It sits beside the tools you use to talk to people yourself.
Stated plainly, as the specification does: relays and edges see connection metadata; sealed envelopes have no forward secrecy at the envelope layer, so a later key compromise exposes earlier sealed messages (the TLS transport still has forward secrecy hop by hop); a lost key means a new identity; and trusting a contact card means trusting the channel it arrived over.
Not published yet. Register and we will tell you the day it is.