ZAP Protocol
Protocols

ACP over ZAP

Agent Communication Protocol — FIPA-style speech acts. Schema published, runtime in progress.

ACP over ZAP

Status — spec-only, January 2026. The wire schema is published; the Go runtime hasn't shipped. Generate types from the schema via any SDK — the encoded bytes are stable.

zap-proto/acp is a modern take on FIPA ACL (Agent Communication Language): performative-typed messages between agents (inform, request, query, propose, accept-proposal, refuse, …), each signed under the sender's PQ identity. The receiver gets a non-repudiable record of what was said.

Why FIPA performatives

RPC says "call this method." ACP says "this is the kind of speech act I'm performing" — receivers can reason about intent and disposition. A refuse is a different signal than a 500 error; for multi-agent coordination (negotiation, consensus, voting) the type system maps better than method dispatch.

Schema

Published at zap-proto/acp/schema/zap_acp.zap. Covers:

  • Message — performative, sender, receiver, content, ontology, signature
  • Performative enum: inform, request, query, propose, accept-proposal, refuse, agree, cancel, failure, confirm, disconfirm, …
  • Conversation — message thread with parent references for reply-to

Roadmap

MilestoneTarget
Wire schema published
Go reference runtimein progress
Per-performative dispatch helpersin progress
Cross-language interop testsonce Go reference stabilizes

Track progress on zap-proto/acp.

On this page