claude-code-notifier
cómo funciona guías preguntas frecuentes
◐Español
English العربية Deutsch Español Français עברית Italiano 日本語 한국어 Nederlands Polski Português (Brasil) Русский Türkçe Tiếng Việt 简体中文 繁體中文
Empezar
Todas las guías

Varias sesiones de Claude Code: cómo saber cuál te necesita

Actualizado el 31 de octubre de 2026 · 6 min de lectura
en esta página 01Por qué las sesiones en paralelo generan confusión 02Primero, separa bien las sesiones 03Incluye el proyecto en cada aviso hecho por ti 04Lo difícil: responder en la sesión correcta 05Preguntas frecuentes

Cuando ejecutas varias sesiones de Claude Code a la vez, un simple aviso de "Claude necesita tu atención" no basta, porque no sabes qué sesión lo ha enviado. La solución es incluir el proyecto o la carpeta de la sesión en cada notificación. Cada hook recibe el cwd y el session_id de la sesión en JSON, así que tu hook puede leerlos y poner el nombre del proyecto en el aviso. Dales nombres claros a las sesiones con claude -n <name> o /rename, y usa claude --worktree <name> para que cada sesión paralela sobre un mismo repositorio tenga su propia carpeta, que luego aparece en el aviso.

01Por qué las sesiones en paralelo generan confusión

Tener dos o tres sesiones de Claude Code en paralelo ya es una forma normal de trabajar: una arregla un bug, otra escribe tests y otra explora un refactor. Cada sesión se detiene a su ritmo. Los problemas son siempre los mismos:

  • llega un aviso y no sabes de qué pestaña del terminal viene;
  • una sesión lleva veinte minutos esperando en un prompt de permisos mientras tú mirabas otra;
  • respondes en la ventana equivocada.

Los tres se reducen a identificar. Cada aviso debería decir de dónde viene, y cada respuesta debería volver a la sesión que preguntó.

02Primero, separa bien las sesiones

Usa worktrees para el mismo repositorio

Dos sesiones editando el mismo checkout se pisarán los cambios. El flag --worktree de Claude Code (-w en corto) crea un git worktree aislado e inicia la sesión en él:

claude --worktree feature-auth
claude --worktree fix-login

Por defecto, cada worktree se crea en .claude/worktrees/<name>/ en la raíz del repositorio, en una rama nueva llamada worktree-<name>. Ejecuta cada comando en su propio terminal. Añade .claude/worktrees/ a tu .gitignore para que los worktrees no aparezcan como archivos sin seguimiento.

Al salir, Claude Code revisa el worktree. Si está limpio y nunca le pusiste nombre a la sesión, Claude Code elimina el worktree y su rama; si no, te pregunta si quieres conservarlo. Para volver más tarde a un worktree conservado, ejecuta el comando claude --worktree <name> --resume que muestra al salir. Si prefieres gestionar los worktrees tú mismo, git worktree add ../project-feature-a -b feature-a también funciona; inicia claude dentro de esa carpeta.

Un efecto secundario útil para las notificaciones: ahora cada sesión tiene su propio nombre de carpeta, como feature-auth, que es justo lo que quieres ver en un aviso.

Ponles nombre a tus sesiones

Los nombres facilitan encontrar y reanudar sesiones:

claude -n auth-refactor

Dentro de una sesión en curso, /rename auth-refactor hace lo mismo, y el nombre aparece en la barra del prompt. Más tarde, claude --resume auth-refactor te lleva directamente de vuelta. En el selector de sesiones (claude --resume sin nombre), Ctrl+W amplía la lista a todos los worktrees del repositorio.

03Incluye el proyecto en cada aviso hecho por ti

Cada hook de comando recibe JSON por la entrada estándar con campos comunes a todos los eventos, como session_id, cwd, transcript_path y hook_event_name. En una sesión con worktree, cwd es la raíz del worktree, y sigue a Claude si cambia de directorio. Léelo en tu hook y usa la última parte de la ruta como etiqueta.

En Mac y Linux, guarda esto como ~/.claude/hooks/notify-session.sh y hazlo ejecutable con chmod +x. Necesita jq.

#!/bin/sh
input=$(cat)
project=$(basename "$(printf '%s' "$input" | jq -r '.cwd')")
event=$(printf '%s' "$input" | jq -r '.hook_event_name')

case "$event" in
  Stop) msg="Claude has finished" ;;
  *)    msg="Claude needs you" ;;
esac

notify-send "Claude Code: $project" "$msg"

En Mac, cambia la última línea por una notificación con osascript, como se muestra en la guía de macOS. En Windows, lee el mismo JSON en PowerShell con ConvertFrom-Json; la guía de Windows tiene un ejemplo completo.

Luego regístralo para los eventos que te interesen en ~/.claude/settings.json:

{
  "hooks": {
    "Stop": [
      { "hooks": [{ "type": "command", "command": "~/.claude/hooks/notify-session.sh" }] }
    ],
    "Notification": [
      { "matcher": "permission_prompt", "hooks": [{ "type": "command", "command": "~/.claude/hooks/notify-session.sh" }] }
    ]
  }
}

Dos apuntes sobre rutas. Pon entre comillas variables como "$input", porque los nombres de carpeta pueden tener espacios. Y si referencias un script con ${CLAUDE_PROJECT_DIR}, recuerda que apunta siempre a la carpeta donde empezó la sesión, incluso después de que Claude pase a un worktree. Lee cwd del input cuando necesites la carpeta actual.

Si trabajas en tmux, el panel o la ventana suele ser mejor etiqueta que la carpeta. La guía de tmux explica cómo encontrar el panel correcto y cambiar a él.

04Lo difícil: responder en la sesión correcta

Una alerta con etiqueta te dice qué sesión te necesita, pero aún tienes que ir a esa terminal para responder. Con tres sesiones, eso significa buscar la pestaña correcta, desplazarte hasta el prompt y escribir. Un hook hecho por ti no puede devolver tu respuesta fácilmente, porque solo el hook que está esperando dentro de esa sesión puede devolverle una decisión a Claude Code.

Ese es el hueco que cubre Claude Code Notifier. Es una herramienta independiente, no creada por Anthropic. Su herramienta de línea de comandos, ccn, se instala como hooks de Claude Code en Mac, Windows y Linux, así que cubre todas las sesiones que inicies, en cualquier terminal, sin configurar nada por sesión. Cada notificación incluye el nombre y la carpeta del proyecto, para que en tu iPhone o tu móvil Android veas qué sesión la envió. Como el hook que envió la solicitud es el que espera tu respuesta, una aprobación, una elección o una instrucción de seguimiento desde el móvil vuelve a la sesión que preguntó.

Algunos detalles importantes cuando tienes varias sesiones:

  • Varios ordenadores. Un móvil puede vincularse con varios ordenadores, y un ordenador con varios móviles. ccn devices muestra los móviles vinculados a este ordenador.
  • Presencia. Si has escrito en los últimos 30 segundos, no se espera al móvil y la terminal pregunta como siempre. Si no estás, la sesión espera la respuesta del móvil hasta el límite que elijas (hold_ceiling_seconds) y deja de esperar en cuanto tocas el teclado.
  • Notificaciones de escritorio sin móvil. Antes de vincular un móvil, ccn muestra una notificación de escritorio en el ordenador cuando cualquier sesión termina, necesita un permiso o hace una pregunta.

Si solo usas una sesión a la vez y estás en tu mesa, probablemente te baste con una alerta de escritorio con etiqueta. La guía comparativa pone las opciones una al lado de otra.

05Preguntas frecuentes

¿Cómo sé qué sesión de Claude Code envió una notificación?

Lee el campo cwd del JSON de entrada del hook y pon el nombre de la carpeta en el título de la alerta. Con worktrees, cada sesión tiene su propia carpeta, así que el nombre es distinto para cada una. Herramientas como Claude Code Notifier incluyen el nombre y la carpeta del proyecto en cada notificación por ti.

¿Puedo tener dos sesiones de Claude Code en el mismo repositorio?

Sí, pero dale a cada una su propio worktree para que sus cambios no choquen. claude --worktree <name> crea uno en .claude/worktrees/<name>/ en una rama nueva e inicia la sesión ahí.

¿Cómo le pongo nombre a una sesión de Claude Code?

Iníciala con claude -n <name>, o ejecuta /rename <name> dentro de una sesión. Retómala más tarde con claude --resume <name>.

¿Los hooks se ejecutan por separado en cada sesión?

Sí. Cada sesión ejecuta sus propios hooks cuando se disparan sus eventos, y pasa en el input el session_id y el cwd de esa sesión. Los hooks de ~/.claude/settings.json se aplican a todas las sesiones que inicies.

¿Se mezclarán las notificaciones de distintos ordenadores?

Con ccn, no. Cada ordenador se vincula con tu móvil por separado y tiene su propio nombre, y cada notificación indica el proyecto del que viene.

Claude Code Notifier Recibe un push en el móvil cuando Claude Code termina o te necesita, y aprueba, deniega o responde desde ahí. La herramienta de línea de comandos ccn es gratis en Mac, Windows y Linux.
Descargar para iOS Descargar para Android Instalar ccn

Guías relacionadas

  • Los hooks de Claude Code explicados: cada evento y para qué sirveQué son los hooks de Claude Code, dónde van en settings.json, cómo funcionan los matchers, la entrada y los códigos de salida, y para qué sirve cada evento de hook.
  • Claude Code en tmux o screen: recibir avisos desde una sesión desconectadaRecibe avisos cuando Claude Code en tmux o screen termina o te necesita: allow-passthrough, alertas de campana, nombrar la sesión y pushes al teléfono cuando estás desconectado.
  • Todas las formas de recibir notificaciones de Claude Code, comparadasAlertas integradas, tus propios hooks, ntfy y webhooks de chat, Remote Control de Anthropic y apps de notificaciones, comparados según lo que puede y no puede hacer cada uno.
  • Deja Claude Code trabajando y vete: un flujo de trabajoUna rutina práctica para tareas largas de Claude Code: mantén el ordenador despierto, elimina prompts innecesarios, recibe avisos en el móvil y responde desde ahí.
claude-code-notifier

Claude Code Notifier es una aplicación independiente de terceros. No está afiliada, respaldada ni patrocinada por Anthropic, PBC. "Claude" y "Claude Code" son marcas comerciales de Anthropic, PBC.

apps App para iOS App para Android ccn para macOS, Windows y Linux Todas las guías
legal Política de privacidad Condiciones del servicio Otros idiomas © 2026 touchtap. Todos los derechos reservados. TouchTap Ltd está registrada en Inglaterra y Gales, número de empresa 13942589.