Tus secretos se quedan en tu equipo.

Latet es un cortafuegos local de privacidad para agentes de IA. Antes de que una petición salga de tu equipo, sustituye cada secreto y cada dato personal por un valor ficticio realista, y restaura los reales cuando llega la respuesta. Tu agente sigue trabajando; el modelo nunca los ve.

Latet en 45 segundos

Pruébalo tú

Sin Latet, una clave pegada en el chat ya salió de tu equipo y hay que revocarla. Con Latet, el modelo recibe un valor ficticio con el mismo formato.

El modelo escribe la configuración con la clave ficticia. Latet restaura la real antes de que se guarde el archivo.

Tú
Configura los pagos con esta clave: sk_live_51Hq8KzLmN3pQrStUvWxYz0aBcDeFgHiJ

El modelo escribe la configuración con la clave ficticia. Latet restaura la real antes de que se guarde el archivo.

Modelo write config/payments.toml
[payments]
secret_key = "sk_live_51Hq8KzLmN3pQrStUvWxYz0aBcDeFgHiJ"
En tu equipo
Tú
Configura los pagos con esta clave: sk_live_51Hq8KzLmN3pQrStUvWxYz0aBcDeFgHiJ
Lo que recibe el modelo
Tú
Configura los pagos con esta clave: sk_live_79Tl4NbCiV3iIkSqUtFmWc2lVlSeFzJsM
En tu equipo
Tú
Configura los pagos con esta clave: sk_live_51Hq8KzLmN3pQrStUvWxYz0aBcDeFgHiJ
Modelo write config/payments.toml
[payments]
secret_key = "sk_live_51Hq8KzLmN3pQrStUvWxYz0aBcDeFgHiJ"
Lo que responde el modelo
Tú
Configura los pagos con esta clave: sk_live_79Tl4NbCiV3iIkSqUtFmWc2lVlSeFzJsM
Modelo write config/payments.toml
[payments]
secret_key = "sk_live_79Tl4NbCiV3iIkSqUtFmWc2lVlSeFzJsM"

Para responderte, tu agente lee el registro. El correo, el número de tarjeta, la dirección IP y el token salen como valores ficticios.

El modelo responde con los valores ficticios que recibió. Latet restaura los reales antes de que leas la respuesta.

Tú
¿Por qué se rechazó el pago de j.okafor@fabrikam-logistics.com?
tail -n 3 logs/payments.log
09:12:44 ERROR payment declined for j.okafor@fabrikam-logistics.com
09:12:44 card 4111 1111 1111 1111, client 81.2.69.160
09:12:45 retry, Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1XzdmM2EifQ.c2lnbmF0dXJlLW5vdC1yZWFs

El modelo responde con los valores ficticios que recibió. Latet restaura los reales antes de que leas la respuesta.

Modelo
Se rechazó el pago de j.okafor@fabrikam-logistics.com. Se hizo con la tarjeta 4111 1111 1111 1111 desde 81.2.69.160.
En tu equipo
Tú
¿Por qué se rechazó el pago de j.okafor@fabrikam-logistics.com?
tail -n 3 logs/payments.log
09:12:44 ERROR payment declined for j.okafor@fabrikam-logistics.com
09:12:44 card 4111 1111 1111 1111, client 81.2.69.160
09:12:45 retry, Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1XzdmM2EifQ.c2lnbmF0dXJlLW5vdC1yZWFs
Lo que recibe el modelo
Tú
¿Por qué se rechazó el pago de laura.mitchell@woodford-89e8.example?
tail -n 3 logs/payments.log
09:12:44 ERROR payment declined for laura.mitchell@woodford-89e8.example
09:12:44 card 4345 0900 0435 1539, client 203.0.113.135
09:12:45 retry, Authorization: Bearer eyJkmZchPeKCOvW3TwM3.eyJpnFLbWgI7UfbrP6MzcN.z6gesxN9vFJdPD5ydW4qHSWo
En tu equipo
Tú
¿Por qué se rechazó el pago de j.okafor@fabrikam-logistics.com?
Modelo
Se rechazó el pago de j.okafor@fabrikam-logistics.com. Se hizo con la tarjeta 4111 1111 1111 1111 desde 81.2.69.160.
Lo que responde el modelo
Tú
¿Por qué se rechazó el pago de laura.mitchell@woodford-89e8.example?
Modelo
Se rechazó el pago de laura.mitchell@woodford-89e8.example. Se hizo con la tarjeta 4345 0900 0435 1539 desde 203.0.113.135.

Tu agente lee los dos pedidos de la base de datos.

El modelo escribe el cambio con los valores que recibió. Latet restaura los reales y la consulta se ejecuta con ellos en tu equipo.

Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
1042,shipped,2026-10-03,Emily Carter,emily.carter@northwind-legal.com,129.90
1043,refunded,2026-10-04,Jon Okafor,j.okafor@fabrikam-logistics.com,48.50

El modelo escribe el cambio con los valores que recibió. Latet restaura los reales y la consulta se ejecuta con ellos en tu equipo.

Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'j.okafor@fabrikam-logistics.com';
Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
1042,shipped,2026-10-03,Emily Carter,emily.carter@northwind-legal.com,129.90
1043,refunded,2026-10-04,Jon Okafor,j.okafor@fabrikam-logistics.com,48.50

El modelo escribe el cambio con los valores que recibió. Latet restaura los reales y la consulta se ejecuta con ellos en tu equipo.

Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'j.okafor@fabrikam-logistics.com';
Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
1042,shipped,2026-10-03,Emily Carter,emily.carter@northwind-legal.com,129.90
1043,refunded,2026-10-04,Jon Okafor,j.okafor@fabrikam-logistics.com,48.50

El modelo escribe el cambio con los valores que recibió. Latet restaura los reales y la consulta se ejecuta con ellos en tu equipo.

Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'j.okafor@fabrikam-logistics.com';
En tu equipo
Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
1042,shipped,2026-10-03,Emily Carter,emily.carter@northwind-legal.com,129.90
1043,refunded,2026-10-04,Jon Okafor,j.okafor@fabrikam-logistics.com,48.50
Lo que recibe el modelo
Tú
Cambia a shipped el estado del pedido de laura.mitchell@woodford-89e8.example.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
1042,shipped,2026-10-03,Emily Carter,sarah.adams@lamna-1c89.example,129.90
1043,refunded,2026-10-04,Jon Okafor,laura.mitchell@woodford-89e8.example,48.50
En tu equipo
Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'j.okafor@fabrikam-logistics.com';
Lo que responde el modelo
Tú
Cambia a shipped el estado del pedido de laura.mitchell@woodford-89e8.example.
Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'laura.mitchell@woodford-89e8.example';
En tu equipo
Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
1042,shipped,2026-10-03,Emily Carter,emily.carter@northwind-legal.com,129.90
1043,refunded,2026-10-04,Jon Okafor,j.okafor@fabrikam-logistics.com,48.50
Lo que recibe el modelo
Tú
Cambia a shipped el estado del pedido de laura.mitchell@woodford-89e8.example.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
3595,fewmppu,2025-12-22,Ytrac Rpqrbj,sarah.adams@lamna-1c89.example,406.20
9786,kcfppzrb,2025-10-02,Emd Aqcgea,laura.mitchell@woodford-89e8.example,93.47
En tu equipo
Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'j.okafor@fabrikam-logistics.com';
Lo que responde el modelo
Tú
Cambia a shipped el estado del pedido de laura.mitchell@woodford-89e8.example.
Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'laura.mitchell@woodford-89e8.example';
En tu equipo
Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
1042,shipped,2026-10-03,Emily Carter,emily.carter@northwind-legal.com,129.90
1043,refunded,2026-10-04,Jon Okafor,j.okafor@fabrikam-logistics.com,48.50
Lo que recibe el modelo
Tú
Cambia a shipped el estado del pedido de laura.mitchell@woodford-89e8.example.
psql shop --csv -c "SELECT * FROM orders LIMIT 2"
id,status,created_at,customer,email,amount
1042,shipped,2026-10-03,Ytrac Rpqrbj,sarah.adams@lamna-1c89.example,406.20
1043,refunded,2026-10-04,Emd Aqcgea,laura.mitchell@woodford-89e8.example,93.47
En tu equipo
Tú
Cambia a shipped el estado del pedido de j.okafor@fabrikam-logistics.com.
Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'j.okafor@fabrikam-logistics.com';
Lo que responde el modelo
Tú
Cambia a shipped el estado del pedido de laura.mitchell@woodford-89e8.example.
Modelo psql shop
UPDATE orders SET status = 'shipped'
WHERE email = 'laura.mitchell@woodford-89e8.example';

Tu agente lee el pedido desde la API de la tienda.

El modelo responde con los valores que recibió. Latet restaura los reales antes de que leas la respuesta.

Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 1042,
  "status": "shipped",
  "created_at": "2026-10-03",
  "customer": "Emily Carter",
  "email": "emily.carter@northwind-legal.com",
  "total": 129.90,
  "note": "Leave the parcel at reception"
}

El modelo responde con los valores que recibió. Latet restaura los reales antes de que leas la respuesta.

Modelo
El pedido 1042 está en estado shipped. El correo del cliente es emily.carter@northwind-legal.com.
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 1042,
  "status": "shipped",
  "created_at": "2026-10-03",
  "customer": "Emily Carter",
  "email": "emily.carter@northwind-legal.com",
  "total": 129.90,
  "note": "Leave the parcel at reception"
}

El modelo responde con los valores que recibió. Latet restaura los reales antes de que leas la respuesta.

Modelo
El pedido 1042 está en estado shipped. El correo del cliente es emily.carter@northwind-legal.com.
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 1042,
  "status": "shipped",
  "created_at": "2026-10-03",
  "customer": "Emily Carter",
  "email": "emily.carter@northwind-legal.com",
  "total": 129.90,
  "note": "Leave the parcel at reception"
}

El modelo responde con los valores que recibió. Latet restaura los reales antes de que leas la respuesta.

Modelo
El pedido 1042 está en estado shipped. El correo del cliente es emily.carter@northwind-legal.com.
En tu equipo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 1042,
  "status": "shipped",
  "created_at": "2026-10-03",
  "customer": "Emily Carter",
  "email": "emily.carter@northwind-legal.com",
  "total": 129.90,
  "note": "Leave the parcel at reception"
}
Lo que recibe el modelo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 1042,
  "status": "shipped",
  "created_at": "2026-10-03",
  "customer": "Emily Carter",
  "email": "sarah.adams@lamna-1c89.example",
  "total": 129.90,
  "note": "Leave the parcel at reception"
}
En tu equipo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
Modelo
El pedido 1042 está en estado shipped. El correo del cliente es emily.carter@northwind-legal.com.
Lo que responde el modelo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
Modelo
El pedido 1042 está en estado shipped. El correo del cliente es sarah.adams@lamna-1c89.example.
En tu equipo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 1042,
  "status": "shipped",
  "created_at": "2026-10-03",
  "customer": "Emily Carter",
  "email": "emily.carter@northwind-legal.com",
  "total": 129.90,
  "note": "Leave the parcel at reception"
}
Lo que recibe el modelo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 3595,
  "status": "fewmppu",
  "created_at": "2025-12-22",
  "customer": "Ytrac Rpqrbj",
  "email": "sarah.adams@lamna-1c89.example",
  "total": 406.20,
  "note": "Bcagq llh ayeftu zc gtyzfybdm"
}
En tu equipo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
Modelo
El pedido 1042 está en estado shipped. El correo del cliente es emily.carter@northwind-legal.com.
Lo que responde el modelo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
Modelo
El pedido 1042 está en estado fewmppu. El correo del cliente es sarah.adams@lamna-1c89.example.
En tu equipo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 1042,
  "status": "shipped",
  "created_at": "2026-10-03",
  "customer": "Emily Carter",
  "email": "emily.carter@northwind-legal.com",
  "total": 129.90,
  "note": "Leave the parcel at reception"
}
Lo que recibe el modelo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
curl -s https://api.shop.internal/orders/1042
{
  "id": 1042,
  "status": "shipped",
  "created_at": "2026-10-03",
  "customer": "Ytrac Rpqrbj",
  "email": "sarah.adams@lamna-1c89.example",
  "total": 406.20,
  "note": "Bcagq llh ayeftu zc gtyzfybdm"
}
En tu equipo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
Modelo
El pedido 1042 está en estado shipped. El correo del cliente es emily.carter@northwind-legal.com.
Lo que responde el modelo
Tú
¿En qué estado está el pedido 1042 y cuál es el correo del cliente?
Modelo
El pedido 1042 está en estado shipped. El correo del cliente es sarah.adams@lamna-1c89.example.

Tu agente lee una captura de pantalla. Con el reconocimiento de texto opcional, Latet lee el texto de la imagen en tu equipo y cubre cada valor con su valor ficticio.

El modelo responde con los valores ficticios que leyó en la imagen. Latet restaura los valores reales antes de que leas la respuesta.

Tú
Reembolsa a este cliente: sus datos están en la captura de pantalla.
Un ticket de soporte con el correo, el IBAN y el teléfono del cliente El mismo ticket tal como lo recibe el modelo, con un correo, un IBAN y un teléfono ficticios pintados encima de los reales

El modelo responde con los valores ficticios que leyó en la imagen. Latet restaura los valores reales antes de que leas la respuesta.

Modelo
Reembolso listo para emily.carter@northwind-legal.com, al IBAN GB82WEST12345698765432. La confirmación se envía por SMS al +44 20 7946 0958.
En tu equipo
Tú
Reembolsa a este cliente: sus datos están en la captura de pantalla.
Un ticket de soporte con el correo, el IBAN y el teléfono del cliente
Lo que recibe el modelo
Tú
Reembolsa a este cliente: sus datos están en la captura de pantalla.
El mismo ticket tal como lo recibe el modelo, con un correo, un IBAN y un teléfono ficticios pintados encima de los reales
En tu equipo
Tú
Reembolsa a este cliente: sus datos están en la captura de pantalla.
Un ticket de soporte con el correo, el IBAN y el teléfono del cliente
Modelo
Reembolso listo para emily.carter@northwind-legal.com, al IBAN GB82WEST12345698765432. La confirmación se envía por SMS al +44 20 7946 0958.
Lo que responde el modelo
Tú
Reembolsa a este cliente: sus datos están en la captura de pantalla.
El mismo ticket tal como lo recibe el modelo, con un correo, un IBAN y un teléfono ficticios pintados encima de los reales
Modelo
Reembolso listo para sarah.adams@lamna-1c89.example, al IBAN GB59UJHW04024437198939. La confirmación se envía por SMS al +44 21 3923 5073.

Cada valor ficticio que ves aquí lo generó el propio Latet. Pasa el cursor sobre un valor, o tócalo, para ver su equivalente.

Cómo funciona

Una petición, de tu agente al modelo y de vuelta.

  1. Encuentra lo sensible

    Antes de que salga nada, Latet lee la petición. Encuentra secretos como claves de API, tokens, contraseñas y claves privadas. Encuentra datos personales como direcciones de correo, números de teléfono, IBAN, números de tarjeta y números de identificación y fiscales de 15 países. También encuentra los términos que añades tú y la identidad de este equipo.

    En tu equipo
    Tú
    Reembolsa a emily.carter@northwind-legal.com en el IBAN GB82WEST12345698765432 y confírmalo por SMS al +44 20 7946 0958.
    Lo que recibe el modelo

    …

  2. Los sustituye por valores ficticios realistas

    Cada valor se convierte en uno ficticio con el mismo formato, y un mismo valor recibe siempre el mismo valor ficticio. Para el modelo, el código y la configuración siguen teniendo sentido.

    En tu equipo
    Tú
    Reembolsa a emily.carter@northwind-legal.com en el IBAN GB82WEST12345698765432 y confírmalo por SMS al +44 20 7946 0958.
    Lo que recibe el modelo
    Tú
    Reembolsa a sarah.adams@lamna-1c89.example en el IBAN GB59UJHW04024437198939 y confírmalo por SMS al +44 21 3923 5073.
  3. Restaura los valores reales

    La respuesta vuelve con los valores ficticios. En tu equipo, Latet restaura los originales en las respuestas, el texto en streaming y las llamadas a herramientas, así que los archivos que escribe tu agente llevan los valores reales.

    En tu equipo
    Tú
    Reembolsa a emily.carter@northwind-legal.com en el IBAN GB82WEST12345698765432 y confírmalo por SMS al +44 20 7946 0958.
    Modelo
    Reembolso listo para emily.carter@northwind-legal.com, en el IBAN GB82WEST12345698765432. La confirmación se envía por SMS al +44 20 7946 0958.
    Lo que responde el modelo
    Tú
    Reembolsa a sarah.adams@lamna-1c89.example en el IBAN GB59UJHW04024437198939 y confírmalo por SMS al +44 21 3923 5073.
    Modelo
    Reembolso listo para sarah.adams@lamna-1c89.example, en el IBAN GB59UJHW04024437198939. La confirmación se envía por SMS al +44 21 3923 5073.

Todo se ejecuta en tu equipo: no hay ningún servicio de Latet en la nube, ni telemetría, ni analítica.

Para un equipo o una empresa, un solo Latet en un servidor tuyo enmascara lo que todos los ordenadores y programas le envían por HTTPS. Cada persona y cada programa tiene su propio espacio. Tampoco en ese caso va nada a una nube de Latet. Latet en un servidor

Cómo funciona, paso a paso

Qué protege

Los agentes leen por ti, y los autónomos lo hacen solos, durante horas. Latet revisa cada petición antes de que salga, venga de donde venga el texto.

  • Tus prompts

    Latet revisa lo que escribes. Cada valor se convierte en uno ficticio con el mismo formato, y también los nombres si usas el modelo de nombres local opcional.

    Verlo en la demo
  • Archivos que lee el agente

    Latet enmascara claves, contraseñas y datos personales en archivos .env, configuraciones y exportaciones de clientes. Los archivos que escribe el agente recuperan los valores reales.

    Verlo en la demo
  • Salida de comandos y registros

    Latet enmascara tokens, direcciones de correo, direcciones IP públicas y números de identificación en registros, trazas de error y salidas de comandos.

    Verlo en la demo
  • Consultas a bases de datos

    Las columnas secretas siempre se enmascaran. Con el modo de datos estricto se enmascara cada valor, con valores ficticios que no rompen los joins ni los recuentos.

    Verlo en la demo
  • Capturas de pantalla e imágenes

    Con el reconocimiento de texto opcional, Latet lee en tu equipo el texto de cada imagen incluida en una petición y cubre cada valor con su valor ficticio. Una imagen que no puede leer no se envía.

    Verlo en la demo

Latet también protege las páginas web, las instrucciones como CLAUDE.md y lo que ningún patrón detecta.

Todo lo que protege Latet

Cada petición, en un panel

Un panel local muestra cada petición que enviaron tus agentes. Pone el original de tu equipo junto a lo que recibió el modelo, y marca cada valor enmascarado con su tipo y la regla que lo detectó.

Un intercambio en el panel: cada bloque de la petición tal como está en este equipo, junto a lo que se envió al modelo, con todos los valores enmascarados resaltados

Funciona con los agentes que usas

Latet se sitúa entre tu agente y su proveedor, y funciona con el inicio de sesión del propio agente o con tus claves de API. Las peticiones siguen llegando al mismo proveedor, después de que Latet las haya revisado o enmascarado.

Agentes de programación

  • Claude Code: CLI, VS Code y JetBrains, con una suscripción Pro o Max o una clave de API
  • Codex: CLI y Desktop, con ChatGPT o una clave de API
  • OpenCode, con proveedores que funcionan con clave de API
  • Gemini CLI, con una clave de API de Gemini o Vertex AI
  • GitHub Copilot, JetBrains Junie y AI Assistant, Zed, Cline, Kilo Code, Continue, Qwen Code, Crush y otras herramientas, con tu clave de API

Agentes autónomos

Hermes Agent, OpenClaw, Goose, OpenHands y cualquier agente que acepte una URL base compatible con OpenAI

En el trabajo

Claude Code y Codex a través de la puerta de enlace de LLM de tu empresa, Amazon Bedrock, Google Vertex, Microsoft Foundry o Azure OpenAI

Scripts y SDK

Los SDK de OpenAI, Anthropic y Google, LangChain, LangGraph, AutoGen, CrewAI, Aider, etc.

Latet no cubre Chat y Cowork de Claude Desktop con la sesión de Claude iniciada, las sesiones en la nube ni Cursor, Windsurf y las demás herramientas cuyas peticiones salen de los servidores del fabricante, no de tu equipo.

Configura tu agente

Se instala con un comando

No hacen falta permisos de administrador: todo se instala en tu cuenta de usuario. El instalador añade uv, el gestor de herramientas de Python, si aún no lo tienes, y después instala Latet. No cambia nada más: no toca los ajustes de tus agentes ni añade nada que arranque al iniciar sesión.

macOS y Linux
curl -LsSf https://raw.githubusercontent.com/Latet-AI/latet/main/scripts/install.sh | sh
Windows (PowerShell)
irm https://raw.githubusercontent.com/Latet-AI/latet/main/scripts/install.ps1 | iex

Después

  1. latet tutorial Mira Latet en acción en unos 30 minutos, en tu navegador, con un agente simulado, un modelo simulado y datos inventados. Nada sale de tu equipo. Más sobre el tutorial
  2. latet claude latet codex Pasa una sesión de tu agente por Latet, sin cambiar ningún ajuste.
  3. latet global-install Pasa tus agentes por Latet de forma permanente, cuando encaje en tu trabajo.
Requisitos y otras formas de instalarlo

Ediciones

Latet tiene dos ediciones. La Community Edition protege a personas y equipos, y es gratis para cualquier empresa. La Enterprise Edition, que llegará pronto, añade lo que necesita el equipo de seguridad de una empresa: reglas que se aplican a todos y que nadie puede relajar, decisiones tomadas de forma centralizada y cifras para sus auditorías.

Latet Community Edition

Incluye todo lo que protege a personas y equipos, gratis para el trabajo propio de cualquier empresa, sea cual sea su tamaño.

En tu ordenador

Para una persona, incluye todo lo anterior: el enmascaramiento, el panel, el revisor local y el Revisor en directo, tus propios términos y reglas, y el tutorial.

En un servidor, para un equipo

Un solo Latet da servicio a todos los ordenadores de un equipo o de una empresa, y a los programas que llaman a un modelo por su cuenta. Las peticiones llegan por HTTPS y se enmascaran en el servidor, que nunca confía esa tarea a un ordenador.

  • Un espacio para cada uno. Las personas conectan sus ordenadores con un código de un solo uso y los programas usan una clave de API que crea un administrador. Cada uno tiene sus ajustes, su caja fuerte y su historial, cifrados.
  • Las reglas de cada uno. Cada persona conserva sus propias reglas, que se comparten a mano: exportándolas e importándolas, o en el latet.yaml de un proyecto.
  • Un registro de administración. Guarda quién hizo qué y cuándo, nunca un valor.
  • Crece contigo. Puedes desplegar tantas instancias sin estado como necesites detrás de un balanceador de carga, con PostgreSQL y Valkey.
Latet en un servidor

Latet Enterprise Edition

Próximamente

Es para una empresa cuyo equipo de seguridad fija las reglas para todos. Sobre la Community Edition, añade:

  • Reglas compartidas. Los administradores fijan para todos, en un solo lugar, términos, listas, reconocedores, reglas de campo y niveles de protección; cada persona añade los suyos.
  • Reglas bloqueadas. Fijan un mínimo del que nadie puede bajar, en el servidor o en un archivo de política gestionado.
  • Aprobaciones centralizadas. Un cambio que reduce la protección lo decide el equipo de seguridad.
  • Informes de auditoría. Dan recuentos por grupo, proyecto, agente y categoría, en CSV y JSON, y nunca un valor.
  • SIEM. Latet envía eventos a Splunk, Elastic, Microsoft Sentinel o syslog.
  • Términos sincronizados. Los nombres de clientes y compañeros llegan desde un archivo o una URL, Entra ID o LDAP.
  • Inicio de sesión. Las personas entran con OIDC (Entra ID, Google, Okta y otros), y las cuentas se gestionan mediante SCIM 2.0.
  • Roles. Hay cinco: usuario, responsable de grupo, seguridad, auditor de solo lectura y administrador.
Qué hace Latet Enterprise, en detalle

Recibe un aviso cuando Latet Enterprise esté disponible

Deja tu dirección de correo electrónico: recibirás un solo mensaje cuando Latet Enterprise esté disponible, y nada más.

Cómo se guarda la dirección

¿Preguntas sobre Latet Enterprise?

Escribe a esta dirección:

info@latet.ai

Escribir un correo

Licencias

Latet es source-available: el código es público y puedes leerlo, revisarlo y modificarlo. La Community Edition es gratuita para todos, incluidas las empresas de cualquier tamaño. La Enterprise Edition añade lo que una empresa necesita para gestionar Latet de forma centralizada, con una licencia comercial.

Gratis, para todos

  • En el trabajo, en cualquier empresa. Usa Latet para el trabajo propio de tu empresa, en todos los equipos y servidores y para todas las personas que quieras, sea cual sea el tamaño o la facturación de la empresa. Una empresa que lo usa para sus 5.000 empleados y sus servidores de compilación no paga nada.
  • Para ti. Los proyectos personales, el estudio, la investigación y la evaluación son gratis.
  • Uso no comercial. Cualquier uso no comercial es gratis, incluido el de organizaciones sin ánimo de lucro, escuelas y universidades.
  • Modificarlo. Puedes modificar Latet para esos mismos usos, y compartirlo, o compartir tus cambios, sin coste y con fines no comerciales. Conserva el archivo LICENSE y los avisos de copyright, e indica que lo has modificado.

Licencia comercial

Antes de venderlo u ofrecerlo. Escríbenos antes de vender Latet o una copia modificada, de ofrecerlo a otros como servicio (ejecutándolo para otras empresas o para tus clientes, como servicio alojado o gestionado), de integrarlo en un producto o servicio que vendas, o de hacer un fork comercial.

Por ejemplo. Necesita una licencia comercial una agencia que coloca Latet por delante de las herramientas de IA que vende a sus clientes, y también un proveedor de seguridad que lo incluye en su propio producto. No la necesita un consultor que instala Latet para una empresa que luego lo usa para su propio trabajo: la empresa lo usa gratis, y el consultor puede cobrar su trabajo.

La Enterprise Edition. Usar sus funciones en producción requiere una licencia de Latet Enterprise; desarrollar y hacer pruebas con ellas es gratis. Escríbenos con el nombre de tu empresa y cuántas personas usarán Latet.

Escribe a info@latet.ai

La Community Edition no tiene claves de licencia y nunca contacta con nadie para comprobar nada. Las funciones Enterprise comprueban un archivo de licencia firmado, sin conexión.

Las condiciones completas

Pruébalo en tu equipo

Instala Latet en unos minutos y después haz el tutorial de unos 30 minutos, con un agente simulado, un modelo simulado y datos inventados, antes de conectar un agente real.