Sensible Daten pseudonymisieren, bevor sie ein LLM zu sehen bekommt.
noirdoc ist eine quelloffene Python-Bibliothek mit CLI und ein Plugin für Claude Code — MIT-lizenziert und läuft komplett auf deinem Rechner.
noirdoc ist eine quelloffene Python-Bibliothek und CLI für die lokale, umkehrbare Pseudonymisierung personenbezogener Daten in Dokumenten. Die Engine läuft auf deinem Rechner, ist MIT-lizenziert und wird von Nextaim gepflegt.
So sieht das aus, bevor irgendetwas dein Gerät verlässt.
Anna Müller, geboren am 12.03.1985, hat ihrem Steuerberater Markus Schmidt in München am 03.04.2024 eine umfassende Vollmacht erteilt.
<<PERSON_1>>, geboren am <<DATE_1>>, hat ihrem Steuerberater <<PERSON_2>> in <<CITY_1>> am <<DATE_2>> eine umfassende Vollmacht erteilt.
Was die CLI für dich macht.
Vier Bausteine, die zusammen das ergeben, was du für eine ehrliche lokale Pseudonymisierung brauchst.
Erkennt deutsche PII zuverlässig.
Die Detektoren sind auf deutschen Verträgen, Briefen und HR-Dokumenten trainiert und finden Namen, Adressen, IBANs, Steuer-IDs und Telefonnummern auch dann, wenn das Format nicht ganz sauber ist.
Pseudonymisierung mit Mapping.
Jeder Token zeigt auf den Originalwert. Du nutzt das pseudonymisierte Dokument für deinen LLM-Workflow und stellst die echten Daten in der Antwort danach wieder her — alles lokal.
PDF, DOCX, TXT und Markdown.
Pseudonymisierte Dokumente behalten ihr ursprüngliches Format. Das LLM bekommt eine bereinigte Kopie zu sehen, während du mit der Originaldatei weiterarbeitest.
Läuft komplett auf deinem Rechner.
Die Modelle laufen lokal und das Mapping bleibt auf deiner Festplatte. Es gibt keinen API-Call, der dein Gerät verlässt — auch nicht zu uns.
So bekommst du noirdoc auf deinen Rechner.
Über pip installieren, dann entweder aus Python heraus aufrufen oder direkt aus der Shell.
1$ pip install noirdoc
2$ pip install noirdoc[full] mit allen optionalen Detektoren
3$ noirdoc models pull 1from noirdoc import Redactor
2
3r = Redactor(namespace="mandant-mueller")
4
5r.redact_file("vertrag.pdf", output="vertrag-clean.pdf")
6r.redact_file("brief.docx", output="brief-clean.docx")
7
8Antworten zurückübersetzen
9original = r.reveal_text(llm_response) 1einmalig — Mapping wird verworfen
2$ noirdoc redact vertrag.pdf -o vertrag-clean.pdf
3
4persistent — Mapping bleibt erhalten
5$ noirdoc redact --namespace mandant-mueller brief.docx -o brief-clean.docx
6$ noirdoc reveal --namespace mandant-mueller brief-clean.docx -o brief-revealed.docx
7$ noirdoc lookup --namespace mandant-mueller "<>" MIT-Lizenz · github.com/nextaim-de/noirdoc
Dieselbe Engine treibt unseren Chat für sensible Daten.
Wenn du dich nicht selbst um pip, Python und Modelle kümmern willst — Noirdoc Chat ist die gemanagte Variante: gleicher Pseudonymisierungs-Code, mehrere Modelle und ein AVV nach DSGVO, ohne Setup auf deiner Seite.
Claude Code, ohne dass deine Daten Claude erreichen.
Das Plugin pseudonymisiert deine Eingaben lokal, bevor sie an Claude gehen — und stellt die Antworten danach automatisch wieder her.
# Marketplace einmal hinzufügen
$ /plugin marketplace add nextaim-de/noirdoc-claude-plugin
# Plugin in Claude Code installieren
$ /plugin install noirdoc@nextaim Pseudonymisiert ohne Zutun.
Sobald du eine geschützte Datei in Claude Code öffnest oder einliest, ersetzt das Plugin Namen, IBANs und IDs lokal durch Platzhalter — bevor Claude überhaupt etwas zu sehen bekommt.
Echte Werte nur in deinem Terminal.
Mit `noirdoc reveal` siehst du das Original — aber nur in deiner eigenen Shell, nie im Claude-Code-Transkript. Die Konversation bleibt sauber.
Du legst fest, was geschützt wird.
Glob-Regeln wie `./incoming/**` oder `*.contract.*` bestimmen, welche Dateien automatisch pseudonymisiert werden. Alles andere bleibt unangetastet.
Mapping bleibt auf deinem Rechner.
Pseudonymisierte Kopien landen in `.noirdoc/cache/` und das umkehrbare Mapping bleibt lokal. Es gibt keinen API-Call, der dein Gerät verlässt — auch nicht zu uns.
MIT-Lizenz · github.com/nextaim-de/noirdoc-claude-plugin
Wähle den Weg, der zu dir passt.
Lokal mit der OSS-CLI, im Editor mit dem Plugin oder gemanagt über Noirdoc Chat — die Pseudonymisierung dahinter ist immer dieselbe.