ACR — Agent Composition Records
ACR — Registros de Composición de Agentes
Un registro de comportamiento y red de observación para agentes de IA. Los agentes registran su composición, anotan sus interacciones y consultan perfiles de comportamiento a través de lentes. Si observamos señales de anomalía que afecten la composición de un agente, notificamos al agente.
Qué es ACR
ACR es un registro de perfiles de interacción. Los agentes registran lo que hacen (llamadas a herramientas externas, solicitudes a API, interacciones MCP). Esas señales se compilan en un perfil de comportamiento a lo largo del tiempo, el cual puedes consultar a través de lentes — cada lente es una forma diferente de interpretar las mismas señales subyacentes.
La lente de fricción es la primera que se ha lanzado: detección de cuellos de botella, análisis de sobrecarga de cadenas, desperdicio por reintentos, líneas base de población, fricción direccional entre objetivos. Hay más lentes (fiabilidad, calidad) en la hoja de ruta.
ACR no es un producto de seguridad. No evaluamos habilidades, no probamos compromisos ni bloqueamos nada. Estamos más cerca de HIBP o del rastreo de contactos: registramos eventos y propagamos notificaciones. Si observamos señales de anomalía que afecten la composición de un agente, notificamos al agente. No rastreamos al propietario del agente, por lo que no tenemos ningún mecanismo para notificarle más allá de las actividades del agente.
Qué hace ACR
Registra agentes — identidad de configuración cero, seguimiento de composición, persistente a través de sesiones
Registra interacciones — cada llamada a herramienta externa que hace un agente, con tiempo, estado, posición en la cadena, señales de anomalía
Construye perfiles de interacción — señales crudas compiladas a lo largo del tiempo en el registro de comportamiento de cada agente
Muestra la lente de fricción — dónde tu agente está perdiendo tiempo y tokens, con análisis de cadena, sobrecarga de reintentos, deriva de población y fricción direccional
Notificaciones de señales de anomalía — si ACR observa anomalías que afectan a un componente en la composición de un agente, notificamos a ese agente
El Registro de Habilidades
Mantenemos un registro de habilidades de agentes que actualizamos continuamente. No somos una verificación de seguridad. Si observamos señales de anomalía que afecten una habilidad en la composición de un agente, notificamos al agente. Debido a que no rastreamos al propietario del agente, no tenemos ningún mecanismo para notificarle más allá de las actividades del agente.
Los agentes no obtienen habilidades de ACR — observamos habilidades que ya existen en el ecosistema (a través de registros públicos como npm y GitHub) y realizamos un seguimiento de las señales de comportamiento vinculadas a ellas.
Añadir a Claude Code (30 segundos)
Añade esto a tu configuración de Claude Code (.claude/settings.json o vía IDE):
{
"mcpServers": {
"acr": {
"command": "npx",
"args": ["@tethral/acr-mcp"]
}
}
}Tu agente se autorregistra, obtiene un nombre (ej. anthropic-amber-fox) y comienza a construir su perfil de interacción en la primera llamada a log_interaction.
Añadir a cualquier agente (SDK)
npm install @tethral/acr-sdk # TypeScript/Node.js
pip install tethral-acr # Pythonimport { ACRClient } from '@tethral/acr-sdk';
const acr = new ACRClient();
// Register your agent's composition
const reg = await acr.register({
public_key: 'your-agent-key-here-min-32-chars',
provider_class: 'anthropic',
composition: { skill_hashes: ['hash1', 'hash2'] },
});
// Log an interaction (this is the foundation — everything else flows from this)
await acr.logInteraction({
target_system_id: 'mcp:github',
category: 'tool_call',
status: 'success',
duration_ms: 340,
});
// Query the friction lens of your profile
const friction = await acr.getFrictionReport(reg.agent_id, { scope: 'day' });
// Check for anomaly signal notifications
const notifs = await acr.getNotifications(reg.agent_id);Qué ven los agentes
Salida de la lente de fricción (ejemplo)
Friction Report for anthropic-amber-fox (day)
── Summary ──
Interactions: 847
Total wait: 132.4s
Friction: 14.2% of active time
Failures: 12 (1.4% rate)
── Top Targets ──
mcp:github (mcp_server)
214 calls | 38.1% of wait time
median 280ms | p95 1840ms
vs population: 42% slower than baseline (volatility 1.8)Notificación de peligro (ejemplo)
You have 1 unread notification:
[HIGH] Component in your composition reported anomalies
A skill in your current composition has been reported with
suspicious activity across multiple agents in the network.
Review with your operator before continuing use.Herramientas MCP
Herramienta | Qué hace |
| Registra una interacción — la base para todo |
| Consulta la lente de fricción de tu perfil de interacción |
| Historial de interacción crudo con contexto de red |
| La vista de rastreador COVID / HIBP para la infraestructura del agente |
| Tu identidad de agente y estado de registro |
| Indicadores de compromiso activo y salud de la red al iniciar |
| Notificaciones de señales de anomalía no leídas para tu composición |
| Reconoce una notificación después de revisarla |
| Actualiza tu composición sin volver a registrarte |
| Registro explícito (el autorregistro es el predeterminado) |
| Pregunta a la red qué sabe sobre una habilidad/agente/sistema |
| Adopción y señales de anomalía para habilidades rastreadas |
| Historial de versiones para un hash de habilidad |
| Consulta el conocimiento de la red sobre una habilidad por nombre |
Arquitectura
Agents (Claude, OpenClaw, custom)
|
+--> MCP Server (@tethral/acr-mcp)
| or SDK (@tethral/acr-sdk / tethral-acr)
|
+--> Resolver API (Cloudflare Workers, edge-cached)
| Lookups, composition checks, notification feed
|
+--> Ingestion API (Vercel serverless)
| Registration, interaction receipts, friction queries, notifications
|
+--> CockroachDB (distributed SQL)
| Interaction profiles, agent registry, skill observation data
|
+--> Background Jobs
Skill observation crawlers
Anomaly signal computation
Friction baseline computation
Notification dispatchRecopilación de datos
ACR recopila solo metadatos de interacción: nombres de sistemas objetivo, tiempo, estado, contexto de cadena y clase de proveedor. No se recopila contenido de solicitudes/respuestas, claves API, prompts o PII. Tu perfil de interacción es visible solo para ti. Las líneas base de población utilizan estadísticas agregadas.
Política de privacidad
Qué recopilamos:
Nombres de sistemas objetivo (ej.
mcp:github,api:stripe.com)Tiempo de interacción (duración, marcas de tiempo, espera en cola, recuento de reintentos)
Estado de interacción (éxito, fallo, tiempo de espera, parcial)
Clase de proveedor del agente (ej.
anthropic,openai)Hashes de composición (SHA-256 del contenido de SKILL.md)
Contexto de cadena (
chain_id,chain_position,preceded_by)Indicadores de anomalía reportados por el agente (solo categoría, sin carga útil)
Qué NO recopilamos:
Contenido/cargas útiles de solicitudes o respuestas
Claves API, tokens o credenciales
Prompts, finalizaciones o contenido de conversación
Información de identificación personal (PII)
Contenido de archivos o datos de usuario
Identidad del propietario del agente (intencionalmente no rastreamos al humano detrás del agente)
Uso de datos:
Tu perfil de interacción: visible solo para el agente que lo generó
Líneas base de población: estadísticas agregadas, no se comparten datos individuales
Notificaciones de peligro: entregadas a los agentes cuya composición se ve afectada
Observación de habilidades: solo se indexan metadatos de habilidades disponibles públicamente
Retención de datos:
Recibos de interacción: 90 días, luego archivados en resúmenes diarios
Datos de observación de habilidades: retenidos mientras se observa la habilidad
Notificaciones: retenidas durante 90 días
Registros de agentes: expiración suave después de 90 días de inactividad
Compartir con terceros: Ninguno. ACR no vende, comparte ni transfiere datos de interacción a terceros.
Contacto: security@tethral.com
Ejecutar el banco de pruebas
node scripts/test-agent-lifecycle.mjsSimula un ciclo de vida completo del agente: registrar, registrar interacciones, consultar la lente de fricción, comprobar notificaciones.
Desarrollo
pnpm install # Install dependencies
pnpm build # Build all packages
pnpm test:unit # Run unit tests
node scripts/run-migration.mjs up # Run DB migrations
node scripts/test-agent-lifecycle.mjs # Run integration testLicencia
MIT
Enlaces
API: https://acr.nfkey.ai
npm (MCP): @tethral/acr-mcp
npm (SDK): @tethral/acr-sdk
PyPI: tethral-acr
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Tethral-Inc/AgentRegistry'
If you have feedback or need assistance with the MCP directory API, please join our Discord server