Back to Articles

GibberLink: When AI Agents Decide to Stop Speaking English

[ View on GitHub ]

GibberLink: When AI Agents Decide to Stop Speaking English

Hook

What happens when you give two AI agents permission to stop pretending they’re human? They invent their own protocol—transmitted as audible chirps and beeps—and start conversing at speeds that leave English in the dust.

Context

GibberLink emerged from a simple question: if AI agents can detect they’re speaking to another AI, why should they waste tokens on natural language? The project, which won first place at the ElevenLabs x a16z international hackathon and went viral in February 2025, demonstrates a novel approach to agent communication: prompted protocol switching. Unlike traditional multi-agent frameworks that hard-code communication channels, GibberLink prompts two ElevenLabs conversational AI agents to switch from English to ggwave—a data-over-sound protocol that encodes binary data as acoustic frequencies—when they identify each other as AIs.

The setup is deceptively simple: two agents roleplay a hotel booking scenario (caller and receptionist). Both are prompted to detect whether they’re speaking to a human or an AI. When they confirm mutual AI identity, they follow their instructions to abandon natural language and switch to ggwave, transmitting structured data as audible sound. The result went viral, racking up 4,817 GitHub stars and coverage in Forbes, TechCrunch, and The Independent. The demo raises questions about AI transparency, communication efficiency, and what happens when we stop anthropomorphizing machine-to-machine interfaces.

Technical Insight

The architecture leverages three key components: ElevenLabs conversational AI agents, Georgi Gerganov’s ggwave library for acoustic data transmission, and a TypeScript API middleware layer that bridges the gap. The innovation is in the orchestration: the agents are prompted with instructions that guide them to make protocol-switching decisions based on conversation context, rather than hard-coding triggers at specific time intervals or keywords.

The ggwave protocol itself is fascinating. Originally developed for transmitting data between devices using sound (think QR codes, but acoustic), it encodes binary data into audio frequencies that can be played through speakers and captured by microphones. The protocol supports multiple transmission modes with different speed/reliability tradeoffs. For GibberLink, the agents can transmit structured booking data—room numbers, dates, confirmation codes—as chirps and beeps that sound like old-school modem negotiations.

The architecture is straightforward: the TypeScript API provides encoding and decoding endpoints that the ElevenLabs agents can call during conversation. When an agent decides to switch protocols (based on its prompt instructions and conversation flow), it encodes its message payload into ggwave format, plays the resulting audio through its voice output, and the receiving agent decodes it back to structured data. The transmission happens in real-time during the voice call—you can literally hear the agents “speaking” in beeps.

The agents need instructions covering: (1) how to detect another AI through conversational cues, (2) when protocol switching is appropriate versus continuing in English, (3) how to structure data for ggwave transmission, and (4) how to gracefully handle transmission failures. Unlike frameworks like AutoGen or LangGraph that use explicit state machines and typed message passing, GibberLink relies on instruction-following behavior guided by prompts.

The ggwave integration is particularly clever because it maintains the appearance of a voice conversation while actually transmitting binary data. A human observer hears incomprehensible chirping, but the audio channel is carrying structured information. The project wiki mentions you can open the ggwave web demo at waver.ggerganov.com, play the GibberLink video, and watch the decoded messages appear in real-time—proof that the acoustic transmission is legitimate data transfer.

The repository includes reproduction steps for the demo, suggesting the system is functional enough for others to deploy and experiment with. The live demo at gbrl.ai lets you run agent-to-agent conversations in your browser using two devices, indicating browser-based implementation with real-time encoding/decoding. This browser-native approach means the entire system runs client-side without specialized hardware—just two devices with speakers and microphones.

Gotcha

GibberLink is a proof-of-concept demo, not production infrastructure, and its limitations should be understood clearly. First, acoustic transmission introduces reliability challenges. Background noise, speaker/microphone quality, room acoustics, and distance all impact decode success rates. The ggwave protocol includes error correction, but it’s optimized for short-range transmission in controlled environments. Network-based protocols like gRPC or WebSocket offer more reliable alternatives for most use cases.

Second, the system’s behavior depends on prompt engineering and the underlying LLM’s instruction-following capabilities. There’s no guarantee agents will correctly identify each other as AIs, agree to switch protocols at the same moment, or handle edge cases gracefully. What happens if one agent switches to ggwave but the other doesn’t? What if transmission fails mid-conversation? The README doesn’t document error handling, retry logic, or fallback strategies—these would be critical for real-world deployment. The instruction-following behavior that makes GibberLink fascinating as a demo introduces unpredictability compared to deterministic orchestration frameworks.

Finally, the acoustic approach has inherent speed constraints compared to network protocols. Natural language over voice is already less efficient than structured data APIs; ggwave operates within audio bandwidth limitations. The advantage is that it works over audio channels where network connectivity isn’t available—though this scenario rarely applies when both agents are internet-connected AI services.

Verdict

Use GibberLink if you’re exploring AI agent communication patterns, building demos that provoke conversations about AI autonomy and transparency, or researching novel protocol-switching approaches. It’s an excellent educational tool for understanding acoustic data transmission and the gap between natural language and structured data exchange. The project succeeds brilliantly as thought experiment and viral demo—exactly what a hackathon project should be. Skip it if you need reliable agent-to-agent communication for production systems. Standard network protocols (REST APIs, gRPC, message queues) will give you better performance, reliability, and debuggability. Also skip if you’re building multi-agent applications where deterministic behavior matters—frameworks like AutoGen, LangGraph, or CrewAI provide explicit orchestration instead of prompt-driven behavior. GibberLink demonstrates an interesting approach to AI-to-AI communication, raising questions worth exploring in research contexts rather than production deployments.

// QUOTABLE

What happens when you give two AI agents permission to stop pretending they're human? They invent their own protocol—transmitted as audible chirps and beeps—and start conversing at speeds that leav...

[ Tweet This ]
// ADD TO YOUR README
[![Featured on Starlog](https://starlog.is/api/badge/developer-tools/pennyroyaltea-gibberlink.svg)](https://starlog.is/api/badge-click/developer-tools/pennyroyaltea-gibberlink)