Envuelto con `tma1 build -- npm test`. El agente lo corrió tres veces, el mismo error cada vez.
Stop retrying `npm test` and address this error first: TypeError: Cannot read prop ‘user’ of undefined
TMA1
TMA1 graba cada llamada LLM localmente, después reinyecta lo que ve en el próximo turno del agente — hooks, MCP, detección de anomalías y un historial de sesiones que se puede buscar.
Mi agente seguía editando archivos que yo recién había modificado a mano. Quería que se diera cuenta._
ONBOARDING DEL AGENTE
Read https://tma1.ai/SKILL.md and follow the instructions to install or upgrade TMA1 for your AI agent
Cuando el mismo Edit falla tres veces o un build sigue rompiéndose, TMA1 inyecta el camino concreto de solución en el siguiente prompt — no en un postmortem de la semana que viene.
Claude Code puede traer la review de Codex sobre el mismo archivo, palabra por palabra, vía /tma1-peer. Sin copiar y pegar entre pestañas.
/tma1-search retry backoff encuentra la sesión donde ya lo resolviste — tuya o de otro agente — y recupera la conversación.
Un solo binario de Go. Sin Docker, sin nube. Los datos se quedan en ~/.tma1/.
Funcionalidades
Percepción en loop cerrado y colaboración entre agentes primero. Los dashboards quedan como respaldo. Un binario Go, un store de series temporales local, sin Grafana, sin YAML.
TMA1 vigila fallos repetidos, vistas obsoletas y builds rotos. Cuando una regla se dispara, escribe un camino concreto de solución en el siguiente prompt del agente — no en un dashboard para que alguien lo lea mañana. Cinco hooks lo entregan. Seis reglas, cada una con una sugerencia accionable. Severidad HIGH puede bloquear Stop para que un build roto no se publique en silencio.

Cuando TMA1 ve algo sobre lo que el agente debería actuar, escribe una sugerencia concreta en el próximo prompt. Estos son strings reales del detector — lo que el agente literalmente lee:
Envuelto con `tma1 build -- npm test`. El agente lo corrió tres veces, el mismo error cada vez.
Stop retrying `npm test` and address this error first: TypeError: Cannot read prop ‘user’ of undefined
El archivo cambió fuera de las escrituras observadas del agente antes de que el agente lo editara.
Re-read auth.go before the next edit — your in-memory copy is older than what’s on disk.
Claude Code lee palabra por palabra lo que Codex dejó en el mismo archivo. Codex lee lo que Claude hizo. La skill /tma1-peer trae la última sesión del par en este proyecto: mensajes, herramientas usadas, archivos tocados. Por defecto un agente no ve sus propias sesiones en la lista de pares — sin cámaras de eco; pide self y recupera su propio historial.
Claude Code lee lo que Codex dejó, palabra por palabra, con la skill /tma1-peer. La skill del lado de Codex hace lo inverso.
Un agente en un loop de reintentos puede quemar cientos de dólares. Cada vista de agente tiene una pestaña Anomalies. Haz clic en cualquiera para saltar a esa sesión y ver qué salió mal.

Tu agente corrió 25 minutos. ¿Qué pasó? Abre el overlay de sesión: a la izquierda la actividad de archivos, contexto y API calls. A la derecha, el timeline completo. También puedes ver el canvas en vivo mientras tu agente trabaja.

Cuando tu agente se siente lento, ¿es el modelo o las herramientas? p50 y p95 de latencia por herramienta, conteos de llamadas, tasas de éxito y líneas de tendencia.

¿Qué modelo cuesta más? ¿Qué conversación quemó tu presupuesto? Tokens y costo estimado por modelo, más burn rate y ratios de cache hit.

Tu agente puede ejecutar comandos shell, hacer fetches a URLs externas y recibir prompts inyectados. TMA1 marca todo. Para OpenClaw también rastrea errores de webhook y sesiones atascadas.

Escribe una palabra clave en la pestaña Sessions para encontrar conversaciones, llamadas a herramientas y resultados en todas las sesiones, y haz clic para abrir la sesión en ese evento exacto. El agente consulta los mismos datos con search_sessions y recupera cualquier sesión con get_session_transcript.
Seis semanas de sesiones en disco. El agente las busca por sí mismo y luego lee la que importa, con la skill /tma1-search.
Cómo funciona
Pega la instrucción de onboarding en tu agente y se encarga del resto, o instálalo manualmente:
Un comando. Todo se descarga en ~/.tma1/. Sin Docker, sin paquetes del sistema.
Apunta el endpoint OTel a http://localhost:14318/v1/otlp. Funciona con Claude Code, Codex, OpenClaw o cualquier SDK OTel. GitHub Copilot CLI no necesita configuración — TMA1 detecta sus logs de sesión automáticamente.
Abre localhost:14318 para el dashboard. El agente empieza a recibir bloques <tma1-context> y a actuar sobre ellos. Opcional: envuelve tus comandos dev / test con tma1 build -- <command> para que los fallos de build también entren al loop (flags: --watch, --tag, --filter-regex). El dashboard es para el postmortem humano; el loop es para el agente. Para SQL directo, el dashboard propio de GreptimeDB está en localhost:14000/dashboard.
Seguridad
Tu agente lee tu código, tus API keys, tu infraestructura. Mandar eso a un servicio de observabilidad en la nube anula el propósito. Todo se queda local.
TMA1 guarda traces y logs de conversación en tu disco local, en ~/.tma1/data/. No se sube nada a servicios remotos y puedes inspeccionar o borrar los datos cuando quieras.
Tras el primer inicio (que descarga el motor de base de datos integrado una sola vez), TMA1 no hace más llamadas de red. Sin analíticas, sin reportes de error, sin chequeos de actualización.
TMA1 usa licencia Apache-2.0. Puedes leer el código, auditar el build y ejecutarlo sin conexión.
tma1-server corre como un único proceso local y administra su motor de almacenamiento integrado. Sin Docker, sin paquetes del sistema, sin dependencias runtime.
Borra ~/.tma1/ y todo desaparece. Sin estado huérfano en la nube, sin cuentas remotas que cerrar.
FAQ
Cualquier agente que emita datos OpenTelemetry, más algunos vía auto-descubrimiento de JSONL. Claude Code envía métricas y logs. Codex envía logs y métricas, y los archivos JSONL de sesión se analizan automáticamente para la reproducción de conversaciones. GitHub Copilot CLI no requiere configuración: sus logs de sesión en ~/.copilot/session-state/ se detectan automáticamente. OpenClaw envía traces y métricas, y los archivos JSONL de sesión se analizan automáticamente. Cualquier SDK OTel con convenciones semánticas GenAI funciona sin configuración adicional. El dashboard detecta automáticamente la fuente de datos y muestra la vista correspondiente.
Sí. Ejecuta mysql -h 127.0.0.1 -P 14002 para conectarte al endpoint SQL local, o abre localhost:14000/dashboard/ para la interfaz de consultas. Tu agente también puede consultarlos con la herramienta MCP exec_query: un SELECT de solo lectura por llamada. Traces en opentelemetry_traces, logs en opentelemetry_logs, datos de sesión en tma1_hook_events y tma1_messages, y las métricas OTel crean tablas automáticamente.
Depende de la actividad del agente y del largo de las conversaciones. En un uso típico, unos cientos de MB por mes.