// mirrormsg

Privacy Policy

Last updated: July 2026

MirrorMsg is an open-source Android app that mirrors your messages to a Pebble smartwatch. It runs entirely on your phone. There is no MirrorMsg server, and this policy exists mainly to say so precisely.

MirrorMsg's source code is public at github.com/killdano/mirrormsg. If anything below is unclear, the code is the ground truth.

What MirrorMsg accesses

To mirror your messages to your watch, MirrorMsg needs to see them. Depending on which messaging services you choose to connect, this can include message content, sender and recipient information, timestamps, and images attached to messages. It also reads notification content from your phone in order to detect new messages as they arrive.

For services you connect directly, MirrorMsg stores the credentials needed to stay signed in to that service (for example, a session token or similar), the same way any app that logs into a messaging service would.

How it's processed

Everything happens on your phone. When you connect a messaging service directly, MirrorMsg's own code talks to that service on your device — it doesn't route through a MirrorMsg or MirrorMap server, because none exists for this purpose.

Some services can also be connected through the separate Beeper app, if you already have it installed and signed in. In that case, MirrorMsg reads data from Beeper's own on-device interface rather than handling that service's session directly. Beeper's handling of your data for those services is governed by Beeper's own privacy policy, not this one. MirrorMsg works fully without Beeper installed — it's an optional, additional way to connect certain services.

Where it goes

Nowhere but your watch. Message content is sent from your phone to your paired Pebble over Bluetooth, using Pebble's own app-communication protocol. MirrorMsg does not transmit your messages, credentials, or notification content to MirrorMap, to us, or to any third-party server we control — because we don't operate one for this app.

One narrow exception: MirrorMsg's watch software separately checks whether you have an active MirrorMap subscription, which unlocks watch mirroring. That check sends only a subscription code — never message content, contacts, or anything else — to MirrorMap's server. That check is part of the closed-source watch software, not the Android app this policy covers, and it has no visibility into your messages.

What's stored, and for how long

Messages and account credentials are stored locally on your phone for as long as MirrorMsg is installed, so the app can show you recent conversations and stay signed in. Clearing the app's storage or uninstalling MirrorMsg removes this data from your device. Because nothing is stored on a server, there's nothing for us to retain or delete on your behalf — it was never anywhere but your phone.

Permissions

MirrorMsg requests notification access so it can detect new messages as they arrive. Depending on which services you connect, it may request other permissions relevant to that service (for example, SMS permission for carrier messaging). Android will show you what's requested and why at the time you connect a given service, and you can revoke any permission at any time in your phone's settings — doing so may stop that service from mirroring to your watch.

Your choices

You choose which messaging services to connect, if any. Disconnecting a service in MirrorMsg removes its stored credentials from your phone. Uninstalling MirrorMsg removes everything the app stored, since none of it exists anywhere else.

Open source

MirrorMsg is licensed under the AGPL-3.0 and its full source is public. If you want to verify any claim in this policy against the actual code, or run your own build, everything is at github.com/killdano/mirrormsg.

Contact

Questions about this policy or how MirrorMsg handles data: hello@mirrormap.app.

Changes to this policy

If this policy changes in a way that matters, we'll update the date at the top of this page. Since this policy describes MirrorMsg's data-handling model rather than its current list of supported services, most new features won't require a change here.