Same conversation — minus the personal details we can spot.
Uncook reads a public share link — the same link you'd send a friend. Here's the exact tap sequence.
A single-message link (chatgpt.com/s/…) won't work — you need the full-conversation link (chatgpt.com/share/…).
Gemini, Perplexity and Mistral are coming later.
💡 Longer chats get less reliable — that's context rot, and a fresh start is the fix.
Get this handoff by email
Optional — Uncook works fully without an email.
Sent — check your inbox.
Identifiers a pattern can match are removed in your browser, before your text reaches the model. What a pattern is blind to — a first name, an employer, a diagnosis — is generalized by the same model that writes your handoff, which keeps one tag per entity across the whole text.
Pattern pass · exact
Emails, phone numbers, payment cards (checksum-verified), IBANs and national IDs. Matched by pattern, so there is nothing to hallucinate — and they never reach the model at all.
Context pass · reasoned
“My boss Sophie”, the employer, the city, the salary in prose, the health detail. A pattern is blind to these. The model replaces them — and reuses the same tag for the same person everywhere, so the text still reads.
An automatic effort — not a guarantee, and not “anonymization” in the legal sense. Automated redaction misses unusual names and indirect details. That is why we show you exactly what was caught, side by side with the original: what you can see caught is also how you spot what wasn't. We will never tell you a text is fully anonymous. Read the result before you share it — you are the last check.
Not in the legal sense, and we won't pretend otherwise. What runs here is an automatic scrub — a best-effort pseudonymization: identifiers a pattern can match are removed before your text reaches the model, the model generalizes what it can see, and we show you both versions side by side.
It is not a guarantee. A single missed first name would make any stronger claim a lie with real consequences. Read the result before you share it.
Treat the scrub as a safety net, not a licence. If a detail would seriously harm you if it slipped through — a live credential, an ongoing legal matter, someone else's medical record — the safe move is not to put it through an automated tool at all.
Emails, phone numbers, payment cards, IBANs and national ID numbers. Those are matched by pattern in your browser and replaced by tags before the request is sent.
Straight answer on the rest: the conversation itself is fetched through our server — that is how a share link is read at all. Nothing is stored. So the honest wording is “removed before it reaches the model”, not “never left your device”.
Yes — that's the whole point. One entity, one tag: [PERSON_1] stays [PERSON_1] from the first line to the last, and a different person gets [PERSON_2]. Without that consistency, a scrubbed text stops making sense and becomes useless.
No. Code blocks, variable names, error messages, ports, timestamps and version numbers are deliberately left alone — the noisy detectors are switched off inside code. Numbers that carry meaning (a KPI, a price, a count) are not treated as identifiers.
Both, and that's deliberate. The scrub is a property you can apply to any output — a handoff, a note for a human, an extract. This page is simply the front door for people who came for exactly that.