# Close New Session

> Cierra la sesión actual Y prepara el arranque de una nueva porque el contexto se está agotando. Hace todo lo de /close (destilar a memoria) y además escribe un fichero de traspaso en docs/handoffs/ con el estado exacto, encadenado a traspasos previos, y devuelve el prompt listo para pegar en la sesión nueva. Úsalo cuando el usuario diga "/close-new-session", "me quedo sin contexto", "sigo en otra sesión" o "prepara el traspaso".

- Skill: `nectoagency/close-new-session-2` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add nectoagency/close-new-session-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/nectoagency/close-new-session-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: nectoagency (https://skillmd.com/u/nectoagency)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/nectoagency/close-new-session-2

---


# /close-new-session — cierre + traspaso

Dos entregables: la **memoria de largo plazo** (lo que importa dentro de meses) y el **traspaso**
(lo que importa dentro de cinco minutos, en la sesión nueva). Son cosas distintas. No las mezcles.

- Memoria = hechos duraderos, sin ruido de sesión.
- Traspaso = estado volátil: qué estaba a medio editar, qué comando estaba corriendo, qué se probó y falló.

## Paso 1 — Estado real

```bash
git status --short
git diff --stat
git log --oneline -8
git stash list
ls -t docs/handoffs/*.md 2>/dev/null | head -3
```

Si `docs/handoffs/` no existe, créalo. Si el repo no tiene `docs/`, usa `.claude/handoffs/`.

## Paso 2 — Encadenar

Mira el último traspaso listado. Si trata **del mismo hilo de trabajo**, este es su continuación:
hereda el slug y sube el número de secuencia. Si es tema nuevo, empieza en `01`.

Nombre: `docs/handoffs/YYYY-MM-DD-<slug>-<NN>.md`
Ejemplo: `docs/handoffs/2026-08-25-auth-rewrite-03.md`

## Paso 3 — Memoria

Sigue `memory-triage.md` (en esta misma carpeta de skill). Léelo antes de escribir.
Mismo filtro que `/close`: solo lo que no se deduce leyendo el repo. Busca duplicados. Actualiza `MEMORY.md`.

Hazlo **antes** del traspaso: así el traspaso puede apuntar a las memorias por su slug en vez de repetirlas.

## Paso 4 — Escribir el traspaso

Plantilla completa. Rellena todo; si una sección está vacía, escribe "—" en vez de borrarla.

````markdown
# Traspaso — <título del hilo de trabajo>

**Fecha:** YYYY-MM-DD · **Secuencia:** NN · **Anterior:** <fichero previo o "—">
**Rama:** <rama> · **Último commit:** <sha corto> <asunto>

## Objetivo
<Una frase: qué se intenta conseguir en este hilo. No lo de hoy — lo del hilo entero.>

## Dónde estamos
<10-20 bullets. Estado concreto, no narrativa. Qué funciona, qué no, qué está a medio hacer.>

## Qué se probó y NO funcionó
<Lo más valioso del fichero. Cada intento con su motivo de fallo, para no repetirlo.>
- <enfoque> → falló porque <motivo>

## Decisiones tomadas
- <decisión> — porque <motivo> — <fecha>

## Ficheros tocados
<Rutas relativas + una línea de qué cambió en cada uno. Marca los que están sin commitear.>

## Sin commitear
<Salida de git status --short, o "limpio">

## Contexto que no está en el repo
<IDs, URLs, credenciales por ubicación (NUNCA el valor), qué VPN hace falta, qué está caído.>

## Memorias escritas en este cierre
- [[slug_de_memoria]] — <qué cubre>

## Siguiente paso
1. <acción concreta>
2. <acción concreta>
3. <acción concreta>

## Arranque rápido
```bash
<comandos exactos para dejar el entorno como estaba: cd, VPN, servidor, tests>
```
````

Reglas del contenido:
- **Rutas y comandos exactos.** "el fichero de config" no sirve; `src/config/database.ts` sí.
- **Nunca** un valor de token o secreto. Solo dónde vive.
- Fechas absolutas.
- Si algo no se verificó, escríbelo como no verificado. Un traspaso que miente cuesta más que uno vacío.

## Paso 5 — Devolver el prompt de arranque

Termina con esto, en un bloque de código para copiar de una:

`````
## Sesión cerrada — traspaso listo

Memoria:
  + <fichero>.md — nueva: <hook>
  ~ <fichero>.md — actualizada: <qué cambió>

Traspaso: docs/handoffs/<fichero>.md  (secuencia NN)

**Pega esto en la sesión nueva:**

```
Lee docs/handoffs/<fichero>.md y continúa desde "Siguiente paso".
```
`````

## Qué NO hacer

- No commitear ni pushear salvo petición explícita. El traspaso **sí** se escribe a disco (ese es el punto),
  pero se queda sin commitear salvo que el usuario diga otra cosa.
- No duplicar en el traspaso lo que ya fue a memoria — enlázalo por slug.
- No escribir un traspaso genérico. Si no puedes nombrar el siguiente paso concreto, el traspaso no vale.

