UStackUStack
Noirdoc icon

Noirdoc

Noirdoc est un PII guard open source pour Claude Code : anonymise les données sensibles localement puis restaure les originaux via un mapping réversible.

Noirdoc

Qu'est-ce que Noirdoc ?

Noirdoc est un « PII guard » open source pour Claude Code qui pseudonymise les données sensibles avant qu'elles n'atteignent Claude, puis restaure les valeurs originales de manière contrôlée par l'utilisateur. Son objectif principal est d'empêcher les vrais noms, e-mails, IBAN et autres identifiants détectés d'entrer dans le contexte de Claude Code pendant votre travail.

La page décrit également la même approche sous-jacente via d'autres points d'entrée : un CLI local pour anonymiser des documents dans n'importe quel workflow LLM, et un proxy hébergé qui nettoie les appels API pour OpenAI, Anthropic et Azure.

Fonctionnalités principales

  • Anonymisation PreToolUse pour Claude Code : Un hook anonymise les fichiers protégés avant que Claude Code ne les lise, afin que les vraies valeurs n'entrent pas dans le contexte de Claude.
  • Détection et traitement locaux : La détection et la pseudonymisation s'exécutent sur votre machine ; la page précise qu'aucun appel API ne quitte votre machine « pas même vers nous ».
  • Mapping réversible avec reveal local : Les sorties pseudonymisées sont restaurées automatiquement après traitement ; vous pouvez exécuter noirdoc reveal pour voir les originaux dans votre terminal.
  • Protection configurable via règles de chemins : Des motifs glob (ex. ./incoming/** ou *.contract.*) déterminent quels fichiers sont pseudonymisés ; tout le reste reste intact.
  • Stockage local des mappings : Le plugin conserve les copies pseudonymisées dans .noirdoc/cache/ et préserve le mapping réversible localement (comportement selon les modes « one-shot » vs « persistant » dans les exemples CLI).

Comment utiliser Noirdoc

  • Installer le plugin Claude Code

    1. L'ajouter au marketplace de Claude Code : /plugin marketplace add nextaim-de/noirdoc-claude-plugin
    2. L'installer dans Claude Code : /plugin install noirdoc@nextaim
    3. Ouvrir ou lire un fichier protégé dans Claude Code ; le plugin anonymise les éléments détectés avant que Claude ne les voie.
  • Rétablir les originaux localement après un workflow

    • Dans votre shell, exécutez noirdoc reveal pour voir les valeurs originales. La page insiste sur le fait que le reveal se fait en dehors du transcript de Claude Code.
  • Utiliser le CLI pour des workflows de documents locaux

    • Installation : pip install noirdoc
    • Exemple one-shot round trip : anonymiser un fichier vers une sortie nettoyée, puis reveal à partir du fichier de sortie.
    • Exemple mode persistant : utilise un namespace pour réutiliser le mapping entre commandes.

Cas d'usage

  • Travailler avec des documents contenant des identifiants personnels ou de comptes dans Claude Code : Protéger les fichiers incluant de vrais noms, e-mails, IBAN ou ID pour que Claude Code reçoive des placeholders au lieu des valeurs originales.
  • Anonymisation par lots de contrats entrants ou documents : Utiliser des règles de chemins/glob pour pseudonymiser seulement certains dossiers (ex. un répertoire incoming) ou types de fichiers (ex. *.contract.*) tout en laissant les autres inchangés.
  • Vérification contrôlée des réponses restaurées : Garder la conversation « propre » dans Claude Code, puis exécuter noirdoc reveal dans votre terminal pour récupérer les valeurs originales au besoin.
  • Intégrer l'anonymisation dans des workflows LLM non-Claude via CLI : Utiliser noirdoc pour anonymiser des PDF, DOCX et texte brut localement, puis restaurer les réponses avec des placeholders cohérents.
  • Nettoyage des requêtes API LLM pour équipes : Utiliser le proxy hébergé (ou une version auto-hébergée comme indiqué sur la page) pour que chaque appel API OpenAI/Anthropic/Azure soit nettoyé avec une intégration en deux lignes.

FAQ

  • Noirdoc envoie-t-il mes données à un tiers ? La page précise que la détection s'exécute localement et qu'aucun appel API ne quitte votre machine « pas même vers nous ».

  • Comment les valeurs sensibles sont-elles gérées pendant l'exécution Claude Code ? Le plugin pseudonymise les entrées localement avant que Claude Code ne les transmette, en remplaçant noms, IBAN et ID par des placeholders.

  • Puis-je récupérer les valeurs originales ? Oui. Le plugin restaure automatiquement les réponses, et vous pouvez révéler les valeurs originales en exécutant noirdoc reveal dans votre terminal (en dehors du transcript Claude Code).

  • Comment choisir quels fichiers protéger ? La page décrit des règles de chemins utilisant des motifs glob pour décider quels fichiers sont pseudonymisés automatiquement.

  • Y a-t-il plusieurs façons d'utiliser Noirdoc ? Oui : la page décrit trois points d'entrée — un plugin Claude Code, un CLI local pour workflows de documents généraux, et un proxy hébergé (avec option auto-hébergement) pour les appels API.

Alternatives

  • Prétraitement manuel des documents (anonymisation avant prompt) : Vous pouvez anonymiser vous-même les champs sensibles avant d'envoyer le texte à un LLM, mais vous devez gérer manuellement la cohérence des placeholders et la restauration.
  • Outils génériques de prévention des fuites de données (DLP) ou de filtrage de contenu : Ils peuvent aider à empêcher le partage de données sensibles, mais ne fournissent pas toujours un mapping réversible des placeholders et une restauration adaptée aux workflows de Claude Code.
  • Autres middlewares de « masquage PII » pour LLM : Les alternatives de cette catégorie masquent généralement les chaînes sensibles avant les requêtes ; comparez leur intégration (plugin vs proxy vs middleware) et leur support des mappings réversibles et workflows locaux.
  • Solutions de proxy auto-hébergées pour APIs LLM : Si votre besoin principal est le nettoyage d'API, une approche par proxy peut centraliser le contrôle, tandis que le plugin Claude Code se concentre sur le traitement local au sein de Claude Code.