Lo que hizo tu operador de IA anoche.

Semant guarda cada corrida de tus agentes, paso a paso, y marca el rato en que se quedaron en silencio. Para reportar una corrida alcanza con un pedido HTTP al final del flujo.

Para agentes hechos en Senda o en cualquier otro lado.

La noche de un agente, del 30 de septiembre al 1 de octubremuestra
De 22:00 a 06:0010 corridas, 1 con error. 3 h 27 min en silencio desde las 02:02.
El reporte de la corrida de las 02:00
Estado
Pasos

Los spans que guardaría Semant

spanduraciónduraciónestado
invoke_agent inbox-triage249189a7b6e2999d2 min 41 serror
fetch-messagesa2b1520ba83e71174 sbien
classifyb2296e179200176337 sbien
draft-replies2c8da6f43fd213732 min 00 serror
El pedido que manda el último paso del flujo
curl -X POST https://semant.trysenda.xyz/v1/runs \
  -H "Authorization: Bearer sk_semant_..." \
  -H "Content-Type: application/json" \
  -d '{
  "agent": {
    "name": "inbox-triage"
  },
  "run_id": "2026-10-01-0200",
  "started_at": "2026-10-01T02:00:00-03:00",
  "ended_at": "2026-10-01T02:02:41-03:00",
  "status": "error",
  "error_message": "draft-replies: no reply from the model after 120 s",
  "steps": [
    {
      "name": "fetch-messages",
      "started_at": "2026-10-01T02:00:00-03:00",
      "ended_at": "2026-10-01T02:00:04-03:00",
      "status": "ok"
    },
    {
      "name": "classify",
      "started_at": "2026-10-01T02:00:04-03:00",
      "ended_at": "2026-10-01T02:00:41-03:00",
      "status": "ok"
    },
    {
      "name": "draft-replies",
      "started_at": "2026-10-01T02:00:41-03:00",
      "ended_at": "2026-10-01T02:02:41-03:00",
      "status": "error"
    }
  ],
  "metadata": {
    "trigger": "every 30 min"
  }
}'
Respuestacalculada acá, no se envió nada
HTTP 200
{
  "trace_id": "e401386c50fd91d5e577c94da77f309d",
  "spans": 4
}

Reemplazá sk_semant_... por tu clave. Las claves se van a crear dentro de Semant.

Dos maneras de reportar.

Sin escribir código: un paso HTTP al final del flujo.

Si tu agente corre en una herramienta de flujos, sumá un último paso que mande el reporte. Es el pedido de arriba, con tu clave.

  1. Cada 30 minutos
  2. fetch-messages
  3. classify
  4. draft-replies
  5. POST /v1/runsReporta la corrida

Si tu agente ya emite OpenTelemetry: una línea de entorno.

Apuntá el exportador a Semant con tu clave. Llega cada span, tal como lo mandaste.

Entorno del agente
OTEL_EXPORTER_OTLP_ENDPOINT=https://semant.trysenda.xyz OTEL_EXPORTER_OTLP_HEADERS=Authorization=Bearer%20sk_semant_...

Si el agente no reporta, el renglón queda en blanco.

El agente anota su corrida cada media hora. Esta noche el libro quedó en blanco de las 02:02 a las 05:30, y Semant marca ese tramo.

Libro de guardia

inbox-triage · de 22:00 a 06:00

Ejemplo
  1. Sin novedades

    2 min 28 s
  2. Sin novedades

    2 min 32 s
  3. Sin novedades

    2 min 19 s
  4. Sin novedades

    2 min 51 s
  5. Sin novedades

    2 min 24 s
  6. Sin novedades

    2 min 38 s
  7. Sin novedades

    2 min 30 s
  8. Sin novedades

    2 min 43 s
  9. draft-replies: no reply from the model after 120 s

    error2 min 41 s
  10. Sin reportes durante 3 h 27 min

  11. Retomó solo. Sin novedades

    2 min 35 s

Lo que no llega.

Semant ve lo que le mandan. Esto, hoy, no le llega, y preferimos decirlo antes.

QuéPor qué
Un agente alojado por otro, que no podés editar.Si no podés sumarle un paso ni configurarle un exportador, no reporta nada.
Una herramienta sin pedidos salientes.Si tu plan no permite mandar un pedido HTTP, el reporte no tiene cómo salir.
Lo que pasa adentro de un paso.Un reporte trae la corrida y los pasos que anote tu flujo. Para ver más, mandá un reporte por paso o usá OpenTelemetry.
Prompts y respuestas completos.Semant no los captura por ahora. Guarda lo que le mandás, nada más.
OTLP por gRPC, métricas y logs.Por ahora entran trazas por OTLP/HTTP y reportes de corrida.

Preguntas.

¿Necesito usar Line o el Corpus?

No. Semant se vende solo y recibe corridas de agentes hechos en cualquier lado.

¿Qué pasa si mando la misma corrida dos veces?

Si el reporte trae el mismo run_id, Semant la guarda una sola vez. Un reintento no duplica nada.

¿Y si el reporte está mal armado?

Semant lo rechaza con un 400 que nombra el campo y dice por qué. Probalo arriba: borrá el nombre del agente.

¿Guarda lo que dicen mis agentes?

Guarda lo que le mandás, tal como llega. El reporte de corrida no tiene un campo para prompts ni respuestas.

¿Cuándo lo puedo usar?

Semant abre por lista de espera. Te escribimos cuando puedas crear tu clave.

Que la próxima noche quede registrada.

Sumate a la lista. Te escribimos cuando puedas reportar tu primera corrida.