Pruébalo, gratis7 días de retención de registros
Volver a la visión general Enterprise
Pista de auditoría de agentes

Cada acción del agente, registrada.

Cuando un agente de IA escribe código, ejecuta comandos y toca sus repos, “lo hizo la IA” no es una respuesta que su auditor vaya a aceptar. Bromure convierte cada sesión en un registro estructurado y atribuible: quién ejecutó qué agente, contra qué, y exactamente qué tocó.

El problema

Código escrito por IA sin cadena de custodia

Una porción creciente de su código la redactan ahora agentes — y el rastro es tenue. ¿Qué ingeniero lanzó la sesión? ¿Qué modelo? ¿Qué archivos leyó, cambió o borró el agente? ¿Qué comandos ejecutó, y contra qué sistemas? Para la mayoría de los equipos la respuesta honesta es un encogimiento de hombros, y un encogimiento de hombros no sobrevive a una auditoría SOC 2, a un incidente de seguridad ni a la pregunta de un regulador.

El agente opera en el portátil del ingeniero, bajo la cuenta del ingeniero, con el acceso del ingeniero. Desde fuera, el commit de un agente es indistinguible del de un humano — hasta que algo sale mal y necesita reconstruir exactamente qué ocurrió, y no hay nada con lo que reconstruirlo.

La respuesta de Bromure

Cada sesión es un registro a prueba de manipulación

Como el agente se ejecuta dentro de una VM de Bromure, cada acción se captura en la frontera: los archivos que creó, modificó y borró con diffs; cada comando de shell que ejecutó; cada herramienta que llamó; cada endpoint que alcanzó — todo vinculado a la identidad del ingeniero y al modelo en uso, retenido de forma centralizada.

El diálogo completo también se archiva — prompts, respuestas del modelo, llamadas a herramientas, la transcripción entera — guardado en la nube y revisable por seguridad, muestreable por la dirección de ingeniería, y exportable al mismo archivo que ya alimenta para la retención de correo y chat. El trabajo asistido por IA se vuelve tan auditable como cualquier otra cosa que su organización haga.

Cómo funciona

Cada archivo que el agente tocó

Por sesión, por repo, por ingeniero — el conjunto exacto de archivos creados, modificados o eliminados, con diffs, vinculados a quién lanzó la sesión y al modelo que utilizó.

Cada comando y cada llamada

Cada comando de shell que el agente ejecutó dentro de la VM, cada archivo que leyó, cada herramienta que invocó, cada API a la que llamó — capturado en vivo mientras corre la sesión.

La transcripción completa, archivada

Prompts, respuestas y llamadas a herramientas retenidos de forma centralizada, consultables por equipo, repo o modelo, y exportables a su archivo de retención existente.

Vinculado a la identidad y a prueba de manipulación

Cada registro lleva la identidad SSO y el dispositivo del ingeniero, escrito a un flujo de solo anexado que su SIEM puede ingerir igual que ingiere la actividad humana.

Intentos de inyección, marcados

Cuando el contenido que un agente leyó — un archivo, una página descargada, salida de herramientas — o un CLAUDE.md en el que confió contenía instrucciones inyectadas, la detección en el dispositivo de Bromure lo registra: el origen, el fragmento y si la solicitud se registró, se marcó o se bloqueó.

En la práctica

Reconstruir una sesión, meses después

Una revisión de seguridad hace una pregunta sencilla: ¿algún agente tocó alguna vez el módulo de pagos, y de ser así, qué hizo? Sin Bromure, esa es una pregunta sin respuesta repartida por docenas de portátiles. Con él, es una consulta.

Cada sesión de agente corrió dentro de una VM de Bromure que transmitió su actividad al servidor empresarial: la identidad del ingeniero, el modelo, cada lectura y escritura de archivo con diffs, cada comando, cada destino de red y la transcripción completa de prompt/respuesta. El revisor filtra por el repo de pagos y obtiene cada sesión que lo tocó — tres de ellas, dos ingenieros, con los cambios exactos y las conversaciones que los produjeron.

Muestrean las transcripciones, confirman que los cambios se revisaron y se mergearon por el proceso normal, y adjuntan la exportación al expediente de auditoría. Lo que habría sido una carrera forense de varios días es una consulta de diez minutos — y como el registro es a prueba de manipulación, se sostiene como evidencia en lugar de como recuerdo.

Transmítala a su SIEM

La pista no tiene por qué vivir en Bromure

Apunte Bromure a su propio SIEM o colector de OpenTelemetry y todo el registro le sigue allí. La actividad de los agentes, las sesiones de navegación y la pista de auditoría de administración se reenvían como logs OTLP/HTTP — cada evento un LogRecord con atributos semánticos de OTel y una severidad que sus alertas ya entienden. Bromure emite desde sus propios eventos almacenados mediante un cursor continuo, de modo que un breve corte en su endpoint no pierde nada.

Apúntelo a su colector

Dé a Bromure su endpoint de logs OTLP/HTTP y, si su colector lo necesita, una cabecera de autenticación — un token bearer, una clave de Datadog, lo que espere. El valor se almacena cifrado por sobre (envelope) y no se vuelve a mostrar. Elija cuál de los tres flujos reenviar.

[otlp]
endpoint = "https://otel.acme.com/v1/logs"   # https only
auth_header_name  = "Authorization"
auth_header_value = "Bearer <token>"          # envelope-encrypted at rest

[otlp.streams]
agentic_coding = true   # tool calls, credential use, injection, supply chain
web_sessions   = true   # managed-browser request metadata
audit          = true   # admin actions + ingest auth failures

Cada acción, un LogRecord OTLP

Cada acción del agente se mapea a un LogRecord que lleva la identidad SSO del ingeniero, el modelo, el repositorio y la acción — con una severidad sobre la que su SIEM puede alertar. Un intento de inyección de prompt bloqueado llega como WARN que su pipeline de detección ya enruta.

{
  "severityText": "WARN",
  "body": { "stringValue": "prompt_injection · tool output · blocked" },
  "attributes": {
    "enduser.id":         "[email protected]",
    "bromure.session.id": "f3a9…ce21",
    "bromure.repo":       "acme/payments",
    "bromure.model":      "claude-opus-4-8",
    "bromure.event.type": "prompt_injection"
  }
}

Entrega duradera, al menos una vez

Bromure reenvía desde sus propios eventos almacenados con un cursor por flujo, no desde la ruta de ingesta en vivo. Si su colector cae, no se pierde nada dentro de la retención — la entrega se reanuda desde la última posición confirmada cuando vuelve.

stream           cursor        last forward   status
agentic_coding   seq:184201    2s ago         ok
web_sessions     ts:17:42:08   2s ago         ok
audit            id:90412      2s ago         ok
# endpoint outage → backoff + retry, cursor holds
# at-least-once · no loss within retention
Arquitectura e integración

Cómo está construido realmente

Aquí termina el marketing. Lo que sigue es el sustrato técnico sobre el que se asienta cada despliegue de Bromure — el mismo, tanto si protege una plantilla BYOD como si segrega niveles de clasificación dentro de un organismo regulado.

Aislamiento impuesto por el hipervisor

Cada perfil se ejecuta en su propia VM Linux ligera sobre Virtualization.framework de Apple — un kernel, un sistema de archivos y una pila de red separados del host. La imagen base es una compilación Alpine firmada y reproducible, clonada vía copia en escritura de APFS en el inicio de sesión (coste de disco prácticamente nulo). El host no puede leer la memoria de la VM; la VM no puede leer el portapapeles, el sistema de archivos ni los adaptadores de red del host salvo que la política del perfil lo permita explícitamente.

Identidad: SSO para usuarios, mTLS para dispositivos

El enrolamiento y el inicio de sesión se controlan con dos factores que su organización ya opera. OIDC / SAML contra Google Workspace, Okta, Microsoft Entra o Authentik identifica al usuario. Un certificado cliente mTLS por dispositivo, emitido desde su PKI y vinculado a la instalación, identifica la máquina. Revoque cualquiera y la siguiente sesión no podrá iniciarse — sin agente que manipular, sin política local que sortear.

Profile-as-code

El perfil de trabajo — lista permitida de SaaS, postura de descargas / portapapeles / capturas, configuración de VPN, disposición de teclado, CAs raíz, reglas de salida de red — es un artefacto declarativo firmado. Versiónelo en Git. Distribúyalo mediante su MDM o el endpoint de configuración de Bromure. Los perfiles manipulados fallan la verificación de firma y la sesión se niega a iniciarse. Lo que se ejecuta en la máquina del usuario es bit a bit lo que usted ha escrito.

Plano de red por perfil

Cada perfil lleva su propia NIC virtual. Elija NAT a través del host, bridge a una interfaz física o túnel vía WireGuard, IKEv2 / IPsec o Cloudflare WARP — todos terminados dentro de la VM, invisibles al host. Añada sobreescrituras de DNS, listas blancas de puertos de salida, aislamiento de LAN y un proxy HTTP. La segmentación la impone el hipervisor, no una pegatina en el firewall.

Pipeline de auditoría

Cada petición — marca de tiempo, verbo, URL, estado, usuario, perfil, dispositivo — se captura fuera de la VM en un flujo JSON Lines resistente a manipulación y se entrega al sink de logs que usted ya alimenta (SIEM, data lake, archivo de retención). Grabación de sesión opcional, solo cabeceras o de cuerpo completo, para tráfico sospechoso. Esquema estable, campos documentados, sin dependencia de proveedor en el formato.

Efímero por defecto, persistente por opt-in

Cierre la ventana y la VM se destruye. Tokens, cookies, caché, descargas y cualquier malware que haya aterrizado durante la sesión se van con ella. Los perfiles que necesitan estado — un conjunto de favoritos, una sesión guardada, un SaaS con sesión iniciada — pueden activar un disco persistente cifrado con LUKS y clave vinculada al Keychain de macOS. La clave nunca abandona el dispositivo del usuario.

Preguntas frecuentes

¿En qué se diferencia esto del historial de Git?

+

Git muestra el diff final commiteado. Bromure muestra la sesión entera que lo produjo — los archivos que el agente leyó pero no cambió, los comandos que ejecutó, los callejones sin salida, las llamadas de red y la conversación que lo impulsó. Git le dice qué aterrizó; Bromure le dice cómo, y qué más ocurrió por el camino.

¿Es el registro a prueba de manipulación?

+

Sí. Las sesiones se transmiten a un log de solo anexado en su servidor empresarial mientras corren, llevando la identidad SSO y el certificado de dispositivo del ingeniero. Un ingeniero no puede editar silenciosamente lo que su agente hizo a posteriori.

¿Podemos alimentar esto a nuestro SIEM y herramientas de retención existentes?

+

Sí — de forma nativa, mediante OpenTelemetry. Apunte Bromure al endpoint de logs OTLP/HTTP de su SIEM o colector de OpenTelemetry, y la actividad de los agentes, las sesiones de navegación y la pista de auditoría fluyen allí como LogRecords OTLP con atributos semánticos de OTel. Las transcripciones se exportan por separado al mismo archivo que ya usa para la retención de correo y chat.

¿Capturar todo esto ralentiza a los ingenieros?

+

No. La captura ocurre en la frontera de la VM, fuera del camino del ingeniero. Ejecutan Claude Code o Codex exactamente como antes; el registro se acumula de forma automática.

“Lo hizo la IA” no es una pista de auditoría.

Convierta cada sesión de agente en un registro atribuible y a prueba de manipulación que sus auditores aceptarán.