Matrix — Red de Chat Descentralizada
Matrix — Decentralized Chat Network — easy-to-understand guide based on official docs
Matrix — Red de Chat Descentralizada
Si alguna vez has querido una red de chat donde no estés atrapado en el servidor de otra persona, Matrix es la respuesta. Es un protocolo de mensajería abierto y federado — piensa en el correo electrónico, pero para mensajería instantánea. Puedes ejecutar tu propio homeserver, o usar uno público como matrix.org. De cualquier manera, tú mantienes el control de tus conversaciones.
Hermes Agent se conecta directamente a Matrix usando el SDK de Python mautrix. Eso significa que tu bot puede chatear contigo a través de Matrix, usando todos los poderes de Hermes que ya conoces y amas — uso de herramientas, memoria, razonamiento y respuestas en tiempo real. Maneja texto, archivos, imágenes, audio, video e incluso cifrado de extremo a extremo (E2EE) opcional.
Y aquí está la mejor parte: Hermes funciona con cualquier homeserver de Matrix. Synapse, Conduit, Dendrite, o el gran servidor público en matrix.org — elige tu favorito.
Cómo se Comporta Hermes
Una vez conectado, Hermes tiene algunos comportamientos inteligentes por defecto. Aquí está el resumen rápido:
| Contexto | Comportamiento |
|---|---|
| Mensajes directos (DMs) | Hermes responde a cada mensaje. No necesitas mencionarlo con @. Cada DM tiene su propia sesión. |
| Salas | Por defecto, Hermes espera una mención con @ antes de responder. Puedes cambiar esto con MATRIX_REQUIRE_MENTION=false o agregar salas específicas a MATRIX_FREE_RESPONSE_ROOMS. Las invitaciones a salas se aceptan automáticamente. |
| Hilos | Hermes soporta completamente los hilos de Matrix. Responde en un hilo, y Hermes mantiene ese contexto separado de la línea de tiempo principal de la sala. Los hilos donde el bot ya participó no necesitan mención. |
| Auto-hilos | Por defecto, Hermes crea automáticamente un hilo para cada respuesta en una sala. Esto mantiene las conversaciones ordenadas y aisladas. Desactívalo con MATRIX_AUTO_THREAD=false. |
| Comandos | Los /comandos normales funcionan como se espera. Si tu cliente reserva / para comandos locales, solo usa !comandos — Hermes normaliza esos alias automáticamente. |
| Controles interactivos | Las aprobaciones para comandos peligrosos y la selección de /model pueden usar reacciones de Matrix. Incluso puedes restringir las reacciones de aprobación al usuario que solicitó la acción. |
| Actividad de pensamiento y herramientas | Hermes usa paneles editables en hilos para la actividad de pensamiento y herramientas cuando el progreso de la puerta de enlace está habilitado. No más inundar la línea de tiempo principal con actualizaciones. |
| Salas compartidas | Por defecto, Hermes aísla el historial de sesión por usuario dentro de una sala. Dos personas en la misma sala no comparten una transcripción a menos que desactives explícitamente eso. |
Consejo profesional: Solo invita al usuario de Matrix del bot a cualquier sala, y se unirá y comenzará a responder automáticamente.
Lo que Hermes Puede Hacer en Matrix
Aquí está la lista completa de capacidades, directamente de la declaración del adaptador:
- Texto — sí
- Hilos — sí
- Reacciones — sí
- Aprobaciones — sí
- Selector de modelo — sí
- Paneles de pensamiento — sí
- Imágenes — sí (incluyendo múltiples imágenes)
- Archivos — sí
- Voz/audio — sí
- Video — sí
- E2EE — desactivado / opcional / requerido (según el modo)
- Diagnósticos — sí
Modelo de Sesión en Matrix
Por defecto, Hermes mantiene las cosas bien separadas:
- Cada DM tiene su propia sesión
- Cada hilo tiene su propio espacio de sesión
- Cada usuario en una sala compartida tiene su propia sesión dentro de esa sala
Esto se controla en config.yaml:
group_sessions_per_user: true
Ponlo en false solo si explícitamente quieres una conversación compartida para toda la sala:
group_sessions_per_user: false
Las sesiones compartidas pueden ser útiles para una sala colaborativa, pero ten cuidado: los usuarios comparten el crecimiento del contexto y los costos de tokens, la tarea pesada de herramientas de una persona puede inflar el contexto de todos los demás, y la ejecución en curso de una persona puede interrumpir el seguimiento de otra.
Configuración de Menciones y Hilos
Puedes ajustar todo mediante variables de entorno o config.yaml. Aquí está la versión YAML:
matrix:
require_mention: true # Requiere mención con @ en salas (por defecto: true)
allowed_users: # Usuarios de Matrix autorizados para activar turnos del agente
- "@alice:matrix.org"
allowed_rooms: # Salas de Matrix autorizadas para activar turnos del agente
- "!abc123:matrix.org"
free_response_rooms: # Salas exentas del requisito de mención
- "!abc123:matrix.org"
ignore_user_patterns: # Usuarios fantasma de bridges/appservice a ignorar
- "^@telegram_"
- "^@whatsapp_"
process_notices: false # Ignorar m.notice por defecto
session_scope: room # auto|room|thread; room es recomendado para salas de proyecto
auto_thread: true # Crear hilos automáticamente para respuestas (por defecto: true)
dm_mention_threads: false # Crear hilo cuando te mencionan con @ en DM (por defecto: false)
max_message_length: 16000 # Tamaño de fragmento de salida en caracteres (por defecto: 16000, máximo: 65535)
O mediante variables de entorno:
MATRIX_REQUIRE_MENTION=true
MATRIX_ALLOWED_USERS=@alice:matrix.org
MATRIX_ALLOWED_ROOMS=!abc123:matrix.org
MATRIX_FREE_RESPONSE_ROOMS=!abc123:matrix.org,!def456:matrix.org
MATRIX_IGNORE_USER_PATTERNS='^@telegram_,^@whatsapp_'
MATRIX_PROCESS_NOTICES=false
MATRIX_SESSION_SCOPE=room # recomendado para contexto estable de salas de proyecto
MATRIX_AUTO_THREAD=true
MATRIX_DM_MENTION_THREADS=false
MATRIX_REACTIONS=true # por defecto: true — reacciones emoji durante el procesamiento
MATRIX_ALLOW_ROOM_MENTIONS=false
Consejo: MATRIX_REACTIONS=false desactiva las reacciones emoji del ciclo de procesamiento (👀/✅/❌) que el bot publica en los mensajes entrantes. Útil para salas donde las reacciones son ruidosas o no están soportadas.
Otro consejo: Hermes envía menciones estructuradas de usuarios de Matrix para IDs explícitos como @alice:example.org. Las menciones de sala @room se controlan por separado.
Esa es la imagen completa de Matrix. Ya sea que ejecutes tu propio homeserver o solo quieras un chat descentralizado que respete tu privacidad, Hermes te tiene cubierto. ¡Ve a invitar a tu bot a una sala y míralo en acción!
📖 Documentación oficial
Este artículo se basa en la documentación oficial de Hermes Agent :Docs oficiales › user-guide/messaging/matrix