Primeros pasos

Qué sale de tu equipo

Nada, por defecto. Qué evalúa zn-gate localmente, qué puede enviar y los ajustes que lo controlan.

Ver .md

Nada, por defecto. Todo lo que hace zn-gate se ejecuta en tu equipo. La nube es opcional, está desactivada hasta que la actives, y solo recibe texto de prompts que antes ha sido redactado localmente para eliminar secretos.

Por tipo de dato (zn-gate 1.5.1)

Dato Evaluado ¿Se envía a algún lugar?
Salida de herramientas (check_tool_result, shield) Localmente Nunca, en ninguna configuración
Argumentos de llamadas a herramientas (check_tool_call, shield) Localmente Nunca, en ninguna configuración
Descripciones de herramientas MCP y de parámetros (shield) Localmente Nunca, en ninguna configuración
Prompts (analyze_prompt, zn-gate analyze, analyze() de Python) Localmente Solo si estableces ambas ZN_CLOUD=1 y ZN_API_KEY. Los secretos se redactan localmente antes de enviarse.
Registro de auditoría local (~/.zn/evidence.jsonl) Escrito localmente Nunca
Valores secretos en el almacén (Scrubber, npm) Cifrados localmente Nunca a zn. zn entrega un valor solo a un programa que hayas permitido (zn run) o a una solicitud a un host que hayas permitido (secrets_http_request, solo cabeceras por defecto). Lo que haga con él un programa permitido depende de ese programa, y un almacén desbloqueado responde a cualquier programa de tu usuario del sistema operativo (límites)
Registro de auditoría del almacén (zn vault log) Escrito localmente, nunca los valores Nunca

En Python, evaluate, guard, check_tool_call, check_tool_result, sanitize_tool_result, redact_secrets y las integraciones de LangChain, CrewAI, LlamaIndex y Promptfoo son siempre locales. La única función que puede llegar a la red es analyze(), bajo las mismas dos condiciones.

Los ajustes que lo controlan

  • ZN_API_KEY por sí sola no activa nada.
  • ZN_CLOUD=1 junto con ZN_API_KEY permite que el análisis de prompts también pida al modelo en la nube una segunda opinión.
  • ZN_LOCAL_ONLY=true (o --local-only) fuerza el modo solo local, incluso con ZN_CLOUD=1.

Revisa tu propia configuración en cualquier momento:

npx -y zn-gate status

La herramienta MCP zn_status devuelve la misma información a tu agente. Todos los ajustes: Configuración.

Cuando la nube está activada

Con ZN_CLOUD=1 y una clave, un prompt primero lo revisan las reglas locales. Si lo bloquean, no se envía nada. En caso contrario, el texto, con los secretos sustituidos por marcadores como [REDACTED_AWS_KEY], se envía a api.usezn.com para obtener una segunda opinión del modelo Galvanize 2. Si no se puede contactar con la nube, zn-gate devuelve el resultado local. Retención y tratamiento de lo que recibe la nube: política de privacidad.

Versiones anteriores

zn-gate 1.4.0 y anteriores (npm): con ZN_API_KEY definida, la salida de herramientas y los argumentos de llamadas a herramientas que no se bloqueaban localmente se enviaban a api.usezn.com sin redacción. La 1.4.1 elimina esa vía. Si usaste la 1.4.0 con ZN_API_KEY, actualiza y considera rotar cualquier credencial que pudiera haber aparecido en la salida de herramientas. Detalles en el CHANGELOG.

Python 1.4.0 y anteriores: solo analyze() y zn-gate analyze enviaban texto, cuando ZN_API_KEY estaba definida, y sin redacción.