Conecta un agente, envía transcripciones y lee el boletín A–F, por SDK o REST.
Visión general
Axon es la capa de calidad para agentes de IA. Envías transcripciones de conversaciones; Axon evalúa cada una con un juez LLM frente a una rúbrica configurable y devuelve un boletín A–F por dimensión, con evidencia citada, causa raíz y una corrección concreta.
El flujo: conecta un agente → ingiere transcripciones → el juez evalúa (de forma asíncrona, en una cola durable e idempotente) → lee el boletín → corrige → fija el resultado en una suite de regresión → monitorea y recibe alertas de degradación.
Inicio rápido
De cero al primer boletín en tres pasos.
- Genera una clave de API en Configuración → Integración. Guárdala como AXON_API_KEY.
- Conecta la clave de tu proveedor de IA (BYOK) en Configuración → Integración → Proveedor de IA. Las evaluaciones corren con esa clave.
- Instala el SDK (pnpm add @gabrielonrails/axon-sdk) o usa cURL puro.
- Envía una transcripción y lee el boletín. El agente se crea en la primera ingesta.
URL base y errores
Tres endpoints, todos autenticados con clave de API. La ingesta devuelve 202 y evalúa de forma asíncrona; consulta el estado o lee el boletín.
URL base: https://axon-dev.com
Los errores devuelven un cuerpo JSON '{ error, message }' con el estado HTTP correspondiente.
Autenticación
Cada petición se autentica con una clave de API (por org) en el header Authorization: Authorization: Bearer axon_sk_….
Las claves se generan y se revocan en Configuración → Integración. Solo guardamos un hash SHA-256: la clave completa se muestra una vez. La revocación es inmediata.
Authorization (o x-api-key):Authorization: Bearer axon_sk_xxxxxxxxxxxxxxxxxxxxxxxxBYOK: tu clave de IA
La evaluación corre con la clave del proveedor de IA que conectes: Anthropic, OpenAI o cualquier endpoint compatible. Es obligatoria: sin ella el juez no corre y el boletín queda vacío.
Dónde conectarla: en la app, Configuración → Integración → Proveedor de IA. Pega la clave, elige el proveedor y (opcional) el modelo. La clave se cifra en reposo (AES-256-GCM).
Agentes y transcripciones
El bucle central: envía transcripciones de conversaciones, consulta el estado de la evaluación y lee el boletín A–F del agente. Los agentes se crean bajo demanda en la primera ingesta.
/api/v1/agents/{agent}/transcriptsIngerir transcripciones
Envía una o más transcripciones de conversaciones para un agente. Devuelve 202 de inmediato; cada conversación se evalúa de forma asíncrona en una cola durable e idempotente. Reenviar una transcripción con la misma id actualiza en lugar de duplicar.
Parámetros de path
agentstringobligatorioParámetros del cuerpo
transcriptsTranscript[]obligatoriotranscripts[].idstringopcionaltranscripts[].channel"chat" | "whatsapp"opcionaltranscripts[].turnsTurn[]obligatorio{
"transcripts": [
{
"id": "conv-001",
"channel": "chat",
"turns": [
{ "role": "client", "text": "I want a discount." },
{ "role": "agent", "text": "I can apply 20% now." }
]
}
]
}Respuestas
202 Accepted
{
"accepted": 1,
"queued": 1,
"agent": { "id": "ag_...", "name": "cobranca" },
"conversation_ids": ["cv_..."],
"status": "evaluating"
}curl -X POST https://axon-dev.com/api/v1/agents/cobranca/transcripts \
-H "Authorization: Bearer $AXON_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"transcripts": [
{
"id": "conv-001",
"channel": "chat",
"turns": [
{ "role": "client", "text": "I want a discount." },
{ "role": "agent", "text": "I can apply 20% now." }
]
}
]
}'/api/v1/agents/{agent}/transcripts/{externalId}Obtener estado de la conversación
Consulta el estado de evaluación de una conversación ingerida por su id externa. Úsalo tras la ingesta para saber cuándo está lista la evaluación A–F.
Parámetros de path
agentstringobligatorioexternalIdstringobligatorioRespuestas
200 OK
{
"external_id": "conv-001",
"conversation_id": "cv_...",
"status": "done",
"reason": null,
"evaluation": {
"overall": "C+",
"confidencePct": 92,
"dimensions": [ { "key": "...", "name": "...", "grade": "B", "score": 80 } ]
}
}curl https://axon-dev.com/api/v1/agents/cobranca/transcripts/conv-001 \
-H "Authorization: Bearer $AXON_API_KEY"/api/v1/agents/{agent}/reportObtener boletín del agente
El boletín actual del agente: nota general, notas por dimensión, los principales problemas con evidencia citada y la corrección recomendada (causa raíz + parches concretos de PROMPT / GUARDRAIL / EVAL). correction es null hasta que se genere una.
Parámetros de path
agentstringobligatorioRespuestas
200 OK
{
"agent": { "id": "ag_...", "name": "cobranca", "channel": "chat" },
"overall": "C+",
"degrading": true,
"sample": 2430,
"dimensions": [ { "key": "...", "name": "...", "grade": "B", "score": 80 } ],
"problems": [
{ "severity": "alto", "title": "...", "dimension": "...",
"impact": "...", "rootCause": "...",
"evidence": { "turnIndex": 4, "quote": "...", "verified": true } }
],
"correction": {
"tags": ["discount policy"],
"impactFrom": "C+", "impactTo": "A-",
"fixes": [ { "type": "PROMPT", "title": "...", "description": "...", "code": "..." } ]
}
}curl https://axon-dev.com/api/v1/agents/cobranca/report \
-H "Authorization: Bearer $AXON_API_KEY"