Cloudflare + ElevenLabs

Your local agents, on your phone

Give your phone a live viewport into Claude Code, GPT, or any agent running on your machine. API keys stay local. Everything streams through an encrypted relay.

View on GitHub
9:41
live
Session
Claude Code
~/dev/amplink

Add error handling to the WebSocket relay

Done. Added reconnect with exponential backoff and graceful shutdown.

Listening...
Ask anything...
encrypted
voice
realtime

Built with

Your phone becomes the viewport.

One app on your phone connects to any number of AI agents running on your desktop. Voice in, voice out, fully encrypted.

Voice First

Talk to your agents naturally. ElevenLabs handles speech synthesis with low-latency streaming. Speak, listen, iterate.

End-to-End Encrypted

Noise Protocol XX handshake with X25519, AES-256-GCM, SHA-256. The relay forwards opaque bytes it can never read.

Realtime Streaming

Agent responses stream block-by-block as they generate. See text, reasoning, actions, and file changes live on your phone.

Multi-Agent

Connect to Claude Code, GPT via OpenAI-compat, Codex, or any custom adapter. One phone, as many agents as you need.

Zero Credentials

API keys and tokens stay on your desktop. The bridge runs locally. Amplink is a viewport, never a credential store.

Cloudflare Edge

Relay runs on Cloudflare Durable Objects. Globally distributed, low-latency, with D1 for session persistence.

Three hops. Full encryption.

Your voice goes from phone to relay to bridge — each hop encrypted, the relay zero-knowledge.

1

Start the desktop stack

Run the bridge and desktop listener on your machine. It spawns adapters for each agent you configure — Claude Code, OpenAI-compat, or your own.

bun run desktop:up
2

Scan the QR code

The bridge prints a QR code with the relay URL and session key. Scan it with the iOS app to pair. Noise XX handshake completes in milliseconds.

Handshake

  • X25519 key exchange over Noise XX
  • AES-256-GCM for all session traffic
  • Relay sees only opaque ciphertext
  • Session keys rotated per connection
3

Talk to your agents

Voice or text, your prompts flow to the bridge. Responses stream back as blocks — text, reasoning, tool calls, file edits — rendered live on your phone.

"Add tests for the relay module"
Phone voice + text
Relay Cloudflare edge
Bridge your machine
session claude-code-01
adapter claude-code
encryption noise-xx / aes-256-gcm
voice elevenlabs streaming

Your agents. Your voice. Your machine.

Amplink is a viewport, not a platform. It never touches your API keys, never stores your conversations, and the relay can't read your data.