Nothing becomes [PERSON_1] until you decide.

Legal Redact

A local privacy workstation for legal documents. It sorts files into matters, flags what could identify a person right beside the text, and prepares reviewed DOCX and PDF redactions with export checks.

Built for technically comfortable lawyers, legal-tech builders and developers evaluating a local review workflow, especially for Turkish legal documents.

Coming soon. Legal Redact is in early access and is not available to download yet.

  • Runs on your own computerOne command starts it. There is no hosted version and no upload service.
  • A person decides every findingNothing is removed until a reviewer approves it, or adds it themselves.
  • Detection by rules, not a modelRegular expressions, the official TCKN and VKN check digits, and a Turkish name gazetteer. The same document gives the same findings every time.
  • Reads what legal work usesDOCX, PDF, UDF, XLSX, PPTX, text, images and ZIP. Scans go through local OCR, used only once a reviewer accepts it. Redacted copies are built from DOCX and PDF.

Watch it work on a practice petition.

A fictional Turkish petition that ships with the app, run through the real detector. Scroll through the three steps, or select any bracket and decide it yourself.

The rules bracket what could identify someone.

15 spans in this petition: the parties and their roles, a TCKN and a VKN that pass their check digits (masked on this page), an address, an email, the court, the case number, a date and an amount.

Each one says why it was flagged. Found is not removed: nothing in the document has changed yet.

Rules miss what they were not written for, so you still read the document.

You decide each one.

Approve it, mark it not sensitive, or keep it unredacted. Nothing is decided for you.

Select any bracket to change its decision.

0 approved0 kept0 not sensitive15 undecided

The copy you send carries placeholders.

This is the text of the reviewed DOCX the app builds from these decisions.

Approved text is replaced everywhere it appears, so approving one copy of a name removes every copy. Everything else stays as written.

The app builds it once you mark the redaction complete and approve the document.

15 findings are still undecided. The app does not build the reviewed copy until every finding is decided.

A PDF is redacted with black boxes over the regions you approve on the page.

turkish_petition.docx
15 found

Tamamen kurgusal dava dilekçesi

SENTETİK ÖRNEK / SYNTHETIC SAMPLE. Bu belge eğitim için uydurulmuştur. Kişiler, kurumlar, mahkeme, adres ve olaylar gerçek değildir. Hukuki tavsiye veya kullanılabilir bir dilekçe değildir.

:

TCKN: (rastgele gösterim numarası)

:

(rastgele gösterim numarası)

Adres:

E-posta:

Esas (uydurma dosya)

Konu

Tamamen kurgusal bir maket teslimine ilişkin bedelin iadesi talebidir.

Açıklamalar

Taraflar tarihinde bir sergi maketi için anlaşmıştır. ödediğini, ancak maketin teslim edilmediğini ileri sürmektedir. Bu olay yalnızca inceleme alıştırması için yazılmıştır.

İstem

Örnek bedelin iadesine karar verilmesi talep olunur. Gerçek bir başvuru yapılmayacaktır.

/ İmza atılmamıştır

Kimlik ve vergi numaraları gösterim amacıyla rastgele üretilmiştir ve yalnızca uydurma taraflarla eşleştirilmiştir. Hiçbir gerçek kişi veya şirketle ilişkilendirmedik. Kontrol basamaklarının geçerli olması numaranın kullanılmadığını kanıtlamaz; gerçek bir numarayla tesadüfi eşleşme dışlanamaz.

Clearing it for an LLM is a separate question.

The reviewed copy reflects your decisions, a kept name included. Whether a document may go to an external LLM is decided separately.

The app clears a document for external LLM use only when all 8 of these hold. A person's approval is one of them, and nothing stands in for it. The app never sends the document anywhere itself.

As uploaded, before anyone has decided anything: Blocked: 5 of 8 conditions fail.

  • Extraction complete, holdsComplete
  • OCR accepted or not required, holdsnot required
  • Document language is covered by the detection rules, holdsTurkish
  • Residual risk after review is Low, failscurrently High
  • No undecided critical findings, fails1 outstanding
  • No direct identifiers remain, failsat least one remains
  • Redaction pass completed, failsnot marked complete
  • Human review approved, failsnot approved

What it does not do.

Read English well
The rules are tuned for Turkish. English name and address coverage is materially lower than Turkish coverage, so a document that does not read as Turkish is refused clearance. An English annex set out as labelled fields can still read as Turkish.
Call anything anonymous
Detection is not redaction, and redaction is not anonymization. Context can still identify a person or a matter after the obvious identifiers are gone.
Serve a team
One reviewer on one computer, bound to 127.0.0.1. There is no hosted version, and files sit unencrypted on local disk.

This page quotes no accuracy figure. Both of the project's test corpora are synthetic.

Try it with the practice files.

Once your access opens, one command builds the app with Tesseract and Poppler, loads three fictional practice documents, and prints your login when it is ready.

Needs Docker. The workstation opens at 127.0.0.1:5055.

./start.sh
Request early access