← back

the cover artist

Reprise

A fully offline pipeline that fine-tunes a local MLX model on your own iMessage history — with privacy redaction and a human review step — until it texts like you. Everything runs on the Mac; nothing is uploaded anywhere, ever.

Python MLX fine-tuning fully offline iMessage

What if your computer could sing your songs? Reprise learns your texting voice — the phrasing, the languages you mix, the way you actually reply — by fine-tuning a local MLX model on your own Messages history. It's a cover artist trained on the original recordings, and the recordings never leave the studio: the whole pipeline runs offline on one Mac.

Privacy isn't a feature here, it's the architecture. The iMessage pipeline redacts sensitive content and puts a human review step between your history and any dataset. Even the AI coding assistants that work on the repo are barred, by hard rule, from ever reading message content — they only see counts and aggregates.

The workflow is four pieces: a Studio web app where you pick a base model, build a dataset, watch the loss curve, and chat with the result; a dataset pipeline; a one-click Extractor app; and a Relay app that lets the model answer real iMessages — with a floating STOP button, because of course there's a floating STOP button.

highlights

studio

fine-tune in the browser

Pick a model, feed it messages, and train with a live loss chart, sane defaults, and one-click load-and-chat when it's done.

data

iMessage pipeline

Turns your Messages history into a training dataset with redaction, language filtering, and a human review step.

app

Extractor.app

A double-clickable Finder app that refreshes your Messages data in one step — no terminal required.

live

Relay.app

Lets Reprise answer real iMessages for you, with a status panel and a floating STOP button always within reach.

privacy

offline by design

Vendored wheels mean the whole environment reinstalls with zero internet. Nothing is uploaded anywhere, ever.

sanity

probe before you train

A one-minute real training test tells you whether a base model will fine-tune before you commit hours to it.

under the hood