Reanude una sesión
Las sesiones se guardan continuamente en archivos de transcripción locales mientras trabaja, para que pueda volver a una después de salir o ejecutar/clear. Use estos puntos de entrada:
| Comando | Qué hace |
|---|---|
claude --continue | Reanuda la sesión más reciente en el directorio actual |
claude --resume | Abre el selector de sesiones |
claude --resume <name> | Reanuda la sesión nombrada directamente |
claude --from-pr <number> | Reanuda la sesión vinculada a esa solicitud de extracción |
/resume | Cambia a una conversación diferente desde dentro de una sesión activa |
claude -p o el Agent SDK no aparecen en el selector de sesiones, pero aún puede reanudar una pasando su ID de sesión a claude --resume <session-id>. Ejecute esto desde el directorio en el que se inició la sesión: la búsqueda de ID de sesión se limita al directorio del proyecto actual y sus git worktrees, por lo que una sesión creada en otro lugar reporta No conversation found with session ID: <session-id>.
Dónde busca el selector de sesiones
Las sesiones se almacenan por directorio de proyecto. De forma predeterminada, el selector de sesiones muestra sesiones interactivas del worktree actual, más sesiones iniciadas en otro lugar que agregaron el directorio actual con/add-dir. Use Ctrl+W para ampliar a todos los worktrees del repositorio o Ctrl+A para ampliar a cada proyecto en esta máquina.
A partir de v2.1.169, mover una sesión con /cd la traslada al almacenamiento del proyecto del nuevo directorio, por lo que aparece en el selector de ese directorio después. A partir de v2.1.196, una sesión movida se mantiene fuera del selector del directorio anterior incluso después de un bloqueo o salida forzada. En versiones anteriores, también podría reaparecer en la lista del directorio anterior después de una salida que no fue limpia cuando la ruta anterior contenía caracteres especiales como guiones bajos.
Seleccionar una sesión de otro worktree del mismo repositorio la reanuda en su lugar. Seleccionar una sesión de un proyecto no relacionado copia un comando cd y reanuda a su portapapeles en su lugar.
Reanudar por nombre se resuelve en el repositorio actual y sus worktrees. Ambas formas buscan una coincidencia exacta y la reanudan directamente incluso si vive en un worktree diferente:
| Comando | Coincidencia exacta | Nombre ambiguo |
|---|---|---|
claude --resume <name> | Reanuda directamente | Abre el selector de sesiones con el nombre rellenado previamente como término de búsqueda |
/resume <name> | Reanuda directamente | Reporta un error; ejecute /resume sin argumentos para abrir el selector de sesiones |
Nombre sus sesiones
Dé a las sesiones nombres descriptivos para que sean encontrables en el selector de sesiones y reanudables por nombre. Esto es más importante cuando está trabajando en varias tareas en paralelo.| Cuándo | Cómo establecer el nombre |
|---|---|
| Al inicio | claude -n auth-refactor |
| Durante una sesión | /rename auth-refactor. El nombre también aparece en la barra de indicaciones |
| Desde el selector de sesiones | Resalte una sesión y presione Ctrl+R |
| Al aceptar un plan | Aceptar un plan en modo de plan nombra la sesión desde el contenido del plan a menos que ya haya establecido uno |
claude --resume <name> o /resume <name>. Vea Reanude una sesión para saber cómo se comporta la resolución de nombres en worktrees.
Las sesiones interactivas que nunca nombra aún obtienen un nombre de visualización predeterminado cuando se inician. Requiere Claude Code v2.1.196 o posterior. El valor predeterminado combina el nombre del directorio de trabajo con un sufijo de dos caracteres, por ejemplo my-app-3f, e identifica la sesión en listados de sesiones en ejecución, como vista de agente y salida de claude agents --json.
El valor predeterminado no es un identificador de reanudación: claude --resume <name>, /resume <name> y el selector de sesiones coinciden solo con nombres que usted establece. Nombrar la sesión reemplaza el valor predeterminado.
Usar el selector de sesiones
Ejecute/resume dentro de una sesión, o claude --resume sin argumentos, para abrir el selector de sesiones interactivo. Use estos atajos de teclado para navegar, buscar y ampliar la lista:
| Atajo | Acción |
|---|---|
↑ / ↓ | Navegar entre sesiones |
→ / ← | Expandir o contraer sesiones agrupadas |
Enter | Reanuda la sesión resaltada |
Space | Previsualiza el contenido de la sesión. Ctrl+V también funciona en terminales que no lo capturan como pegado |
Ctrl+R | Renombra la sesión resaltada |
/ o cualquier carácter imprimible que no sea Space | Ingrese al modo de búsqueda y filtre sesiones. Pegue una URL de solicitud de extracción o fusión de GitHub, GitHub Enterprise, GitLab o Bitbucket para encontrar la sesión que la creó |
Ctrl+A | Muestra sesiones de todos los proyectos en esta máquina. Presione nuevamente para volver al repositorio actual |
Ctrl+W | Muestra sesiones de todos los worktrees del repositorio actual. Presione nuevamente para volver al worktree actual. Solo se muestra en repositorios con múltiples worktrees |
Ctrl+B | Filtra a sesiones de la rama git actual. Presione nuevamente para mostrar todas las ramas |
Esc | Salga del selector de sesiones o del modo de búsqueda |
Ctrl+A.
Las sesiones bifurcadas creadas con /branch, /rewind o --fork-session se agrupan bajo su sesión raíz. Presione → para expandir un grupo.
Ramifique una sesión
La ramificación crea una copia de la conversación hasta ahora y lo cambia a ella, dejando el original intacto. Úselo para probar un enfoque diferente sin perder el camino en el que estaba. Desde dentro de una sesión, ejecute/branch con un nombre opcional:
--continue o --resume con --fork-session:
/branch imprime dos IDs de sesión: la nueva rama en la que se encuentra ahora y la original. Para volver a la original, pase su ID a /resume, use el selector de sesiones o ejecute /resume <original-name>. Los permisos que aprobó con “permitir para esta sesión” no se transfieren a la nueva rama. Si reanuda la misma sesión en dos terminales sin bifurcar, los mensajes de ambos se intercalan en una transcripción.
Para rewind basado en puntos de control dentro de una sola sesión, vea Checkpointing.
Gestione el contexto dentro de una sesión
Estos comandos controlan qué hay en la ventana de contexto sin dejar la sesión:/clear: comience de nuevo con un contexto vacío. La conversación anterior se guarda y es reanudable/compact [instructions]: reemplace el historial con un resumen, opcionalmente enfocado en lo que especifique/context: muestre qué está consumiendo actualmente el contexto
Exporte y localice datos de sesión
Ejecute/export para abrir un menú que le permita copiar la conversación actual a su portapapeles o guardarla como un archivo de texto sin formato, con mensajes y salidas de herramientas renderizadas como texto legible. Pase un nombre de archivo para omitir el menú y escribir directamente en ese archivo.
Acceda a conversaciones desde scripts
/export produce una transcripción renderizada para que una persona la lea. Las interfaces a continuación producen datos estructurados para que un script analice: un resultado JSON de una ejecución, la ruta al archivo de transcripción de una sesión, o un flujo en vivo de eventos. Elija según lo que active el script:
- Ejecute Claude una vez y capture el resultado: invoque
claude -pcon--output-format jsonostream-jsonpara capturar el resultado, ID de sesión, uso y costo de una ejecución no interactiva como JSON estructurado. - Haga una pregunta a una sesión existente: pase un ID de sesión a
claude -p --resumepara enviar un mensaje de seguimiento, como una solicitud de resumen, y capture la respuesta estructurada. - Reaccione a eventos de sesión: lea el campo
transcript_pathque hooks y comandos de línea de estado reciben como entrada. Un hookSessionEndpuede archivar la transcripción cuando finaliza una sesión. - Integre Claude en una aplicación TypeScript o Python: use el Agent SDK para recibir cada mensaje mediante programación.
jq:
Dónde se almacenan las transcripciones
De forma predeterminada, las transcripciones se almacenan como JSONL en~/.claude/projects/<project>/<session-id>.jsonl, donde <project> es la ruta de su directorio de trabajo con caracteres no alfanuméricos reemplazados por -. Cada línea es un objeto JSON para un mensaje, uso de herramienta o entrada de metadatos. El formato de entrada es interno de Claude Code y cambia entre versiones, por lo que los scripts que analizan estos archivos directamente pueden romperse en cualquier versión. Para construir sobre datos de sesión, use /export o las interfaces de script en su lugar.
La ubicación, retención y comportamiento de escritura son configurables:
| Para | Establecer | Dónde |
|---|---|---|
Mover almacenamiento fuera de ~/.claude | CLAUDE_CONFIG_DIR | Variable de entorno |
| Cambiar la retención de 30 días | cleanupPeriodDays | settings.json |
| Suprimir escrituras de transcripción en todos los modos | CLAUDE_CODE_SKIP_PROMPT_HISTORY | Variable de entorno |
| Suprimir escrituras para una ejecución no interactiva | --no-session-persistence | Bandera CLI con claude -p |
Ver también
Estas páginas cubren mecánicas relacionadas de sesión y paralelismo:- Worktrees: ejecute sesiones paralelas aisladas en ramas separadas
- Checkpointing: rebobine código y conversación a un punto anterior
- Ventana de contexto: qué llena el contexto y qué sobrevive a la compactación
- Modo no interactivo: comportamiento de sesión bajo
claude -p