Skip to main content

Module mobile

Module mobile 

Source
Expand description

Wire protocol for the MUR mobile app ↔ Mac daemon WebSocket endpoint.

Shared by mur-mobile-sdk (the phone client) and mur-daemon (the Mac endpoint) so both ends agree on the framing. Every message is one JSON object sent as a WebSocket text frame. The first client frame is a ClientFrame::Hello pairing handshake; once the server replies ServerFrame::Paired, application traffic is carried as Ed25519-signed SignedEnvelopes whose payload is the canonical JSON of an A2A JsonRpcRequest — the same crypto MUR uses for agent↔agent bridge traffic.

P3 adds a voice streaming path: the phone streams raw 16 kHz mono f32 PCM chunks, the Mac runs whisper.cpp for an authoritative transcript, then replies with Kokoro TTS audio chunks.

Design: docs/superpowers/specs/2026-06-05-mur-voice-mobile-app-design.md.

Enums§

ClientFrame
Frames the phone sends to the Mac endpoint.
ServerFrame
Frames the Mac endpoint sends back to the phone.

Constants§

MOBILE_WS_PATH
WebSocket path the daemon’s mobile endpoint serves.