Ir al contenido principal
Traducción automática en fase de mejora, sin revisión nativa todavía. Informa de errores en GitHub (se abre en una pestaña nueva).
Nuevo

Mensajería entre sesiones: tus sesiones de Claude Code por fin se hablan

Desde agosto de 2026, una sesión de Claude Code puede enviar un mensaje a otra con ListAgents y SendMessage. Funcionamiento, seguridad, ajustes y casos de uso concretos.

  • Tutorial
  • Productividad
Publicado el

En resumen

Si ejecutas varias sesiones de Claude Code en paralelo, conoces la escena: una sesión renombra una columna de la base de datos y eres tú quien va a avisar a la otra, copiando y pegando de un terminal a otro. Desde la v2.1.224, publicada la semana del 3 al 7 de agosto de 2026, ya no hace falta. Tus sesiones pueden enviarse mensajes.

Es como pasar de una oficina donde todos trabajan con cascos a una oficina con mensajería interna. Cada uno conserva su puesto y sus carpetas, pero puede pasar un dato sin levantarse.

Cómo funciona

Claude usa dos herramientas: ListAgents para encontrar tus otras sesiones y SendMessage para escribirles. Nunca llamas a estas herramientas tú mismo. Lo pides en lenguaje natural, o Claude decide por su cuenta enviar un mensaje cuando un cambio que acaba de hacer afecta a otra sesión.

Un punto importante: un mensaje es un texto que Claude redacta para la otra sesión. Nunca es tu historial de conversación ni tus archivos. Para transferir una conversación completa, hay que reanudar la sesión, no escribirle.

Ejemplo de la documentación oficial, con dos sesiones abiertas en la misma máquina:

Tell the session working on the payments API that users.name is now users.display_name

La sesión que recibe muestra una línea atenuada del tipo › Message from @api-worker: Schema migration finished (ctrl+o to expand). Ctrl+O abre el texto completo. Claude, en cambio, siempre lee el mensaje entero, aunque no lo despliegues.

Apuntar a una sesión concreta

Desde la v2.1.232, puedes nombrar la sesión destinataria con @, igual que para mencionar un subagente. Escribe @ y las primeras letras de su nombre, y elígela en la lista.

Let @api-worker know the schema migration finished

Para dar un nombre claro a una sesión, usa /rename o el flag --name al lanzarla. Sin nombre, Claude Code genera uno.

Ver quién está disponible

El comando /list-agents (alias /peers) muestra las sesiones a las que Claude puede llegar: los subagentes de la sesión actual, los compañeros de un agent team, tus otras sesiones locales y tus sesiones en la nube o en otras máquinas si estás conectado a Remote Control.

Casos de uso concretos

La documentación cita cuatro situaciones típicas:

1

Transmitir un hallazgo

Una sesión descubre un cambio que rompe algo o toma una decisión. Claude lo resume para la sesión que trabaja en la zona afectada, en lugar de que tú lo vuelvas a explicar.

2

Coordinar worktrees en paralelo

Varias sesiones trabajan en el mismo repositorio en worktrees separados. Claude avisa a las demás de lo que se acaba de integrar.

3

Seguir un trabajo largo

Una migración o una batería de tests se ejecuta en otra sesión. Puede informarte en la sesión en la que estás.

4

Llegar a otra máquina

Mediante Remote Control, puedes escribir a una sesión en otra de tus máquinas o en la nube.

Recibir un aviso cuando una sesión termina

Desde la v2.1.236, Claude puede pedir a otra sesión local que le envíe un único aviso cuando quede inactiva o termine. Práctico cuando esperas una migración:

Tell me when the migration session finishes what it's working on

Si no llega respuesta en 12 horas, la suscripción caduca y Claude lo sabe, para no esperar indefinidamente.

La pregunta incómoda: la seguridad

Dejar que los agentes hablen entre sí puede inquietar. La documentación fija reglas claras sobre lo que puede hacer un mensaje recibido:

  • No puede aprobar nada. Un mensaje de otra sesión nunca cuenta como tu consentimiento y no puede responder a una petición de permiso en tu lugar.
  • No puede cambiar la configuración. Claude tiene instrucciones de no modificar nunca los permisos, el CLAUDE.md ni otros ajustes porque otra sesión se lo pida.
  • Los comandos no se ejecutan. Un /compact escrito en un mensaje llega como texto plano.
  • Las peticiones de permiso siguen activas. Si actuar sobre el mensaje exige un permiso que la sesión no tiene, ves la misma petición de siempre.

En auto mode, el clasificador revisa además cada mensaje que una sesión envía a otra antes de entregarlo.

En una misma máquina, los mensajes pasan por un socket propio de cada sesión (una named pipe en Windows), nunca por los servidores de Anthropic. Hacia otra máquina o la nube, transitan por los servidores de Anthropic a través de Remote Control.

Los ajustes útiles

El parámetro crossSessionInbound decide qué pasa con los mensajes entrantes:

ValorEfecto
acceptCada mensaje se entrega a Claude
holdSe muestra un aviso, el mensaje no se entrega
refuseEl mensaje se descarta sin entregarse

Para exigir tu aprobación antes de que un mensaje salga de la máquina, activa isolatePeerMachines. Y para desactivar por completo la función en una organización, la documentación propone esta configuración en los managed settings:

{
"permissions": {
"deny": ["SendMessage", "ListAgents"]
},
"crossSessionInbound": "refuse"
}

Cuidado: denegar SendMessage también corta la comunicación con los subagentes y los compañeros de un agent team, porque es la misma herramienta.

Disponibilidad y límites

  • Versiones: v2.1.224 como mínimo en macOS, Linux y WSL 2, v2.1.234 como mínimo en Windows nativo.
  • Aislamiento: una sesión dentro de un contenedor y una sesión en el host no pueden comunicarse. Tampoco una sesión en WSL 2 y una sesión de Windows nativo en el mismo ordenador.
  • Solo texto: sin archivos adjuntos. Un mensaje local se rechaza a partir de aproximadamente un millón de caracteres.
  • Bucles: la sesión receptora limita los mensajes repetidos y pone en cola como máximo 50 mensajes aceptados, así que un bucle entre dos sesiones se detiene solo.

Si /list-agents no se reconoce, tu sesión no tiene la función: empieza por claude --version.

Próximos pasos