Saltar al contenido

Docs / Conceptos

Página traducida automáticamente

Esta página se tradujo automáticamente, así que puede contener errores o sonar un poco rara. La versión en inglés es la fuente de la verdad. Leer el original en inglés.

Tratamiento de datos y privacidad

Qué envía la herramienta verbatra fuera de tu máquina, a quién, y qué guarda en local, para que una revisión de seguridad o legal pueda aprobarla.

Qué envían la CLI, el SDK, Studio y el servidor MCP de verbatra fuera de tu máquina o de tu CI. Este sitio web se rige por su política de privacidad.

La respuesta corta

  • Sin telemetría, sin comprobación de actualizaciones y sin ningún servidor de verbatra al que llamar.
  • Un único destino saliente: tu proveedor, solo cuando un comando traduce; ninguno con provider: { id: "none" }. Todo lo demás se queda en local, Studio y el servidor MCP incluidos.
  • Solo se envía lo que necesita traducción: ni claves sin cambios, ni aciertos de caché, ni claves protegidas (salvo ediciones humanas desactualizadas con humanEdits: "suggest").
  • Las claves de API solo vienen de variables de entorno y nunca aparecen en un mensaje.

Cómo fluyen los datos

 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 flecha es HTTPS, salvo que openai-compatible y libretranslate pueden usar http simple hacia tu propia baseUrl.

Cuándo se hace una petición

Solo los comandos del diagrama llaman a un proveedor; las acciones de Studio y MCP necesitan --allow-spend. Todo lo demás, ejecuciones de prueba y estimaciones incluidas, es local, salvo verbatra doctor --live, que obtiene una lista de idiomas de DeepL, Google o LibreTranslate y no envía ningún texto.

Una ejecución de translate envía solo las claves ausentes o cambiadas respecto a el archivo de bloqueo, menos los aciertos de la caché, y el texto compartido una sola vez; una clave fijada nunca se envía. Tu resolutor DNS ve el nombre del host del proveedor.

Qué recibe cada proveedor

ProveedorQué se envíaAdónde va
anthropic, openai, gemini, openai-compatiblePor clave: el nombre de la clave, el texto de origen y la descripción o el significado que lleva tu archivo de origen. Por petición: los códigos de origen y destino (tras localeMap) y sus nombres en inglés, tu tone, los términos del glosario del locale de destino, las categorías de plural del destino cuando un lote tiene plurales, las instrucciones fijas de verbatra, el nombre del modelo y un límite de tokens de salida.api.anthropic.com, api.openai.com, generativelanguage.googleapis.com o la baseUrl que configuraste. *_BASE_URL redirige los alojados.
opencodeLo mismo que en la primera fila.opencode.ai, un endpoint fijo que ningún *_BASE_URL redirige.
deeplEl texto de origen de cada clave, con los placeholders enmascarados Disponible a partir de 0.12.0, los códigos de idioma, un ajuste de formalidad cuando tu tone lo pide con una clave de pago, y tu glossaryId. Ni nombres de clave, ni descripciones, ni términos del glosario.api.deepl.com, o api-free.deepl.com para una clave que acaba en :fx.
google-translateEl texto de origen de cada clave, con los placeholders enmascarados Disponible a partir de 0.12.0, y los códigos de idioma.translation.googleapis.com
libretranslateEl texto de origen de cada clave, con los placeholders enmascarados (un valor con sintaxis ICU no se envía), los códigos de idioma y LIBRETRANSLATE_API_KEY si está definida.La baseUrl que configuraste.
noneNada.A ninguna parte.

Los SDK también envían cabeceras con la biblioteca, tu sistema operativo y Node.js. Tu clave de API solo va al endpoint configurado (google-translate la envía en la cadena de consulta ?key=).

Protección de contenido sensible Disponible a partir de 0.12.0

sensitiveData revisa, antes de cada petición, lo que la tabla anterior envía. Los detectores, patterns y allow están en Cada clave. El detector email omite example.com, example.org, example.net y los dominios bajo .example, .test, .invalid o .localhost. Se rechaza un patrón que repite un grupo con un cuantificador o una alternativa, contiene más de un *, + o {n,}, o se ramifica demasiado. Lee los primeros 2.000 caracteres de un campo y se detiene al cabo de un segundo; agotar el tiempo es un hallazgo (pattern-timeout-<n>).

modeEfecto
warnEnvía como siempre; un aviso nombra las claves.
blockRetiene la clave, así que el locale termina partial.
redactEnvía un token por cada coincidencia en el valor y restaura la coincidencia; una coincidencia en una descripción o un significado se envía como [redacted]. Una coincidencia en el nombre de la clave, o un token que no vuelve exactamente una vez, retiene la clave. En DeepL, Google y LibreTranslate un token cuenta como placeholder, así que un valor que no pueden proteger se retiene como PLACEHOLDER_UNSUPPORTED.

block y redact además dejan fuera un término del glosario que coincide. verbatra init escribe warn para un proveedor automático. Ante un falso positivo, añade el texto a allow o quita su detector. verbatra check --sensitive revisa sin clave. Los nombres en texto libre no se detectan.

Retención y tratamiento de datos del proveedor

La retención la deciden el proveedor y tu contrato. Citas en su inglés original, a septiembre de 2026.

ProveedorQué dice el proveedorTratamiento de datos
Anthropic"For Anthropic API users, we automatically delete inputs and outputs on our backend within 30 days of receipt or generation" (retención). "By default, we will not use your inputs or outputs from our commercial products [...] to train our models" (entrenamiento). La retención cero es un acuerdo por organización (detalles).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 y Modified Abuse Monitoring "are subject to prior approval by OpenAI", y /v1/chat/completions, el endpoint al que llama verbatra, figura como elegible (your data).Data Processing Addendum
GeminiEn el nivel gratuito (Unpaid Services), "human reviewers may read, annotate, and process your API input and output", y las condiciones piden no enviar "sensitive, confidential, or personal information". En Paid Services, "Google doesn't use your prompts [...] or responses to improve our products" y los registra "for a limited period of time, solely for detecting and preventing violations of the Prohibited Use Policy". En el EEE, Suiza y el Reino Unido, las condiciones de Paid Services se aplican a todo uso, nivel gratuito incluido (Gemini API terms). verbatra no usa ni grounding ni caché explícita, que la página de retención cero de Google excluye.Processor terms, que las Gemini API terms citan para Paid Services
DeepLPara DeepL API Free, la política de privacidad dice: "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." Para Pro, "your texts will not be used to improve the quality of our services", y "After complete performance of the contractually agreed services all submitted texts or documents and their translations or improvements will be deleted."Data Processing Agreement, al que remiten las condiciones de DeepL Pro
Google Cloud Translation"text is held briefly in-memory in order to perform the translation and return the results to you", y "Google does not use the content you send to train and improve our Google Translation features" (data usage).Cloud Data Processing Addendum
OpenCodeLo fijan OpenCode y el proveedor del modelo al que reenvía; lee su política de privacidad antes de enviar cadenas confidenciales.Términos del servicio
openai-compatible, LibreTranslateLo que haga tu propio servidor.Las tuyas

Mantener los textos en casa

OpciónCómo
Sin traducción automáticaTrabajar sin traducción automática Disponible a partir de 0.12.0
Tu propio modeloopenai-compatible con Ollama, LM Studio o vLLM
Traducción automática sin modelo de lenguajelibretranslate Disponible a partir de 0.12.0
Hazlo cumpliruna política de red local-only, fijada en CI Disponible a partir de 0.12.0

Qué se escribe en local

ArchivoContiene¿Lo confirmas?
Tus archivos de localelas traduccionessí
verbatra.lock.jsonun hash de cada texto de origen del que salió una traducciónsí
verbatra.provenance.jsonpor clave, la vía de escritura, el proveedor y el modelo del valor, y cualquier decisión de revisión con el nombre del revisor; sin texto traducido ni marcas de tiemposí
verbatra.cache.jsonel texto de origen y sus traducciones, por proveedor, modelo, tono, glosario y localeMapno, verbatra init lo añade a .gitignore
.verbatra-local/el estado de la última ejecución, las señales de revisión y el uso de tokens, los pseudolocales generados y los bloqueos de escritura con el nombre de host y el ID de proceso de la ejecución que los tieneno, está en .gitignore
.env, .env.localtus claves de API, si las guardas ahínunca, verbatra init añade ambos a .gitignore

Claves de API

Los errores del proveedor y la salida de la CLI sustituyen por [REDACTED] el valor de cada variable de clave conocida, si tiene 8 caracteres o más, y todo lo que tenga forma de clave de API.

Studio y MCP

Studio escucha solo en 127.0.0.1, con un token de sesión, rechaza otro Host u Origin, y su Content-Security-Policy bloquea las cargas desde internet.

El servidor MCP habla por stdio sin abrir puertos. Sus herramientas de lectura devuelven textos, glosario y estado; --redact-values enmascara cada valor. history.list da el autor de cada commit (no con --redact-values), nunca el correo.

Un cliente MCP, o un agente de navegador que usa --expose-agent-tools de Studio, envía lo que lee a su modelo de IA, bajo las condiciones de ese proveedor. Las herramientas de agente de Studio nunca se ocultan.

Traducciones generadas por IA y procedencia

Si las reglas de transparencia del Reglamento de IA de la UE (AI Act) (artículo 50) se aplican lo decide tu asesoría jurídica. verbatra registra el proveedor y el modelo de cada valor traducido automáticamente.

Archivo de auditoría Disponible a partir de 0.12.0

verbatra report provenance --json convierte ese registro en un archivo de auditoría por clave.

Lista de comprobación para una revisión de DPA o NDA

  1. Decide si los textos pueden salir de tu red; si no, mantenlos en casa.
  2. Con un proveedor alojado, usa un nivel de pago (condiciones del proveedor) y firma sus condiciones de tratamiento de datos.
  3. Ejecuta verbatra check --sensitive.
  4. Guarda las claves de API en un almacén de secretos o en un .env ignorado por git, y ejecuta verbatra doctor.
  5. Decide qué agentes de IA pueden usar Studio o el servidor MCP, y si necesitan --redact-values.
  6. Confirma verbatra.provenance.json y archiva verbatra report provenance --json en cada versión.
  7. Adjunta el manifiesto de verbatra doctor --data-flow --json con cada host y los datos que recibe.
Editar en GitHub

En esta página