
The problem nobody admits to
Every day, professionals paste confidential text into tools that were never meant to hold it — an LLM chat, a translation box, a shared doc, a support ticket. A lawyer drops a case file into an AI assistant to summarise it. A claims handler pastes an accident report. A clinician copies a referral letter. The moment that text leaves the machine, the client's name, the IBAN, the diagnosis and the case number leave with it.
Most "redaction" tools fix this the wrong way: they ship the data to a server to be scrubbed, or they rely on a heavyweight cloud NLP model that you have to trust blindly. That trades one privacy problem for another.
SafePaste takes the opposite stance: the data never leaves your computer.
What SafePaste is
SafePaste is a local-first desktop app (built with Tauri, React and TypeScript) that detects sensitive information in any text and replaces it with stable, explainable tokens — entirely offline. No LLM. No remote API. No network calls.
Copy a block of text, hit a global shortcut, and the clipboard comes back sanitised and ready to paste:
Client John Smith contacted us about case AMS-2026-8821.
His IBAN is NL15INGB0001234567 and his email is john.smith@example.com.
becomes
Client [CLIENT_1] contacted us about case [CASE_1].
His IBAN is [IBAN_1] and his email is [EMAIL_1].
Notice what didn't happen: "John Smith" didn't become a generic [PERSON]. It
became [CLIENT_1] — because SafePaste understood the role he plays in the
document. That semantic layer is the whole point.
What we built
We engineered SafePaste the way we engineer everything at ByronDevLab — observable, deterministic, and correct on purpose rather than by accident.
-
Local & offline by design. Detection runs in a deterministic, staged pipeline on your device. Sensitive values live in memory only and are never written to disk; the only things persisted are your preferences and your own custom wordlist.
-
Explainable, every time. For each detection you can see exactly what was found, why, which rule matched, the confidence band, and what it became. No black box.
-
Role-aware, not just type-aware. SafePaste classifies people by their role from surrounding context — client, opposing party, counsel, judge, witness; policyholder, claimant, adjuster; patient, doctor, therapist — so the output reads like a real document, not a wall of
[PERSON_n]. -
Alias resolution. "John Smith", "Mr. Smith" and "the client" all resolve to the same
[CLIENT_1]. Consistency holds across the whole working session. -
Session consistency. The same value always maps to the same token while you work, and you can pin names to a permanent dictionary so they're recognised across documents and restarts.
-
Industry packs. Modular rule sets for specific domains. We launched with a strong Legal pack and have since added Insurance, Healthcare (patient and treatment data) and Psychology (mental-health records). Packs can run together, so a mixed legal + insurance + clinical document is sanitised in a single pass. English and Dutch are supported out of the box.
-
Structured identifiers done right. Case numbers, court references (ECLI), VAT numbers, IBANs, NHS/BSN numbers, medical record numbers, ICD/DSM diagnosis codes, policy and claim numbers — each detector is prioritised so a specific identifier is never mis-read as a generic phone number.
-
Confidence modes. Strict, Balanced and Suggestion let you choose how aggressively to mask, with high / medium / low confidence bands surfaced for review.
-
Fast. Normal text is sanitised in well under 300 ms; large documents in under two seconds. All regex rules are ReDoS-safe by construction.
How it works
SafePaste runs a transparent, multi-stage pipeline — no machine learning, nothing to hallucinate:
- Normalisation of the input text.
- Dictionary & wordlist matching (Aho-Corasick) for known terms.
- Regex rules for structured PII, compiled from static, reviewable patterns.
- Heuristic name detection that ignores headers, labels and address parts.
- Context classification that assigns a semantic role from nearby keywords, respecting sentence boundaries so context never leaks across clauses.
- Confidence scoring into clear bands.
- Overlap resolution that always keeps the most specific identifier.
- Session-stable token assignment with alias resolution.
Because every stage is deterministic, the same input always produces the same output — and you can audit exactly why.
Why it matters
Confidentiality isn't a nice-to-have for the people SafePaste is built for. It's a legal and professional obligation — attorney–client privilege, medical confidentiality, GDPR. SafePaste lets professionals use modern tools, including AI, without handing over the very data they're paid to protect. The sensitive information stays on the machine; only safe, tokenised text travels.
What's next
SafePaste is in active development. On the roadmap:
- More industry packs — finance, recruitment/HR, and public sector — plus deeper coverage and more languages in the existing ones.
- Reversible mappings so an approved recipient can re-hydrate tokens locally when appropriate.
- Team dictionaries for shared, versioned terminology across a firm.
- Configurable policies per entity type, exportable and auditable.
- Format-aware sanitisation for richer inputs (tables, PDFs, screenshots via on-device OCR).
- Editable rule packs in-app, so domain experts can extend detection without touching code.
Same principles throughout: local-first, explainable, and reliable from day one.
Want something like SafePaste built for you?
Start a project→