⟦⟧

Redact Round-Trip

Local de-identification for approved AI assistants
Runs locally No network · nothing leaves this page

Paste source text or a table

Step 1

Review & adjust

Step 2 · human check

Click any highlighted item to switch it between masked and kept. To mask something the detector missed, select it in the box above and press Mask selection.

Masked → replaced with a token Kept → left intact in the text
Analytical values — amounts, percentages, dates — are kept by default so the assistant can reason over them.

Masked output to copy

Step 3
Paste it into your approved assistant. Keep this tab open to restore the reply.

Customization & profiles

power tools

A profile holds rules only — never any of your content. Export it to share a firm-wide standard; teammates import it and they're configured instantly.

Always mask

One term per line. Optionally add a type: First Mercantile :: INSTITUTION

Never mask (allow-list)

One term per line. These are left untouched even if detected.

Custom patterns (regex)

One pattern per line. Optional type: LF-\d{6} => LOAN_FILE. Tested live against the box above.

Token style

Rename token stems, one per line: INSTITUTION=BANK

Detection types

Turn types off, or flip whether they mask or stay kept by default.

Transform modes extra privacy

For users who don't want even real numbers leaving the device. Values are offset consistently and reversed automatically on restore. Ratios, percentages, and intervals stay correct; quarter labels and percentages are never changed.

Changes apply to the next detection.

Session map

0 tokens
No tokens yet. The token ↔ original-value map appears here after detection and is used to restore the assistant's reply.

How tokens work

Each real value becomes a stable token like [[INST_1]]. The same value always gets the same token — in notes and across table rows — and the Restore tab swaps the real values back into the reply automatically.

Advanced

power tools
Detection runs
Last detection
Input read as
Network calls this session0

Zero network calls is the core promise. The counter above wraps every outbound API and stays at 0 — open your browser's network tab to confirm nothing leaves this page.

Paste the assistant's reply

Step 1

Restored draft

Step 2

Session map

0 tokens
Mask some text first — the map built on the Mask tab is reused here to restore values.