Mattermost
Configuración de bot Mattermost y cómo conectarlo a OpenClaw.
Estado: Soportado vía plugin (token de bot + eventos WebSocket). Soporta canales, grupos y DMs.
Mattermost es una plataforma de mensajería de equipo auto-alojable; producto y descargas en ''mattermost.com''.
Instalación de Plugin Requerida
Mattermost se proporciona como plugin y no viene incluido con la instalación core.
Instalar vía CLI (registro npm):
openclaw plugins install @openclaw/mattermost
Instalación local (cuando se ejecuta desde un repositorio git):
openclaw plugins install ./extensions/mattermost
Si seleccionaste Mattermost en configure/onboarding y se detecta un checkout git, OpenClaw automáticamente preguntará si usar la ruta de instalación local.
Más: ''/plugin''
Configuración Rápida
1. Instalar el plugin Mattermost.
2. Crear una cuenta de bot Mattermost y copiar el token de bot.
3. Copiar la URL base de Mattermost (ej., https://chat.example.com).
4. Configurar OpenClaw e iniciar el gateway.
Configuración mínima:
{
channels: {
mattermost: {
enabled: true,
botToken: "mm-token",
baseUrl: "https://chat.example.com",
dmPolicy: "pairing",
},
},
}Variables de Entorno (cuenta por defecto)
Si prefieres variables de entorno, establece en el host del gateway:
- MATTERMOST_BOT_TOKEN=...
- MATTERMOST_URL=https://chat.example.com
Nota: Las variables de entorno solo aplican a la cuenta por defecto (default). Otras cuentas deben proporcionarse en el archivo de configuración.
Modos de Chat
Mattermost auto-responde a DMs por defecto. El comportamiento de canales se controla con chatmode:
- oncall (por defecto): Solo responder cuando se @menciona en canales.
- onmessage: Responder a cada mensaje en canales.
- onchar: Responder cuando los mensajes comienzan con ciertos prefijos de activación.
Ejemplo:
{
channels: {
mattermost: {
chatmode: "onchar",
oncharPrefixes: [">", "!"],
},
},
}Notas:
- onchar aún responde a @menciones explícitas.
- channels.mattermost.requireMention en configs antiguos sigue siendo compatible, pero se recomienda chatmode.
Control de Acceso (DMs)
- Por defecto: channels.mattermost.dmPolicy = "pairing" (remitentes desconocidos reciben un código de emparejamiento).
- Aprobar:
- openclaw pairing list mattermost
- openclaw pairing approve mattermost <CÓDIGO>
- DMs públicos: channels.mattermost.dmPolicy="open" y channels.mattermost.allowFrom=["*"].
Canales/Grupos
- Por defecto: channels.mattermost.groupPolicy = "allowlist" (también afectado por restricción de mención).
- Usar channels.mattermost.groupAllowFrom para lista permitida de remitentes (ids de usuario o @username).
- Canales abiertos: channels.mattermost.groupPolicy="open" (aún afectado por restricción de mención).
Objetivos de Entrega Saliente
Usar en openclaw message send o cron/webhooks:
- channel:<id>: Entregar a un canal
- user:<id>: Entregar a un DM
- @username: Entregar a un DM (resuelto vía API Mattermost)
IDs simples se tratan como IDs de canal.
Múltiples Cuentas
Configurar múltiples cuentas bajo channels.mattermost.accounts:
{
channels: {
mattermost: {
accounts: {
default: { name: "Primaria", botToken: "mm-token", baseUrl: "https://chat.example.com" },
alerts: { name: "Alertas", botToken: "mm-token-2", baseUrl: "https://alerts.example.com" },
},
},
},
}Solución de Problemas
- Sin respuesta en canales: Asegúrate que el bot se ha unido al canal; @mención es necesaria en modo oncall; prefijo de activación es necesario en modo onchar; o establece chatmode a onmessage.
- Errores de autenticación: Verificar token de bot, URL base, y si la cuenta está habilitada.
- Problemas multi-cuenta: Las variables de entorno solo aplican a la cuenta default.