ThreadKeep app icon // macOS · iMessage archiver · public beta

Keep every thread.

ThreadKeep pulls your iMessage history out of a database you can't see and into a library you own — browsable, fully searchable, and stored on your Mac. The conversations that would otherwise quietly disappear.

Free public beta · no subscription · no account

macOS 14 Sonoma+ · Apple silicon & Intel · works fully offline (optional update check) · 1.0 beta 9 · 4 MB

ThreadKeep main window — conversation list, an open thread, and live search across messages
// 01 — Why

Years of messages, one failed backup away from gone.

Your most important conversations live inside Messages — a format you don't control and can't easily read, search, or keep. A new phone, a skipped backup, an OS update, and they're gone. ThreadKeep makes a real copy: every conversation imported into a clean, searchable library of plain records on your own machine. No cloud account. No monthly fee. No one else holding your history. Just messages you can actually find, read, and keep for as long as you want them.

// 02 — What it does

Built to find, read, and keep.

Feature 01 — Search

Search across every thread

Type a name, a date, a link — even a single word — and ThreadKeep searches every conversation at once, then jumps you straight to the match. It finds tapbacks and reactions too, so a moment you remember but can't quite place is one search away.

FULL-TEXTCROSS-THREAD
Searching for the word love returns six results across three conversations, with the matching message highlighted
Feature 02 — Export

Export a clean, lasting archive

Turn any thread into a paginated, print-ready document with every timestamp intact. Save it as a PDF, file it, or print it — a record that outlives any phone, account, or platform change.

PDF EXPORTPRINT-READY
An exported, paginated transcript with message bubbles and timestamps, footed ThreadKeep local archive
Feature 03 — Privacy

Local-first, by design

Your messages and imported archive stay on your Mac. ThreadKeep has no account and collects nothing — there's no telemetry to opt out of. ThreadKeep does not use the network while importing, searching, reading, or exporting your archive. It connects only when you explicitly check for updates or submit the in-app support form. Exports happen only when you ask. Using contact names is optional, and you can change it later.

ON-DEVICENO ACCOUNT
ThreadKeep onboarding screen explaining the library stays on your Mac and exports happen only when you choose
Feature 04 — Setup

A guided, one-time import

Setup takes about a minute. The import then runs on its own, and how long it takes depends on how much message history you have.

ONE-TIME IMPORTSELECTIVE
The Add Conversations sheet guiding the user through importing messages
// 03 — Free beta

Free while it's in beta.

Free
Public beta · no subscription · no account
  • The full app — nothing gated
  • Developer ID signed & notarized by Apple
  • Unlimited conversations and exports
  • 100% local — no account, no telemetry, updates opt-in
  • One download per person — please don't re-share the installer
  • ThreadKeep 1.0 will be a one-time purchase, with no subscription. Pricing will be announced before the beta becomes a paid release.

Direct download

Download ThreadKeep-1.0b9.dmg · 4 MB
sha-256 b994be1fe0cb714708d0b44c433eb38a81643889ef881424df2fe3dc59028288 macOS 14+ · Universal · signed & notarized

New in beta 9 — send your entire library (or a single conversation) to ThreadKeep for iPhone over Wi-Fi: pair with a 4-digit code shown on your Mac, watch live progress, done. Plus a clearer welcome screen and a QR code to grab the iPhone app.

Before you start — ThreadKeep is beta software and may still have rough edges. It reads from a temporary copy of your Messages database and never changes the original. Keep your usual backups while you test.

Beta feedback — hit a bug or have a note? Use the contact form, or choose Help → Contact Support in the app. Include the build number shown under ThreadKeep → About ThreadKeep. Describe what happened in words, and never attach your Messages database, a full conversation export, or screenshots that reveal private messages, names, phone numbers, or other personal information.

Your download is for you. Please do not re-host or share the .dmg; send others to threadkeep.xyz instead.

QR code for ThreadKeep for iPhone
ThreadKeep for iPhone Point your iPhone's camera at the code to get the companion app — then send your whole library from Mac to phone over Wi-Fi. Or visit threadkeep.xyz/iphone.
// 04 — Installation

Start in a few guided steps.

Download ThreadKeep-1.0b9.dmg above — no email, no license key, no account.

Open the disk image

Double-click ThreadKeep-1.0b9.dmg, then drag ThreadKeep into your Applications folder.

Launch it

Open ThreadKeep from Applications. It's signed and notarized by Apple, so it opens normally. If macOS ever hesitates, right-click the app and choose Open once.

Grant Full Disk Access

macOS keeps the Messages database in a protected area, and the permission required to reach it is called Full Disk Access. Open System Settings → Privacy & Security → Full Disk Access, turn on ThreadKeep, then reopen the app. ThreadKeep uses this permission only to read your Messages database. It works from a temporary copy, never changes the original, and never uploads your messages or imported archive.

Import your messages

Choose what to bring in — everything, or only the conversations you want. The import starts right away and continues on its own. How long it takes depends on the size of your message history.

// 05 — Tech specs

The details.

platform
macOS 14 Sonoma or later
architecture
Universal — Apple silicon & Intel
download_size
~4 MB
distribution
Signed & notarized .dmg
built_with
Swift & SwiftUI, native
source_data
Messages on this Mac (read-only)
permissions
Full Disk Access — used only to read the Messages database from a temporary local copy
export_formats
PDF · paginated transcript
privacy
100% on-device · no account · no telemetry
network_use
Opt-in update check only — fetches appcast.xml from threadkeep.xyz; transmits nothing about you
languages
English
version · license
1.0 beta 9 · free during beta
// 06 — Good to know

Does it change my messages?

No. ThreadKeep only reads the Messages database on your Mac. It never sends, edits, or deletes anything.

Where is my data stored?

Entirely on your Mac, in a local library. Nothing is uploaded, and there's no account to create.

Why does macOS ask for Full Disk Access?

macOS keeps the Messages database in a protected area, and Full Disk Access is the permission required to reach it. ThreadKeep uses that permission only to read your Messages database. It works from a temporary copy, never changes the original, and never uploads your messages or imported archive. You can revoke the permission in System Settings at any time.

Why is the beta free?

The beta is free while ThreadKeep is being tested and refined. Version 1.0 will be a one-time purchase, with no subscription. Pricing will be announced before the beta becomes a paid release.

What happens to my library after the beta?

Nothing — your library is a set of plain records on your Mac. Nothing expires or locks, and ThreadKeep 1.0 reads the same library.