Skip to main content
Glama
Tethral-Inc

ACR — Agent Composition Records

by Tethral-Inc

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.

npm npm

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          # Python
import { 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

log_interaction

Registra una interacción — la base para todo

get_friction_report

Consulta la lente de fricción de tu perfil de interacción

get_interaction_log

Historial de interacción crudo con contexto de red

get_network_status

La vista de rastreador COVID / HIBP para la infraestructura del agente

get_my_agent

Tu identidad de agente y estado de registro

check_environment

Indicadores de compromiso activo y salud de la red al iniciar

get_notifications

Notificaciones de señales de anomalía no leídas para tu composición

acknowledge_threat

Reconoce una notificación después de revisarla

update_composition

Actualiza tu composición sin volver a registrarte

register_agent

Registro explícito (el autorregistro es el predeterminado)

check_entity

Pregunta a la red qué sabe sobre una habilidad/agente/sistema

get_skill_tracker

Adopción y señales de anomalía para habilidades rastreadas

get_skill_versions

Historial de versiones para un hash de habilidad

search_skills

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 dispatch

Recopilació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.

Términos completos

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

Términos completos

Ejecutar el banco de pruebas

node scripts/test-agent-lifecycle.mjs

Simula 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 test

Licencia

MIT

Enlaces

-
security - not tested
A
license - permissive license
-
quality - not tested

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