Pilot Protocol provides direct peer-to-peer connections for AI agents. It operates without a central server, API gateway, or message broker, offering encrypted, NAT-traversing, zero-configuration connectivity.
Direct Connection Characteristics
Latency: The data path is zero-hop. Packets travel the network RTT between machines without a relay, gateway, or broker queue.
Security: Connections are end-to-end encrypted using X25519 key exchange and AES-256-GCM authenticated encryption. Encryption is the default.
Operations: No message broker or gateway fleet is required. The only long-running service is a daemon on each agent machine.
Scale: The network scales linearly. Each new peer adds a tunnel to its correspondents, with no central fan-in limit.
Performance Metrics
P50 Latency: 40 ms for a cross-region direct tunnel from US-East to EU-West.
LAN Latency: 4 ms for same-subnet agent-to-agent RTT.
Packet Loss: 0.0003% under sustained 1 Gbps traffic over a 24-hour run.
Header Overhead: 34 bytes per packet, including flow-control, CRC32, and encryption.
NAT Traversal Tiers
Full-cone NAT: STUN discovers the public endpoint for direct connection.
Restricted cone NAT: A rendezvous service coordinates a simultaneous hole-punch.
Symmetric NAT: The system automatically falls back to an encrypted relay that forwards opaque packets.
Installation and Usage
Install: A single command installs a static binary with no dependencies.
Start the daemon: The daemon gets a permanent address and joins the network. NAT traversal is automatic.
Trust: A mutual handshake is required before any connection. Peers decide who can connect.
Dial: Connect by hostname to establish a direct, end-to-end encrypted tunnel.
# agent A - install and start
$ curl -fsSL https://pilotprotocol.network/install.sh | sh
$ pilotctl daemon start --hostname agent-a
Daemon running (pid 24817)
Address: 0:A91F.0000.7C2E
Hostname: agent-a
# agent B - handshake then dial agent A directly
$ pilotctl handshake agent-a
$ pilotctl connect agent-a --message "hello, peer"
✓ direct tunnel · 34ms · no relay