Aller au contenu

Docs / Concepts

Page traduite automatiquement

Cette page a été traduite automatiquement, elle peut donc contenir des erreurs ou se lire un peu bizarrement. La version anglaise fait foi. Lire l'original en anglais.

Traitement des données et confidentialité

Ce que l'outil verbatra envoie hors de ta machine, à qui, et ce qu'il garde en local, pour qu'une revue sécurité ou juridique puisse le valider.

Ce que la CLI, le SDK, Studio et le serveur MCP de verbatra envoient hors de ta machine ou de ta CI. Ce site relève de sa politique de confidentialité.

La réponse courte

  • Aucune télémétrie, aucune vérification de mise à jour et aucun serveur verbatra à contacter.
  • Une seule destination sortante : ton fournisseur, seulement quand une commande traduit ; aucune avec provider: { id: "none" }. Tout le reste reste local, Studio et le serveur MCP compris.
  • Seul ce qui doit être traduit est envoyé : ni clés inchangées, ni succès du cache, ni clés protégées (sauf les modifications humaines obsolètes avec humanEdits: "suggest").
  • Les clés d'API viennent uniquement de variables d'environnement et n'apparaissent jamais dans un message.

Comment circulent les données

 your project (local disk)                               provider (only on translate, watch,
                                                         SDK retranslateEntry, or a Studio /
 +-----------------------------------------+             MCP retranslate or translate-pending)
 | locale files, verbatra.config.ts,       |   HTTPS     +--------------------------+
 | glossary          -- read by verbatra --|------------>| Anthropic / OpenAI /     |
 |                                         |  changed    | Gemini / DeepL / Google  |
 | verbatra.lock.json, provenance file,    |  strings    | or your own server       |
 | verbatra.cache.json, .verbatra-local/   |<------------| (self-hosted)            |
 |                 -- written by verbatra  | translations+--------------------------+
 +-----------------------------------------+
        |                        |
        | 127.0.0.1 only         | stdio
        v                        v
  Studio in your browser   MCP client (your AI agent)

La flèche est en HTTPS, sauf que openai-compatible et libretranslate peuvent utiliser du http simple vers ta propre baseUrl.

Quand une requête est faite

Seules les commandes du schéma appellent un fournisseur ; les actions de Studio et du MCP exigent --allow-spend. Tout le reste, exécutions à blanc et estimations comprises, est local, sauf verbatra doctor --live, qui récupère une liste de langues de DeepL, Google ou LibreTranslate et n'envoie aucun texte.

Une exécution de translate n'envoie que les clés manquantes ou modifiées par rapport au fichier de verrouillage, moins les succès du cache, et un texte partagé une seule fois ; une clé épinglée n'est jamais envoyée. Ton résolveur DNS voit le nom d'hôte du fournisseur.

Ce que reçoit chaque fournisseur

FournisseurCe qui est envoyéOù ça va
anthropic, openai, gemini, openai-compatiblePar clé : le nom de la clé, le texte source, et la description ou le sens que porte ton fichier source. Par requête : les codes source et cible (après localeMap) et leurs noms anglais, ton tone, les termes du glossaire de la locale cible, les catégories de pluriel de la cible quand un lot contient des pluriels, les instructions fixes de verbatra, le nom du modèle et une limite de tokens de sortie.api.anthropic.com, api.openai.com, generativelanguage.googleapis.com, ou la baseUrl que tu as configurée. *_BASE_URL redirige les fournisseurs hébergés.
opencodeComme à la première ligne.opencode.ai, un point de terminaison fixe qu'aucun *_BASE_URL ne redirige.
deeplLe texte source de chaque clé, placeholders masqués Disponible à partir de 0.12.0, les codes de langue, un réglage de formalité quand ton tone en demande un avec une clé payante, et ton glossaryId. Ni noms de clé, ni descriptions, ni termes de glossaire.api.deepl.com, ou api-free.deepl.com pour une clé qui finit par :fx.
google-translateLe texte source de chaque clé, placeholders masqués Disponible à partir de 0.12.0, et les codes de langue.translation.googleapis.com
libretranslateLe texte source de chaque clé, placeholders masqués (une valeur avec de la syntaxe ICU n'est pas envoyée), les codes de langue, et LIBRETRANSLATE_API_KEY quand elle est définie.La baseUrl que tu as configurée.
noneRien.Nulle part.

Les SDK envoient aussi des en-têtes avec la bibliothèque, ton OS et Node.js. Ta clé d'API ne va qu'au point de terminaison configuré (google-translate l'envoie dans la chaîne de requête ?key=).

Protection des contenus sensibles Disponible à partir de 0.12.0

sensitiveData analyse, avant chaque requête, ce que le tableau ci-dessus envoie. Les détecteurs, patterns et allow sont sous Chaque clé. Le détecteur email ignore example.com, example.org, example.net et les domaines sous .example, .test, .invalid ou .localhost. Un motif est refusé s'il répète un groupe contenant un quantificateur ou une alternative, contient plus d'un *, + ou {n,}, ou se ramifie trop. Il lit les 2 000 premiers caractères d'un champ et s'arrête après une seconde ; un dépassement est une trouvaille (pattern-timeout-<n>).

modeEffet
warnEnvoie comme d'habitude ; un avis nomme les clés.
blockRetient la clé, donc la locale se termine partial.
redactEnvoie un jeton à la place de chaque correspondance dans la valeur et la restaure ; une correspondance dans une description ou un sens part en [redacted]. Une correspondance dans le nom de la clé, ou un jeton qui ne revient pas exactement une fois, retient la clé. Sur DeepL, Google et LibreTranslate, un jeton compte comme un placeholder, donc une valeur qu'ils ne peuvent pas protéger est retenue comme PLACEHOLDER_UNSUPPORTED.

block et redact laissent aussi de côté un terme du glossaire qui correspond. verbatra init écrit warn pour un fournisseur automatique. Pour un faux positif, ajoute le texte à allow ou retire son détecteur. verbatra check --sensitive analyse sans clé. Les noms dans du texte libre ne sont pas détectés.

Conservation et traitement des données chez le fournisseur

La conservation dépend du fournisseur et de ton contrat. Citations dans leur anglais d'origine, en septembre 2026.

FournisseurCe que dit le fournisseurTraitement des données
Anthropic"For Anthropic API users, we automatically delete inputs and outputs on our backend within 30 days of receipt or generation" (conservation). "By default, we will not use your inputs or outputs from our commercial products [...] to train our models" (entraînement). La conservation zéro est un accord par organisation (détails).Data Processing Addendum
OpenAI"data sent to the OpenAI API is not used to train or improve OpenAI models (unless you explicitly opt in to share data with us)"; "abuse monitoring logs are generated for all API feature usage and retained for up to 30 days, unless longer retention is required by law". Zero Data Retention et Modified Abuse Monitoring "are subject to prior approval by OpenAI", et /v1/chat/completions, le endpoint qu'appelle verbatra, y figure comme éligible (your data).Data Processing Addendum
GeminiSur le niveau gratuit (Unpaid Services), "human reviewers may read, annotate, and process your API input and output", et les conditions demandent de ne pas envoyer de "sensitive, confidential, or personal information". Sur les Paid Services, "Google doesn't use your prompts [...] or responses to improve our products" et les journalise "for a limited period of time, solely for detecting and preventing violations of the Prohibited Use Policy". Dans l'EEE, en Suisse et au Royaume-Uni, les conditions des Paid Services s'appliquent à tout usage, niveau gratuit compris (Gemini API terms). verbatra n'utilise ni le grounding ni le cache explicite, que la page de conservation zéro de Google exclut.Processor terms, que les Gemini API terms citent pour les Paid Services
DeepLPour DeepL API Free, la politique de confidentialité dit : "We process the content you upload and their translations or improvements for a limited period of time to train and improve our neural networks and algorithms." Pour Pro, "your texts will not be used to improve the quality of our services", et "After complete performance of the contractually agreed services all submitted texts or documents and their translations or improvements will be deleted."Data Processing Agreement, auquel renvoient les conditions DeepL Pro
Google Cloud Translation"text is held briefly in-memory in order to perform the translation and return the results to you", et "Google does not use the content you send to train and improve our Google Translation features" (data usage).Cloud Data Processing Addendum
OpenCodeFixée par OpenCode et le fournisseur du modèle vers lequel il route ; lis sa politique de confidentialité avant d'envoyer des chaînes confidentielles.Conditions d'utilisation
openai-compatible, LibreTranslateCe que fait ton propre serveur.Les tiennes

Garder les textes en interne

OptionMoyen
Pas de traduction automatiqueTravailler sans traduction automatique Disponible à partir de 0.12.0
Ton propre modèleopenai-compatible avec Ollama, LM Studio ou vLLM
Traduction automatique sans modèle de langagelibretranslate Disponible à partir de 0.12.0
L'imposerune politique réseau local-only, fixée dans la CI Disponible à partir de 0.12.0

Ce qui est écrit en local

FichierContientÀ commiter ?
Tes fichiers de localeles traductionsoui
verbatra.lock.jsonun hash de chaque chaîne source à partir de laquelle une traduction a été faiteoui
verbatra.provenance.jsonpar clé, le chemin d'écriture, le fournisseur et le modèle de la valeur, et toute décision de relecture avec le nom du relecteur ; aucun texte traduit ni horodatageoui
verbatra.cache.jsonle texte source et ses traductions, par fournisseur, modèle, ton, glossaire et localeMapnon, verbatra init l'ajoute au .gitignore
.verbatra-local/le statut de la dernière exécution, les signalements de relecture et la consommation de tokens, les pseudolocales générées, et les verrous d'écriture avec le nom d'hôte et l'ID de processus de l'exécution qui les détientnon, ignoré par git
.env, .env.localtes clés d'API, si tu les gardes làjamais, verbatra init les ajoute tous deux au .gitignore

Clés d'API

Les erreurs du fournisseur et la sortie de la CLI remplacent par [REDACTED] la valeur de chaque variable de clé connue, si elle compte 8 caractères ou plus, ainsi que tout ce qui ressemble à une clé d'API.

Studio et MCP

Studio s'attache à 127.0.0.1 seulement, avec un jeton de session, rejette un autre Host ou Origin, et sa Content-Security-Policy bloque les accès à Internet.

Le serveur MCP parle via stdio sans ouvrir de port. Ses outils de lecture renvoient textes, glossaire et statut ; --redact-values masque chaque valeur. history.list donne l'auteur de chaque commit (pas avec --redact-values), jamais l'e-mail.

Un client MCP, ou un agent navigateur qui utilise --expose-agent-tools de Studio, envoie ce qu'il lit à son modèle d'IA, sous les conditions de ce fournisseur. Les outils d'agent de Studio ne sont jamais masqués.

Traductions générées par IA et provenance

Si les règles de transparence du règlement européen sur l'IA (Article 50) s'appliquent, ton conseil juridique le dira. verbatra enregistre le fournisseur et le modèle de chaque valeur traduite automatiquement.

Fichier d'audit Disponible à partir de 0.12.0

verbatra report provenance --json transforme cette trace en fichier d'audit par clé.

Liste de contrôle pour une revue DPA ou NDA

  1. Décide si les textes peuvent quitter ton réseau ; sinon, garde-les en interne.
  2. Pour un fournisseur hébergé, prends un niveau payant (conditions du fournisseur) et signe ses conditions de traitement des données.
  3. Lance verbatra check --sensitive.
  4. Garde les clés d'API dans un coffre à secrets ou un .env ignoré par git, et lance verbatra doctor.
  5. Décide quels agents IA peuvent utiliser Studio ou le serveur MCP, et s'ils ont besoin de --redact-values.
  6. Commite verbatra.provenance.json, et archive verbatra report provenance --json à chaque version.
  7. Joins le manifeste de verbatra doctor --data-flow --json avec chaque hôte et les données qu'il reçoit.
Modifier sur GitHub

Sur cette page