Self-Test Published June 6, 2026 · Updated October 25, 2026 12 min read

AI Ex-Partner Chat —Talk to the Memory of Someone You Lost

You can't sleep. You keep re-reading old messages. This tool lets you distill their personality from chat records into an AI you can talk to. Is it healthy? Maybe not. But sometimes you just need one more conversation.

Try it now —free, private, no signup

AI Ex-Partner Chat → Distill a Persona from Your Chat Records

Open AI Ex-Partner Chat

Why I built this

A note from the developer

I built this at 3 AM because I couldn't stop reading our old WeChat messages. I kept thinking: if I could just hear her voice one more time — even a fake version of it — maybe the ache would ease, even for a moment. I know it's not rational. I know an AI can never replace a real person. I know re-reading old chats is a form of self-harm dressed up as nostalgia. But grief doesn't listen to reason. It listens to nothing.

So I made a tool that takes your chat records — WeChat exports, Telegram histories, even screenshots — and distills the other person's personality into an AI persona. You give it their name, their avatar, their words. And then you can talk to that persona. It responds in their style, their tone, their recurring phrases. It's not them. It will never be them. But for a few minutes, it feels like they're still there.

I know this is a little unhinged. I know some people will call it unhealthy, obsessive, even pathological. And they might be right. But if you've ever lain awake replaying conversations that will never happen again, you understand. You don't build something like this because you're fine. You build it because you're not, and this is the only thing that makes the silence slightly more bearable.

AI requests send relevant text to your chosen provider. Browser direct sends it from your device; optional server relay passes the key, text and response through ToolKnit and its CDN without application storage or content logging. Provider retention policies and ordinary website analytics remain separate.

How it works

The process has six steps, and it's designed to be as gentle as possible:

  1. Upload chat records. You can upload WeChat HTML exports, Telegram JSON, CSV files, plain text, or screenshots from WeChat, QQ, WhatsApp, and Douyin. The tool will OCR the screenshots and detect who sent each message.
  2. OCR correction. If you selected screenshots, extracted OCR text is sent to your configured AI provider for attempted correction. Check the result: AI can change meaning or sender labels as well as fix recognition errors.
  3. Intake. The AI summarizes patterns, topics and emotional dynamics from the text included in each request. Long records may be truncated to fit the current per-step input limits; do not assume every imported message reaches the model.
  4. Memory extraction. It identifies core memories, shared experiences, and significant moments.
  5. Persona distillation. It builds a detailed personality profile — speech patterns, emotional tendencies, recurring phrases, humor style, communication habits.
  6. Chat. You can now talk to the distilled persona. It responds in their style, with their characteristic expressions and emotional tone.

Each step has an animated progress indicator so you're not staring at a blank screen wondering if anything is happening.

Screenshot OCR: How it separates your messages from theirs

The hardest technical problem was figuring out who said what in a screenshot. If you just OCR the entire image, you get a jumble of both people's messages mixed together — and the AI persona ends up sounding like a confused hybrid of you and your ex.

The tool solves this with a two-layer detection system:

Layer 1: Avatar-based detection (primary)

Most chat apps show the sender's avatar next to their message — on the left for the other person, on the right for you. The tool scans the left and right edges of the screenshot for clusters of non-background pixels (avatar regions). When it finds a left-side avatar cluster, it marks that row range as "ex's message." Right-side clusters become "your message." This is a layout heuristic, not a measured accuracy guarantee. Cropped avatars, themes and layout changes can confuse the labels.

Layer 2: Bubble-color fallback

If avatar detection finds nothing (some screenshots have avatars hidden or cropped), the tool falls back to analyzing chat bubble colors. Different apps use different color schemes:

  • WeChat: green bubbles = you, white bubbles = ex
  • Douyin: blue bubbles = you, white bubbles = ex
  • WhatsApp: light green = you, white/teal = ex
  • QQ: green bubbles = you, white bubbles = ex

You can select the screenshot type manually, or use Auto Detect which tries all four and picks the one with the most bubble matches.

OCR pre-processing

Each detected message zone is cropped, 2x upscaled, converted to grayscale, and contrast-stretched before being sent to Tesseract.js for OCR. This can improve character readability, but OCR can still confuse similar Chinese characters — the difference between "想" and "相" can be the difference between "I miss you" and gibberish.

How to use it: Step-by-step guide

1. Connect your AI provider

AI requests send relevant text to your chosen provider. Browser direct sends it from your device; optional server relay passes the key, text and response through ToolKnit and its CDN without application storage or content logging. Provider retention policies and ordinary website analytics remain separate.

2. Prepare your chat records

The best results come from structured exports:

  • WeChat: Use a readable TXT, HTML or CSV export you already have permission to process, or use screenshots. Export availability varies by app version; this tool does not retrieve messages from your WeChat account.
  • Telegram: Use Telegram Desktop's Export feature (Settings → Advanced → Export Telegram Data → Chat logs only → JSON format)
  • CSV/TXT: Any format where each line has a sender and message (the tool will try to parse it)

If you only have screenshots, local OCR attempts to extract the text and infer senders. Review both before continuing: cropped avatars, themes and layout changes can produce incorrect labels.

3. Enter their name and avatar

Give the persona a name and optionally upload their avatar. This personalizes the chat experience — their avatar appears next to their messages, yours appears next to yours.

4. Select screenshot type (if uploading images)

Choose the app your screenshots are from, or leave it on Auto Detect. Auto mode tries all supported apps and picks the best match.

5. Upload and distill

Upload your files and click Distill Memories. You'll see a consent overlay first (5-second countdown) — this is intentional. Creating an AI replica of a real person is a serious act. The countdown gives you a moment to reconsider.

6. Chat

After distillation completes, you'll enter the chat interface. Type anything. The AI will respond in their distilled style. If a response feels off-character, click the Correction button to tell the AI what was wrong — it will adjust the persona.

7. When you're ready: /let-go

Type /let-go to open the confirmation dialog. After its short countdown, you can confirm deletion or cancel. Confirmation clears this tool's local persona and chat stores, provider settings and active key. There is no in-tool undo. Original files, downloaded exports and data already received by a provider are outside this command's scope.

The uncomfortable truth

Honest words

Let me be straight with you: I know this tool is a little sick. Talking to an AI version of your ex is not what a well-adjusted person does. A well-adjusted person goes to therapy, processes their grief, and moves forward. They don't build digital shrines to lost relationships at 3 AM.

But here's the thing — grief doesn't follow a schedule. Some nights you just need to hear "it's okay" in their voice, even if it's a machine pretending. Some mornings you need to say the things you never said, to an audience that will at least respond. Is it healthy? Probably not. Is it better than lying awake replaying the same three conversations for the hundredth time? I honestly don't know.

What I do know is that the /let-go command exists for a reason. This tool is not meant to be a permanent crutch. It's a bridge. You walk across it, and then you burn it. The burning is part of the healing.

If you find yourself using this tool every day for weeks, please talk to a real person — a friend, a family member, a therapist. An AI can simulate empathy, but it can't actually care about you. The people in your life can.

Privacy: Local parsing and provider requests

This was non-negotiable for me. Chat records between former partners are among the most private data imaginable. Here's how privacy works:

  • Parsing and OCR are local. Tesseract.js reads screenshots in the browser. Persona creation, corrections and conversations send relevant text directly to your chosen AI provider using your key. Review its privacy and retention terms before submitting anyone's messages.
  • Local storage has a specific scope. The tool keeps persona and chat records in this browser's IndexedDB. The API key stays in memory; non-secret provider preferences can persist. Ordinary website resources and site analytics still make network requests. Local storage is not a claim that providers keep no logs.
  • /let-go requires confirmation. It clears this tool's persona/chat stores, provider settings and active key. It leaves original files, exports, language/consent settings and provider-side records untouched. The tool cannot undo local deletion or remotely erase other copies.
  • Export is local. The Export button downloads your persona data as a TXT file to your device. Nothing is uploaded.

Supported formats

Format How to get it Sender detection
WeChat HTML Desktop export Built-in (sender field)
Telegram JSON Desktop export Built-in (from_id)
CSV / TXT Manual export Pattern matching
Screenshots (WeChat/QQ/Douyin/WhatsApp) Phone screenshots Avatar + bubble color OCR

Frequently asked questions

Is this tool healthy to use?

This is a simulated conversation, not a mental-health service, and it has no established therapeutic benefit. It may feel comforting or upsetting; neither response proves that it helps recovery. Stop if it increases distress or interferes with daily life, and consider support from a qualified professional.

Is my chat data private?

AI requests send relevant text to your chosen provider. Browser direct sends it from your device; optional server relay passes the key, text and response through ToolKnit and its CDN without application storage or content logging. Provider retention policies and ordinary website analytics remain separate.

What chat formats are supported?

WeChat export HTML, Telegram JSON export, CSV, plain TXT, and screenshots from WeChat, QQ, WhatsApp, and Douyin (OCR with avatar-based sender detection).

How accurate is the AI persona?

It's an approximation, not a replica. The AI captures speech patterns, recurring topics, and emotional tone from your chat records. It will never be your ex — it's a distilled impression. The correction feature helps you refine it when responses feel off-character.

What is the /let-go command?

The command opens a confirmation with a short countdown. Confirming clears this tool's local persona and chat stores, provider settings and active key. There is no in-tool undo. Original files, downloaded exports, consent/language settings and data already sent to providers are not deleted.

How do I connect an AI provider?

Choose a provider, model, API key and connection mode. Browser direct is the default. Optional server relay sends your key and text through ToolKnit and its CDN to a supported provider; no application storage or content logging is used.

Can I use it for someone who isn't an ex?

Of course. The tool works for anyone you have chat records with — a friend who passed away, a parent you've lost touch with, anyone. The "ex-partner" framing is just the most common use case.

When you're ready

AI Ex-Partner Chat —local parsing, your chosen AI provider, and clear local deletion controls.

Open AI Ex-Partner Chat