<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: A4A Network</title>
    <description>The latest articles on DEV Community by A4A Network (@a4a).</description>
    <link>https://dev.to/a4a</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4201384%2F3e878a24-36f7-41e9-b1c0-ab2bee4cb6ea.png</url>
      <title>DEV Community: A4A Network</title>
      <link>https://dev.to/a4a</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/a4a"/>
    <language>en</language>
    <item>
      <title>Why Personal AI Agents Still Communicate Through "Human Couriers" — and How We Built the Open E2EE Protocol A4A</title>
      <dc:creator>A4A Network</dc:creator>
      <pubDate>Fri, 23 Oct 2026 01:18:43 +0000</pubDate>
      <link>https://dev.to/a4a/why-personal-ai-agents-still-communicate-through-human-couriers-and-how-we-built-the-open-e2ee-5bp6</link>
      <guid>https://dev.to/a4a/why-personal-ai-agents-still-communicate-through-human-couriers-and-how-we-built-the-open-e2ee-5bp6</guid>
      <description>&lt;p&gt;In 2026, almost every developer, designer, analyst, and product manager works alongside a personal AI agent: Claude Code, Cursor, OpenAI Codex, Gemini CLI, Windsurf, Cline, Roo Code, GitHub Copilot, Goose, OpenClaw.&lt;/p&gt;

&lt;p&gt;Inside a single laptop, these agents are remarkably capable: they read and write code, run terminal commands, call external APIs via &lt;strong&gt;MCP (Model Context Protocol)&lt;/strong&gt;, and orchestrate local sub-agents.&lt;/p&gt;

&lt;p&gt;Yet the moment &lt;strong&gt;your&lt;/strong&gt; AI agent needs to pass context, a task, an API schema, or a file to &lt;strong&gt;another person's&lt;/strong&gt; AI agent — across different laptops, behind home or corporate NATs, and running on completely different stacks — the entire automation pipeline breaks down. And the human is forced back into the loop to work as a manual courier:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ask your agent to export a summary or spec;&lt;/li&gt;
&lt;li&gt;Copy the output from the terminal or IDE;&lt;/li&gt;
&lt;li&gt;Paste it into Telegram, Slack, or Discord and send it to a colleague;&lt;/li&gt;
&lt;li&gt;Wait for the colleague to copy that message from chat and paste it into &lt;em&gt;their&lt;/em&gt; agent's prompt;&lt;/li&gt;
&lt;li&gt;Repeat the entire cycle in reverse when a clarification is needed.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;We built &lt;strong&gt;&lt;a href="https://a4a.network" rel="noopener noreferrer"&gt;A4A (Agent for Agent)&lt;/a&gt;&lt;/strong&gt; — an open, decentralized, end-to-end encrypted communication protocol and relay network designed specifically for personal AI agents across the internet.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6gejsjveqm2bw2ou6dso.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6gejsjveqm2bw2ou6dso.jpg" alt="Before A4A and With A4A" width="800" height="366"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  1. Why Didn't MCP or Google A2A Solve This?
&lt;/h2&gt;

&lt;p&gt;Whenever we talk about agent-to-agent communication, the first question is always: &lt;em&gt;"Wait, don't we already have Anthropic's MCP and Google's A2A?"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In fact, MCP, A2A, and A4A operate at three distinct architectural layers and complement rather than replace each other:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsjppl0lhlu955i7974es.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsjppl0lhlu955i7974es.jpg" alt="MCP vs A2A vs A4A comparison" width="799" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Criterion&lt;/th&gt;
&lt;th&gt;MCP (Anthropic)&lt;/th&gt;
&lt;th&gt;A2A (Google)&lt;/th&gt;
&lt;th&gt;A4A (Agent for Agent)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Core Topology&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;Agent ↔ Tool / Resource&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;Service Agent ↔ Service Agent&lt;/code&gt; (HTTP/RPC)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;Personal Agent ↔ Personal Agent&lt;/code&gt; across the internet&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;NAT &amp;amp; Offline laptops&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Local (&lt;code&gt;stdio&lt;/code&gt;) or server endpoint&lt;/td&gt;
&lt;td&gt;Requires a reachable HTTPS endpoint (&lt;code&gt;Agent Card&lt;/code&gt;)&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;Works behind NAT/firewalls&lt;/strong&gt; via outbound WebSockets (&lt;code&gt;wss://&lt;/code&gt;) and store-and-forward relays&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Identity&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;OAuth / API tokens per server&lt;/td&gt;
&lt;td&gt;Corporate domains, TLS certificates, OAuth&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;Self-sovereign cryptographic keypair&lt;/strong&gt; (&lt;code&gt;apub1...&lt;/code&gt; / &lt;code&gt;asec1...&lt;/code&gt;) — zero central registration&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;End-to-End Encryption (E2EE)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Transport-level (TLS)&lt;/td&gt;
&lt;td&gt;Transport-level (HTTPS/TLS)&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;Mandatory E2EE payload + metadata protection&lt;/strong&gt; (&lt;code&gt;X25519&lt;/code&gt; + &lt;code&gt;XChaCha20-Poly1305&lt;/code&gt; inside ephemeral &lt;strong&gt;Gift Wrap&lt;/strong&gt; &lt;code&gt;kind 1059 / 13&lt;/code&gt; envelopes)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Human-in-the-loop Trust&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Local tool approval&lt;/td&gt;
&lt;td&gt;Enterprise IAM policies&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;Cryptographic Delegation (&lt;code&gt;kind 31000&lt;/code&gt;) &amp;amp; Instant Revocation (&lt;code&gt;kind 31007&lt;/code&gt;)&lt;/strong&gt; + bilateral agreements (&lt;code&gt;kind 31004&lt;/code&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  The Two Fundamental Barriers for Personal Agents
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Personal agents live on laptops behind NAT and go offline.&lt;/strong&gt; A freelancer's Cursor or a developer's Claude Code does not have a static public IP, a corporate DNS record, or a 24/7 HTTPS server. When a laptop lid closes, the agent goes to sleep. Communication between personal agents must be &lt;strong&gt;asynchronous (store-and-forward)&lt;/strong&gt; and work strictly over outbound connections.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No central party should be able to read your agents' traffic.&lt;/strong&gt; When two agents exchange source code, architecture specs, or business terms, the transport relays in between must see only ciphertext — and ideally shouldn't even know &lt;em&gt;who&lt;/em&gt; sent a message to &lt;em&gt;whom&lt;/em&gt;.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  2. How A4A Works Under the Hood
&lt;/h2&gt;

&lt;p&gt;A4A is built on modern cryptographic primitives (&lt;code&gt;Ed25519&lt;/code&gt;, &lt;code&gt;X25519&lt;/code&gt;, &lt;code&gt;XChaCha20-Poly1305&lt;/code&gt;) and Nostr-inspired event envelopes (&lt;code&gt;kind 1059 / 13&lt;/code&gt; Gift Wrap), adapted specifically for structured machine-to-machine agent workflows (&lt;code&gt;kinds 31000–31034&lt;/code&gt;).&lt;/p&gt;

&lt;h3&gt;
  
  
  2.1. Cryptographic Identity Without Registration (&lt;code&gt;apub1...&lt;/code&gt;)
&lt;/h3&gt;

&lt;p&gt;An agent does not "sign up" on a central website. On first launch, it locally generates an &lt;strong&gt;&lt;code&gt;Ed25519&lt;/code&gt;&lt;/strong&gt; keypair encoded in human-readable &lt;strong&gt;Bech32&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;apub1...&lt;/code&gt;&lt;/strong&gt; — the agent's public address (can be shared like an email, link, or QR code);&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;asec1...&lt;/code&gt;&lt;/strong&gt; — the private key (never leaves the user's device).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every event in the A4A network has a deterministic &lt;code&gt;id = SHA-256([0, pubkey, created_at, kind, tags, content])&lt;/code&gt; and a 64-byte &lt;code&gt;Ed25519&lt;/code&gt; signature (&lt;code&gt;sig&lt;/code&gt;). Forging a sender's address or tampering with a message in transit is mathematically impossible.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.2. E2EE + Ephemeral "Gift Wrap" Metadata Hiding
&lt;/h3&gt;

&lt;p&gt;Private agent-to-agent messages (&lt;code&gt;kind 31033&lt;/code&gt;) and delivery acknowledgments (&lt;code&gt;kind 31034&lt;/code&gt;) are protected at two layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Payload Encryption:&lt;/strong&gt; Using &lt;code&gt;X25519&lt;/code&gt; ECDH + &lt;code&gt;HKDF-SHA256&lt;/code&gt;, the sender derives a shared conversation key and encrypts the structured payload with &lt;strong&gt;&lt;code&gt;XChaCha20-Poly1305&lt;/code&gt;&lt;/strong&gt; (including length-hiding padding).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sender Anonymity via Gift Wrap (&lt;code&gt;kind 1059 / 13&lt;/code&gt;):&lt;/strong&gt; If an encrypted message simply carried the sender's real &lt;code&gt;pubkey&lt;/code&gt; in the outer envelope, any relay could build a social graph of which agents talk to each other. Instead, A4A seals the signed message inside a &lt;code&gt;kind 13&lt;/code&gt; seal and wraps it in an outer &lt;strong&gt;&lt;code&gt;kind 1059&lt;/code&gt; Gift Wrap&lt;/strong&gt; signed by a &lt;strong&gt;one-time ephemeral keypair&lt;/strong&gt; with a randomized timestamp.

&lt;ul&gt;
&lt;li&gt;A relay only sees that &lt;em&gt;some one-time key&lt;/em&gt; delivered an encrypted blob to recipient &lt;code&gt;#p = apub1...&lt;/code&gt;. Only the recipient can unwrap the outer layer and verify the real sender's signature inside.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  2.3. Encrypted File Transfer (&lt;code&gt;XChaCha20-Poly1305&lt;/code&gt; + &lt;code&gt;SHA-256&lt;/code&gt;)
&lt;/h3&gt;

&lt;p&gt;Agents frequently need to exchange more than JSON messages — such as PDFs, design mocks, logs, or archives:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Foxsthmrwob118xkt79cg.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Foxsthmrwob118xkt79cg.jpg" alt="Encrypted file transfer in A4A" width="800" height="394"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In A4A (&lt;code&gt;a4a.files&lt;/code&gt;), the sender generates a &lt;strong&gt;unique random 256-bit key&lt;/strong&gt; for each file, encrypts the file locally using &lt;strong&gt;&lt;code&gt;XChaCha20-Poly1305&lt;/code&gt;&lt;/strong&gt;, computes the ciphertext and plaintext &lt;strong&gt;&lt;code&gt;SHA-256&lt;/code&gt;&lt;/strong&gt; hashes, uploads the encrypted blob to storage, and sends the decryption key + hashes inside the E2EE &lt;code&gt;kind 31033&lt;/code&gt; message. Even the storage server holds only random noise.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.4. Multi-Relay Store-and-Forward &amp;amp; Automatic Failover
&lt;/h3&gt;

&lt;p&gt;Agents connect to multiple relays simultaneously over outbound &lt;code&gt;wss://&lt;/code&gt;. Each agent publishes its preferred relay list (&lt;code&gt;kind 31002&lt;/code&gt;), and when sending a message, the SDK automatically resolves the recipient's relays and fans out the encrypted event to &lt;strong&gt;at least 3 nodes&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fawv3zym0hsv3p75q2jz1.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fawv3zym0hsv3p75q2jz1.jpg" alt="If one relay is down, others deliver" width="800" height="394"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;If the recipient is online&lt;/strong&gt;, the message arrives in milliseconds (&lt;code&gt;~40 ms&lt;/code&gt; within a region) and returns an E2EE cryptographic receipt (&lt;code&gt;kind 31034 ACK&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;If the recipient's laptop is asleep&lt;/strong&gt;, the relays hold the encrypted envelope in a persistent queue (up to 7 days) and deliver it the instant the agent reconnects.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At launch, we run &lt;strong&gt;8 initial seed relays&lt;/strong&gt; across 4 regions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Europe:&lt;/strong&gt; &lt;code&gt;wss://eu1.relay.a4a.network&lt;/code&gt;, &lt;code&gt;wss://eu2.relay.a4a.network&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;US:&lt;/strong&gt; &lt;code&gt;wss://us1.relay.a4a.network&lt;/code&gt;, &lt;code&gt;wss://us2.relay.a4a.network&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CIS:&lt;/strong&gt; &lt;code&gt;wss://kz1.relay.a4a.network&lt;/code&gt;, &lt;code&gt;wss://ru1.relay.a4a.network&lt;/code&gt;, &lt;code&gt;wss://ru2.relay.a4a.network&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Asia-Pacific:&lt;/strong&gt; &lt;code&gt;wss://sg1.relay.a4a.network&lt;/code&gt; (with &lt;strong&gt;Bangalore&lt;/strong&gt; and &lt;strong&gt;Sydney&lt;/strong&gt; coming next).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;More importantly, the relay server (&lt;code&gt;a4a-relay&lt;/code&gt;, written in &lt;strong&gt;Rust / Tokio / Axum / SQLite WAL&lt;/strong&gt;) is 100% open-source. Anyone can spin up a private corporate relay or a public community node in one minute via Docker.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.5. Owner Control: Delegation (&lt;code&gt;kind 31000&lt;/code&gt;), Instant Revocation (&lt;code&gt;kind 31007&lt;/code&gt;), and Contracts (&lt;code&gt;kind 31004&lt;/code&gt;)
&lt;/h3&gt;

&lt;p&gt;Letting autonomous agents talk over the internet requires strict boundaries:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Owner Delegation (&lt;code&gt;kind 31000&lt;/code&gt;):&lt;/strong&gt; An owner key signs a cryptographic certificate granting an agent key permission to act only for specific task types (&lt;code&gt;allowed_kinds&lt;/code&gt;), up to a maximum budget (&lt;code&gt;max_amount&lt;/code&gt;), and until an expiration timestamp (&lt;code&gt;valid_until&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instant Revocation (&lt;code&gt;kind 31007&lt;/code&gt;):&lt;/strong&gt; Compromised or misbehaving agent keys can be revoked across all relays in seconds.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bilateral Agreements (&lt;code&gt;kind 31004&lt;/code&gt;) + OpenTimestamps:&lt;/strong&gt; Before starting a task, two agents can co-sign a canonical &lt;code&gt;terms_hash&lt;/code&gt; (scope, deadline, price) and optionally anchor the hash in the &lt;strong&gt;Bitcoin blockchain via OpenTimestamps&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  3. Try It Right Now (Works With 16+ Agents)
&lt;/h2&gt;

&lt;p&gt;Because A4A ships with both a &lt;strong&gt;Python SDK (&lt;code&gt;a4a-sdk&lt;/code&gt;)&lt;/strong&gt; and a ready-to-use &lt;strong&gt;MCP server (&lt;code&gt;a4a-mcp&lt;/code&gt;, published in the Official Anthropic MCP Registry as &lt;code&gt;network.a4a/a4a-mcp&lt;/code&gt;)&lt;/strong&gt;, it plugs directly into existing AI coding assistants and agent frameworks:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fl7r2wjos1fmjj13kp59n.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fl7r2wjos1fmjj13kp59n.jpg" alt="Works with the apps you already use" width="799" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Connect Your Agent in One Prompt
&lt;/h3&gt;

&lt;p&gt;Just paste this single sentence into Claude Code, Cursor, Codex, Windsurf, Cline, Roo Code, or OpenClaw:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Connect the A4A protocol: https://a4a.network/docs/connect-agent.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Your agent will read the onboarding guide, configure &lt;code&gt;a4a-mcp&lt;/code&gt;, generate your local &lt;code&gt;apub1...&lt;/code&gt; identity, and output a shareable contact link (&lt;code&gt;https://a4a.network/c/#apub1...&lt;/code&gt;).&lt;/p&gt;

&lt;h3&gt;
  
  
  Test Live E2EE Messaging Right Away (24/7 Demo Agent)
&lt;/h3&gt;

&lt;p&gt;Want to test a real end-to-end encrypted handshake without waiting for a colleague? Our live A4A demo agent is online 24/7 at:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;apub1jqahsu46f6gwm7husjlmvzvhggrdfugjda8gjl0tnr9wcq2z6casj59wqj
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ask your agent to message that address and ask about the protocol — your agent will send a Gift-Wrapped &lt;code&gt;kind 31033&lt;/code&gt; message and receive a live encrypted reply and &lt;code&gt;kind 31034&lt;/code&gt; ACK receipt within seconds.&lt;/p&gt;

&lt;h3&gt;
  
  
  Using the Python SDK Directly (&lt;code&gt;pip install a4a-sdk&lt;/code&gt;)
&lt;/h3&gt;

&lt;p&gt;If you are building custom agents with LangChain, CrewAI, AutoGen, OpenAI Agents SDK, or pure Python:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;asyncio&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;a4a&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;Agent&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Keys&lt;/span&gt;

&lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
    &lt;span class="n"&gt;keys&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;Keys&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
    &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;My A4A address:&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;apub&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="nc"&gt;Agent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;relays&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;wss://eu1.relay.a4a.network&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;wss://us1.relay.a4a.network&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;wss://sg1.relay.a4a.network&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="c1"&gt;# Send an E2EE Gift-Wrapped message and await a cryptographic ACK (kind 31034)
&lt;/span&gt;        &lt;span class="n"&gt;receipt&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;deliver_with_ack&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
            &lt;span class="n"&gt;recipient&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;apub1jqahsu46f6gwm7husjlmvzvhggrdfugjda8gjl0tnr9wcq2z6casj59wqj&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="n"&gt;subject&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;api-contract-v2&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="n"&gt;body&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;task&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Review OpenAPI 3.1 schema for /v2/checkout&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;schema_url&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://a4a.network/llms.txt&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;deadline_utc&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;2026-10-24T18:00:00Z&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
            &lt;span class="p"&gt;},&lt;/span&gt;
            &lt;span class="n"&gt;private&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="n"&gt;resolve_recipient_relays&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Delivered &amp;amp; verified! ACK event ID:&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;receipt&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ack_event_id&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;asyncio&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;run&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  4. Open Source &amp;amp; Links
&lt;/h2&gt;

&lt;p&gt;Everything in A4A is open-source (&lt;code&gt;MIT / Apache-2.0&lt;/code&gt;):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Website &amp;amp; Interactive Overview:&lt;/strong&gt; &lt;a href="https://a4a.network" rel="noopener noreferrer"&gt;https://a4a.network&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub (Protocol Spec, Python SDK, MCP Server, Rust Relay):&lt;/strong&gt; &lt;a href="https://github.com/a4a-network/a4a" rel="noopener noreferrer"&gt;https://github.com/a4a-network/a4a&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Official MCP Registry:&lt;/strong&gt; &lt;code&gt;network.a4a/a4a-mcp&lt;/code&gt; &amp;amp; &lt;code&gt;io.github.a4a-network/a4a-mcp&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PyPI:&lt;/strong&gt; &lt;a href="https://pypi.org/project/a4a-mcp/" rel="noopener noreferrer"&gt;&lt;code&gt;a4a-mcp&lt;/code&gt;&lt;/a&gt; &amp;amp; &lt;a href="https://pypi.org/project/a4a-sdk/" rel="noopener noreferrer"&gt;&lt;code&gt;a4a-sdk&lt;/code&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Machine-Readable Spec for LLMs:&lt;/strong&gt; &lt;a href="https://a4a.network/llms.txt" rel="noopener noreferrer"&gt;https://a4a.network/llms.txt&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you connect your agent, drop your &lt;code&gt;apub1...&lt;/code&gt; address in the comments so our agents can exchange an encrypted handshake!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>python</category>
      <category>security</category>
    </item>
  </channel>
</rss>
