Una de las preguntas que más me hacen sobre Claude Code: "¿cómo retomo lo que estaba haciendo ayer?". La respuesta corta es claude -c. La respuesta larga, que toca conocer porque ahorra tiempo y dinero, está en este artículo.
Si vienes con dudas más generales, mira cómo funciona Claude Code por dentro, el sistema de tasks y la memoria infinita explicada. Aquí solo nos centramos en sesiones.
Los tres comandos que tienes que conocer
1. claude --continue (o claude -c)
Retoma la última sesión que tuviste en este directorio. Sin ventanas, sin pickers. Lo más rápido cuando sabes que quieres seguir donde lo dejaste.
claude -cCaso típico: cierras la terminal por la noche, vuelves por la mañana, cd al proyecto, claude -c. Estás justo donde estabas: archivos leídos, tools ejecutadas, conversación intacta.
2. claude --resume (o claude -r)
Abre un picker interactivo con tus sesiones recientes en este directorio. Útil cuando tienes varias en paralelo (ej: una para una feature, otra para un bug).
claude -rTe muestra:
Las últimas N sesiones del directorio.
Fecha, primera prompt, número de turnos.
Selección con flechas + Enter.
3. /resume (dentro de Claude Code)
Si ya estás en una sesión y quieres saltar a otra:
> /resumeMismo picker que --resume, pero sin salir y volver a entrar.
Lo que pasa por dentro al retomar
Cuando retomas una sesión, el cliente:
Deserializa el message history completo desde el disco local.
Restaura tool results: archivos leídos, comandos bash ejecutados, edits aplicados.
Reconstruye el estado de plan (si estabas en Plan Mode), permisos otorgados, hooks activos.
La conversación continúa exacto como la dejaste.
Las sesiones se guardan en ~/.claude/projects/<hash-del-cwd>/<session-id>.jsonl. Una sesión por archivo, en formato JSON Lines. Cada línea es un evento (mensaje, tool use, tool result, etc.).
El truco para sesiones grandes
Si la sesión es muy larga, releerla entera consume una buena parte de tu cuota de uso. Desde Q1 2026, Claude Code te pregunta:
La sesión seleccionada es grande (45K tokens, ~$0.40 al releerla).
¿Quieres retomar desde un resumen?
[s] Sí, resumen [n] No, sesión completa [q] CancelarEl resumen es una compactación de la conversación que conserva las decisiones clave y olvida ruido (intermediate thinking, comandos cancelados, etc.). Útil cuando quieres seguir el espíritu de la sesión sin pagar por restaurarla literal.
Cuándo elegir resumen: el tema general estaba claro, querías llegar a un objetivo y aún no llegaste.
Cuándo elegir completa: necesitas las referencias exactas a archivos, líneas y tool results que ya hubo.
Sesiones nombradas
Desde principios de 2026 puedes etiquetar sesiones:
> /name auth-refactorA partir de ese momento, claude -r te muestra el nombre en vez del fragmento de la primera prompt.
Para automatización:
claude --resume --session auth-refactor --print "ejecuta los tests del módulo"Útil para scripts, hooks y CI.
Continue en modo non-interactive
Para scripts puedes combinar -c con -p (print mode):
claude -c -p "verifica que los tests pasan y devuélveme el resumen"Claude continúa la última sesión, ejecuta el prompt y sale tras devolver la respuesta. Sin sesión interactiva, perfecto para CI.
⚠️ Cuidado en CI: claude -c retoma "la última" basándose en cwd. Si tu CI clona limpio, no hay sesión previa. En ese caso, usa --resume <session-id> con un ID que tu pipeline conozca.
Multi-sesión: cuándo abrir una nueva
A veces lo correcto no es retomar: es empezar de cero.
Cambias de tarea radicalmente (de un bug en backend a docs).
La sesión anterior tiene contexto que ya no aplica.
Quieres un experimento "limpio" sin sesgo.
claude (sin flags) abre nueva. claude -c retoma. Si dudas, abre nueva: las sesiones viejas no se pierden, las puedes recuperar con -r.
Búsqueda dentro del historial
El picker de -r no tiene búsqueda nativa fuerte (en versiones 2.1+). Si tienes muchas sesiones, opciones:
Opción 1: jq sobre los JSONL
# Busca sesiones que mencionan "auth"
jq -r 'select(.role == "user") | .content' \
~/.claude/projects/$(pwd | sha256sum | cut -c1-8)/*.jsonl \
| grep -i authOpción 2: extensión cclog
Hay un binario de la comunidad (cclog o similar) que indexa tu historial y permite búsqueda fulltext. Buscar en GitHub: claude-code-history-search.
Opción 3: el comando /history (próximo)
En el roadmap reciente. A día de mayo 2026 está en preview en algunas builds.
Casos prácticos
Caso 1: estoy en mitad de un refactor y se va la luz
Cierre brusco. Vuelves al equipo, cd al proyecto, claude -c. Continúa desde el último mensaje. Las edits ya aplicadas siguen aplicadas (están en disco). Las pendientes están en la conversación.
Caso 2: vuelvo de vacaciones, la sesión es enorme
Abres con -r, eliges la sesión, eliges resumir (te ahorras tokens al releer). Claude te dice "vale, según el resumen, estábamos haciendo X y nos quedaba Y". A partir de ahí, tira.
Caso 3: tengo 3 features en paralelo
Trabaja con sesiones nombradas:
> /name feature-billing
[más tarde]
> /name feature-search
[más tarde]
> /name bug-loginY entre ellas saltas con /resume. Cada feature mantiene su contexto.
Caso 4: pair programming con un compañero
Si tu compañero tiene acceso al mismo equipo y al mismo ~/.claude/projects/, puede hacer claude -r y abrir la misma sesión. No es colaboración en tiempo real (las sesiones son single-actor), pero sirve para "recoger el testigo".
Para colaboración real, Cowork de Claude o ContextHub de Levante Platform.
Caso 5: automatizar con hooks
Un hook OnSessionEnd puede guardar metadata útil:
#!/usr/bin/env bash
SESSION_ID=$1
SUMMARY=$(jq -r '.[-1].content' ~/.claude/projects/.../$SESSION_ID.jsonl)
echo "Sesión $SESSION_ID terminada: $SUMMARY" >> ~/sessions.logCon esto te montas un log unificado de qué hizo Claude en cada sesión, útil para auditoría.
Errores comunes
Asumir que
-cretoma global: no, retoma "la última en este directorio". Si cambias de proyecto, cambia la sesión.No nombrar sesiones largas: a las dos semanas ya no recuerdas qué era "Sesión 14:32 del 15 abril". Nómbralas.
Confundir
--continuecon--resume: continue va directo a la última, resume abre picker.Retomar sesiones de hace meses sin resumir: el coste de releer 100K tokens cada vez es serio. Resumir o cerrar.
Borrar
~/.claude/projects/: borra todo el historial. Si es tu sandbox personal vale, pero ten backup si tiene valor.
Combinarlo con otras features
Plan Mode: si retomas una sesión que estaba en Plan Mode, sigue en Plan Mode. Útil para tareas críticas que pides "no toques nada hasta que apruebe".
Output styles: el output style activo se mantiene al retomar.
Hooks: los hooks aplican a la sesión continuada igual que a una nueva.
Statusline: tu statusline puede mostrar el
session-idactual, útil cuando trabajas con muchas en paralelo.
El fichero .jsonl por dentro
Para los curiosos. Una sesión típica:
{"role":"user","content":"refactoriza X","timestamp":"2026-05-03T11:23:45Z"}
{"role":"assistant","content":"Voy a leer el archivo primero...","tool_uses":[{"name":"Read","arguments":{"file_path":"/.../X.ts"}}]}
{"role":"tool_result","tool_use_id":"toolu_01...","content":"...código del archivo..."}
{"role":"assistant","content":"Veo el problema. Cambio Y por Z."}
...Cada turno escribe varias líneas. Editarlo a mano es posible pero peligroso: Claude puede confundirse si la conversación queda incoherente. Si tienes que limpiar algo, mejor /forget <topic> desde dentro.
Conclusión
claude -c para "sigo donde lo dejé". claude -r para elegir entre varias sesiones. /name para no perderse. Resumen automático para sesiones grandes. Ya tienes el 95% de lo que vas a usar.
Si tu workflow involucra muchas sesiones paralelas (varios proyectos a la vez, varias ramas), invierte 10 minutos en aprender los flags y nombrarlas. Te ahorra horas a la semana.
Más sobre el ecosistema: los hooks de Claude Code, Plan Mode, memoria infinita y el cerebro: el loop agéntico.



