Sessions and memory
Acoplamiento de canales
El acoplamiento de canales es un desvío de llamadas para una sesión de OpenClaw. Mantiene el mismo contexto de conversación, pero cambia el lugar donde se entregan las respuestas futuras de esa sesión. El acoplamiento solo funciona desde un chat directo; no se ejecuta desde un chat grupal.
Ejemplo
Alice puede enviar mensajes a OpenClaw en Telegram y Discord:
{ session: { identityLinks: { alice: ["telegram:123", "discord:456"], }, },}Si Alice envía esto desde un chat directo de Telegram:
/dock_discordOpenClaw conserva el contexto de la sesión actual y cambia la ruta de respuesta:
| Antes del acoplamiento | Después de /dock_discord |
|---|---|
Las respuestas van a Telegram 123 |
Las respuestas van a Discord 456 |
La sesión no se vuelve a crear. El historial de la transcripción permanece asociado a la misma sesión.
Por qué usarlo
Use el acoplamiento cuando una tarea comience en una aplicación de chat, pero las siguientes respuestas deban llegar a otro lugar.
Flujo habitual:
- Inicie una tarea de agente desde Telegram.
- Cambie a Discord, donde está coordinando el trabajo.
- Envíe
/dock_discorddesde el chat directo de Telegram. - Mantenga la misma sesión de OpenClaw, pero reciba las respuestas futuras en Discord.
Configuración necesaria
El acoplamiento requiere session.identityLinks. El remitente de origen y el interlocutor de destino
deben pertenecer al mismo grupo de identidad:
{ session: { identityLinks: { alice: ["telegram:123", "discord:456", "slack:U123"], }, },}Los valores son identificadores de interlocutor con el prefijo del canal:
| Valor | Significado |
|---|---|
telegram:123 |
Id. de remitente de Telegram 123 |
discord:456 |
Id. de interlocutor directo de Discord 456 |
slack:U123 |
Id. de usuario de Slack U123 |
La clave canónica (alice en el ejemplo anterior) es únicamente el nombre del grupo de identidad compartido. Los comandos de
acoplamiento usan los valores con el prefijo del canal para demostrar que el remitente de origen y el
interlocutor de destino son la misma persona.
Comandos
OpenClaw genera un comando /dock-<channel> para cada Plugin de canal cargado
que admita comandos nativos, por lo que la lista crece a medida que se añaden plugins. Plugins
incluidos que lo admiten actualmente:
| Canal de destino | Comando | Alias |
|---|---|---|
| Discord | /dock-discord |
/dock_discord |
| Mattermost | /dock-mattermost |
/dock_mattermost |
| Slack | /dock-slack |
/dock_slack |
| Telegram | /dock-telegram |
/dock_telegram |
La forma con guion bajo también es el nombre del comando nativo en interfaces como Telegram, que exponen directamente los comandos con barra diagonal.
Qué cambia
El acoplamiento actualiza los campos de entrega de la sesión activa:
| Campo de sesión | Ejemplo después de /dock_discord |
|---|---|
lastChannel |
discord |
lastTo |
456 |
lastAccountId |
la cuenta del canal de destino o default |
Esos campos se conservan en el almacén de sesiones y se usan para la entrega de respuestas posteriores de esa sesión.
Qué no cambia
El acoplamiento no:
- crea cuentas de canal
- conecta un nuevo bot de Discord, Telegram, Slack o Mattermost
- concede acceso a un usuario
- elude las listas de permitidos del canal ni las políticas de mensajes directos
- mueve el historial de la transcripción a otra sesión
- hace que usuarios no relacionados compartan una sesión
Solo cambia la ruta de entrega de la sesión actual.
Solución de problemas
El comando indica que el remitente no está vinculado.
Añada tanto el remitente actual como el interlocutor de destino al mismo grupo de
session.identityLinks. Por ejemplo, si el remitente de Telegram 123 debe acoplarse
al interlocutor de Discord 456, incluya tanto telegram:123 como discord:456.
El comando indica que el acoplamiento solo está disponible desde chats directos.
Envíe el comando de acoplamiento desde un chat directo con OpenClaw, no desde un chat grupal.
El comando indica que no existe ninguna sesión activa.
Realice el acoplamiento desde una sesión existente de chat directo. El comando necesita una entrada de sesión activa para poder conservar la nueva ruta.
Las respuestas siguen llegando al canal anterior.
Compruebe que el comando haya respondido con un mensaje de confirmación y confirme que el id. del interlocutor de destino coincida con el id. usado por ese canal. El acoplamiento solo cambia la ruta de la sesión activa; otra sesión puede seguir dirigiendo las respuestas a otro lugar.
Necesito volver al canal anterior.
Envíe el comando correspondiente al canal original, como /dock_telegram o
/dock-telegram, desde un remitente vinculado.