Relationship Companion

Clarity × Thread

A weather report for your texts — not surveillance.
local only

Free · private · no account

Your chat never leaves this device. Free means import a WhatsApp, Telegram or .txt chat export, or try the sample. Everything parses and scores in your browser. No account, no cloud upload of message text — only optional localStorage for the last score snapshot.

How to export a chat

Your file stays on this device. It’s opened and scored right here in your browser and never uploaded anywhere.

WhatsApp on iPhone

  1. Open the chat and tap the person’s name at the top.
  2. Scroll down and tap Export Chat.
  3. Choose Without Media (it’s smaller, and only the text is used).
  4. In the share sheet, tap Save to Files and pick a folder.
  5. Come back here, tap Import a chat and choose the .zip you saved. No need to unzip it.

WhatsApp on Android

  1. Open the chat and tap the three dots (⋮) at the top right.
  2. Tap More, then Export chat.
  3. Choose Without media.
  4. Save the file somewhere you can find it, such as your phone’s files or Google Drive, then pick it here. A .txt or .zip both work.

Telegram

Exporting needs Telegram Desktop, the free computer app from desktop.telegram.org. The Telegram phone apps and the separate “Telegram for macOS” app from the App Store don’t have this export, so use Telegram Desktop.

  1. Open the chat in Telegram Desktop.
  2. Click the three-dot menu at the top right and choose Export chat history.
  3. Uncheck photos, videos and other media. Only the text is needed.
  4. Set the format to Machine-readable JSON, then click Export.
  5. Pick the result.json file here. To use it on your phone, move it over first (for example with AirDrop or iCloud Drive).

Already exported as HTML? That works too: select all the messages.html files at once, or a .zip of the export folder.

Download Mac Live Sync

Download the installer, open the DMG, then double-click Install Relationship Companion. It’s signed with an Apple Developer ID and notarized by Apple, so macOS opens it normally.

Version 1.7: phone connects with a Mac link code + 6-digit code over the encrypted relay (no LAN / Mac.local). Also includes 1.6: live sync from WhatsApp for Mac as well as iMessage — pick the source with the iMessage / WhatsApp toggle in the Mac Live Sync card. Also includes 1.5’s security update: each phone or browser connects to your Mac once with a 6-digit code shown on the Mac, and optional end‑to‑end encrypted access for when you’re away from home (off until you turn it on). Installing over an older version keeps your settings, sharing link and connected devices.

One-time: if chats look empty, macOS needs your permission to read Messages (and WhatsApp, if you use it) — System Settings → Privacy & Security → Full Disk Access → enable /usr/bin/python3. Live iMessage and WhatsApp stay on your Wi‑Fi; nothing uploads unless you turn on the end‑to‑end encrypted live share or away access.

Mac live sync

On the Mac running Live Sync, open http://127.0.0.1:8788, copy the 6-digit Connect code, then tap Connect my Mac and enter it here. Chats sync over an end‑to‑end encrypted relay — no Mac.local address needed.

Connection & away access
Mac Live Sync: use Download Mac Live Sync above (no source zip). After install, phone opens http://<your-mac>.local:8788/ on the same Wi‑Fi — live Messages, no export.
Phone app: On iPhone Safari use Share → Add to Home Screen. On Android Chrome use Install app / Add to Home screen. Works offline after first open.

Imports WhatsApp (.zip or .txt), Telegram Desktop (result.json or HTML) and clean-format .txt (YYYY-MM-DD HH:MM | Name: text). Installable phone app · offline shell · scores stay on-device.

Who is who

Favorability

—
—

Scored as of now; each signal is half absolute, half vs. their own last 4 weeks. Silence counts in real time.

Ball in court & last messages

Plans / next hang

Volume & signals

Advanced signals

Daily Volume

Today’s Warmth — Between You Two

Resets each calendar day. Bars = affection heat that hour; line = cumulative warmth through today.

Weekly Warmth

Timely view — last ~12 weeks of warmth vs volume.

Monthly Warmth

Long timeline — up to 12 months of warmth vs volume.

When they’re most responsive

By day of week

By time of day

Taller = faster replies (log scale of median reply time, relative within each chart); labels show the median. Dashed = only 1 reply sample; grey = activity only. Tap a bar for details.

Interest quotes

Insights

    Coaching blurb

    Methodology

    Heuristic dashboard from observable patterns: 7-day reciprocity, partner warmth keywords, recent 48h activity, plan momentum, reply-speed health, and silence health. Soft language only — never mind-reading. Treat scores as weather for bandwidth and tone.