Privacy

Your words never reach us.

A reply is one of the most private things you write all day. Here’s exactly where your words go when BreatheReply helps you write one — and the two places they never go.

Your message Your device A model you chose your API key · or local (Ollama, LM Studio) Your reply BreatheReply's servers — never on this path

They never reach BreatheReply’s servers

There is no part of our architecture that receives your conversations. We don’t store your messages — not "deleted after 30 days", not "anonymized". They simply never arrive.

They never go anywhere you didn’t point them

You bring your own API key and the app talks directly to that provider. Or run a local model and nothing touches the network at all. The only way out is a path you explicitly chose.

Your key, on this device

Bring your own API key. It’s stored only on this machine — never baked into the installer, never synced to us. The app is just a courier between your conversations and a model you control.

Or run a local model

Run a local model (Ollama, LM Studio, localhost:11434) and zero tokens leave your machine. As private as typing it yourself — minus the hesitation.

What we don't collect

  • Your messages or conversation content
  • Your API keys (stored on-device only)
  • Your contacts, your chat history, your identity
  • Anything uploaded to "improve the model"

Anonymous usage stats are off by default. If you turn them on, we record only the type of action, plus non-identifying details like a rough length band, the scene, or the tone you picked — never your messages. You can switch it off anytime.

Reply calmly. And privately.

Try a real scenario

Using the browser companion extension? Read its privacy policy