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 forreply-to
Roadmap
| Milestone | Target |
|---|---|
| Wire schema published | ✅ |
| Go reference runtime | in progress |
| Per-performative dispatch helpers | in progress |
| Cross-language interop tests | once Go reference stabilizes |
Track progress on zap-proto/acp.
Related
- A2A over ZAP — task-oriented alternative
- MCP over ZAP — for agent ↔ tool calls
- Native ZAP RPC