Redact Mr. Chris P. Bacon[Person 1] before the document leaves your machine.

A local model and deterministic rails find the names, numbers and identifying details, on hardware you own94.97% measured on documents it had never seen. You review everything; nothing exports without your yes.

Free · open source (Apache-2.0) · no account, no server, no telemetry

The Simpler Redact app, a build in progress: the masthead with the red kite, a document drop sheet with TXT, PDF and DOCX file cards, a trust footer stating nothing is uploaded, and the Drop, Review, Export stepper — engine ready at 127.0.0.1.
NO API KEY · NO CLOUD · NOTHING LEAVES THIS MACHINE — EVER

The core claim, live

Ink hides. Deletion removes.

In the December 2025 release of the Epstein files, "redacted" names were one copy-paste away — the ink covered the text without removing it. Both documents below are live.

Try it — select either document, copy, paste below
How redaction usually works — ink drawn over text
Dear Mrs. Margaret Ellison, further to your instruction of 12 March, we confirm settlement from account 7449-2210-0031 and registration of the property at 14 Belmont Road in your name.
The names are still in this page — your selection just proved it.
A Simpler Redact export — text replaced, then rebuilt
Dear [Person 1], further to your instruction of 12 March, we confirm settlement from account [Account 1] and registration of the property at [Address 1] in your name.
Nothing to find — the name isn't hidden here, it isn't in here. View-source this page: same result.

The same trick journalists used on the released files. It works on the left document. It has nothing to work on in the right one.

Simpler Redact never draws boxes over your document. Every identifying detail is deleted from the text and substituted with a placeholder, and the export is a new file rebuilt from the cleaned text. The same person becomes the same tag everywhere, so the document stays readable — for you, and for the AI you hand it to. The map from tags back to names is a separate file that never exports with the document unless you explicitly say so.

Why local isn't a feature toggle

Your laptop becomes the AI server.

"AI" has meant "send it to a data center" for so long that local sounds like a setting. It isn't — it's the direction of travel reversed. Your documents don't go to the AI. The AI comes to you.

Every cloud AI tool — the document travels
someone else's computer
Your document travels to their machine. Their hardware reads it, their logs remember it, their terms govern it — and your name is in it.
Simpler Redact — the AI moved in
127.0.0.1
The model travels to you — once, ~3 GB, hash-checked. It serves at 127.0.0.1: an address that cannot leave your machine, by definition. The document never touches the wire.

It's the same architecture the AI labs run — a model behind a server — except the server is your laptop and its only client is you. That's why there are no page caps, no monthly allowance, no metering: nobody's hardware is doing you a favor. The model itself is Google's Gemma 4 E2B exactly as Google shipped it — tuned by Google, quantized by Google, modified by no one — and the app proves it on your machine, hashing the weights against the published pin before they ever run.

The corridor

Four steps, all local

One corridor, no suite, no workflow product. It does one job.

1

Drop

A contract, a letter, an intake form. It never uploads — there is nowhere to upload to.

2

Redact

A wide sweep finds identities; code removes every copy document-wide; a second pass re-reads the result hunting anything left behind.

Reviewed3

Review

Everything found, in one table — a guided pass walks you through the uncertain ones, keyboard-first. Nothing exports without your yes.

4

Export

The redacted copy — plus, separately and only if you ask, the key that maps tags back to names.

The app — in development

The review is the gate

If a run is incomplete, the export is held. If a span can't be verified, it's refused. The last reviewer is you — by design, not as a disclaimer.

These are screenshots of a build in progress, not a release. They come from the real application running the real engine — no mockups — but it is still changing, and you cannot download it yet. What you can run today is the command-line tool.

The review screen: the original document and the redacted copy side by side with strong colored highlights, a guided-review card walking a pending item, and an entity table with confirm and leave-visible controls per row.

Review. Original and redacted side by side, every finding highlighted in place — and a guided pass walks the shaky ones one at a time. The finish button stays locked until you've decided each.

The export screen: the found-kept-redacted funnel, verification checks including a partial-name check, a paper receipt, and buttons to copy the redacted text or save it as a file.

Export. The honest funnel, verify-by-extraction plus a partial-name check, a receipt for your records — then copy the redacted text straight into the AI you use, or save it as a file. The original is never touched.

Measured, published, reproducible

The evidence

Every accuracy number in this industry is a sentence you're asked to believe. Ours is a command you can run. The corpus, the ground truth, and every measured run live in the repository — the exhibits below link to the raw files, and the full methodology, per-class results and leak ledger have their own page.

EXHIBIT A

The corpus

118 real public documents — SEC filings, merger and employment agreements, court opinions, earnings-call transcripts, OCR'd 1960s town reports, a Singapore judgment — each hand-annotated with ground truth before any run. The annotation itself is measured: blind second-pass agreement 0.925; the medical gold standard's human-human bar is 0.927.

bench/ in the repo

EXHIBIT B

The runs

Every measurement campaign is committed with its methodology, its results JSON, and its failures — including the configurations that leaked, and what changed because of them.

the full battery record

EXHIBIT C

The gate

Every defect ever measured is pinned as a test that fails the build if it regresses. The benchmark isn't marketing — it's the thing that refuses the release.

test/ in the repo
MeasurementCorpusResult
Engine A alone — the model span pass, before the rails real in-sample corpus, 207 occurrences 93.7%
+ the deterministic rails same corpus 99.5% — 5 of 6 documents perfect
Full two-engine pipeline — documents it was tuned on 8 SEC filings — the ratchet floor 100.00% — 243/243 entities
Full pipeline — documents it had never seen 18 hostile documents, ~125k words, pre-registered 94.97% of entities · 98.2% of occurrences
The other direction — what a frontier AI still extracts from those same redacted exports same 18 documents · 90 blind original-vs-masked questions 0.983 substance-equivalence · 0 contradictions
The whole v1.0 battery 118 real documents 95.82% — 3,487/3,639 entities
Baseline — Microsoft Presidio as shipped, same documents, same metric 90 walk-forward documents 43.10%

Measured 2026-07-19 → 2026-07-21 — pipeline and battery rows on the release engine cb3627c; the two Engine-A arc rows are the founding engine (54112a2) they improved on. Both rows are published — the flattering one (100.00% on documents it was tuned on) and the honest one (94.97% on documents it had never seen, published as drawn under a pre-registration rule). A vendor that shows you only one number is showing you the wrong one. Want the methodology, per-class breakdowns and every named miss? The nerd page.

Reproduce it yourself

The whole bench — corpus, ground truth, runner, floor — ships in the tree. Green means every measured lesson still holds; a single core leak exits red.

git clone https://github.com/Simpler-Systems/simpler-redact
cd simpler-redact && npm install
npm run verify        # the gate: every pinned test
npm run bench:all     # the ratchet: the full corpus, zero-core-leak floor
The honest claim: we measure this on real documents and publish what we find — including the misses. We don't claim it's perfect on every document ever written; nobody can, and the ones who do aren't showing you their corpus. That's why nothing exports without your review — the last line of defense is you, and that's a feature, not an apology.

Get it

Run it today, from source

The engine, the rails, the full benchmark and the command-line tool are public and working right now. The desktop app is not released yet — no installers, no binaries, no download mirror. The screenshots above are the real application, built from this repository; it ships when it is signed and finished, and we would rather say that than put a dead button here.

Redact a document from the command line

Needs Node 20+ and a local llama-server holding the pinned model. Nothing here talks to a network except the one time you fetch the weights yourself.

git clone https://github.com/Simpler-Systems/simpler-redact
cd simpler-redact && npm install
node scripts/verify-model.mjs   # confirms your GGUF matches Google's published weights
node bin/red.mjs contract.pdf   # → contract.redacted.txt + the entity table

You bring the model

The weights are not in this repository and never will be — they are Google's, ~3 GB, under the Gemma Terms of Use, and gated behind a licence click on Hugging Face. If you already have gemma-4-E2B_q4_0-it.gguf for LM Studio or Ollama, point us at that copy — the SHA-256 decides, not the filename, so one download serves every tool that pins these weights.

Check the numbers yourself

Every figure on this site recomputes offline from committed files: npm run audit re-derives them and exits non-zero on drift — no model required. npm run verify runs the gate (70 tests, no install needed). npm run bench:all re-runs the full ratchet against your own local model.

The desktop app

Built, working, and not yet released. What remains is distribution, not software: code-signing identity, notarization, and a mirror for the weights. It arrives under the v0.1 tag with checksums, and we are not naming a date we cannot keep.

On a work machine?

The brief for IT & InfoSec reviewers answers the standard software-review questions — architecture, network behaviour, what it never does, and how to verify each claim independently. Written to be forwarded as-is.

Audit us

Don't trust us — check

The privacy claim is testable. The first check takes five minutes and no expertise at all.

The airplane test — anyone can do this

Turn off Wi-Fi, redact a document. Everything works, because nothing was ever remote.

Watch the wire

Run a free network monitor (Wireshark, Little Snitch) during a redaction. Outbound connections: zero.

Read the code

It's open source. Grep for a network call — there isn't one outside the local model on your own machine.

In the app itself

The egress pill in the corner reads "0 outbound connections" and opens the full network record — live from first launch.

Questions

Common questions

Do I need a HIPAA BAA?

A BAA covers vendors who receive your data. This is local software — your documents never reach us, and there's no server that could receive them. Not legal advice; confirm with your counsel.

What files does it read?

PDF, Word (.docx) and plain text. Scanned or image-only pages need OCR, which isn't included yet — we'd rather tell you that plainly than silently guess at a page. Exports are clean text files, rebuilt from the redacted text — never your original with boxes drawn on it.

What does it cost?

Nothing. Apache-2.0 open source, no account, no tiers. If you want document work handled end-to-end on the AI subscription you already pay for, that's our sibling product — simpler.asia.

Made by the same people