Control AI agents
from anywhere
Access Claude Code, Aider, Copilot, and Gemini from your phone via secure terminal mirroring. The relay only forwards encrypted blobs — it never sees plaintext.
How it works
One brew install, one command, one QR scan. No account required when self-hosting.
Start your AI agent
Run farwatch start claude on your dev machine. Works with Claude Code, Aider, Copilot, Gemini, or any CLI tool.
Scan the QR code
The CLI generates an ephemeral X25519 keypair and displays a QR code. Scan it or type the pairing code.
Control from anywhere
Send prompts, approve tool calls, dictate with voice. See structured agent output or raw terminal — your choice.
What Farwatch
actually does
Encrypted terminal mirroring with a structured agent UI on top. Open-source relay, native mobile apps.
E2E Encrypted
X25519 key exchange with AES-256-GCM encryption. Your terminal data is encrypted before it ever leaves your machine.
Works with any CLI AI
Claude Code, Aider, GitHub Copilot CLI, Gemini CLI, or any terminal-based AI tool. If it runs in a terminal, Farwatch mirrors it.
Speech-to-code
ProDictate prompts using on-device speech-to-text. Useful when you're away from your desk or just don't want to type on a phone.
Structured agent UI
ProNative cards for thinking blocks, tool calls, permission requests, and cost tracking. Not just raw terminal bytes.
Cross-platform
iOS, Android, and web. Three clients, same encrypted protocol, same features.
Self-hostable relay
The relay server is MIT-licensed. Run it on your own box if you don't want to use ours.
Zero-knowledge architecture
The relay server never sees your unencrypted data. It only passes encrypted frames between your devices.
Low latency
WebSocket relay with sub-100ms round trips. Terminal output streams frame-by-frame over MessagePack.
Control your AI agents
from anywhere
Install the CLI, start a session, scan the QR code.