Si sigues pegando el mismo checklist en el chat, ese texto encaja mejor como skill. Una skill es un directorio con un SKILL.md. Claude la añade a las herramientas disponibles, la usa cuando encaja la descripción, o la invocas con /skill-name.
CLAUDE.md hace otra cosa. Se carga al inicio de cada sesión, así que debe quedarse en la información breve que hace falta cada vez: comandos que usas a menudo, convenciones del equipo y el criterio de cuándo el trabajo ya está hecho. El cuerpo de una skill se carga solo cuando la usas. El material de referencia largo casi no ocupa contexto de la conversación (tokens) hasta que lo necesitas.
Los comandos personalizados se han fusionado en skills. Un archivo en .claude/commands/deploy.md y una skill en .claude/skills/deploy/SKILL.md crean ambos /deploy. Los archivos de comando que ya tienes siguen funcionando. El trabajo nuevo debería ser una skill: puede llevar archivos de apoyo, controlar si la invocas tú o Claude, y cargar sola cuando viene a cuento.
Dónde ponerla
- Proyecto:
.claude/skills/<name>/SKILL.md, con commit para que el equipo la reciba - Personal:
~/.claude/skills/<name>/SKILL.md, todos los proyectos de esta máquina - Anidada: bajo un paquete en un monorepo (un repositorio con varios paquetes), para trabajo que solo aplica ahí
El nombre del directorio es el comando que escribes. El bloque de metadatos YAML entre --- al inicio del archivo le dice a Claude cuándo usarla. El markdown de debajo es el procedimiento.
Empieza con una skill que solo informa
Una primera skill que solo reporta inspira más confianza, porque no edita archivos. Lee los cambios aún no confirmados (commit) y escribe notas. No edita archivos ni crea un commit.
El archivo que guardas es el bloque en inglés de abajo. Cada línea le pide a Claude lo siguiente.
description: pide un resumen breve de los cambios aún no confirmados. Se usa cuando el usuario pregunta qué cambió, quiere notas antes de un commit o una lista de riesgos. Solo informa; no edita archivos ni crea un commit.!`git diff HEAD`: antes de leer el resto, inserta en el texto los cambios aún no confirmados.- 1: resume el cambio en tres viñetas o menos.
- 2: lista riesgos: pruebas que faltan, secretos, o un comportamiento que parece accidental.
- 3: si no hay cambios, lo dice y para.
- 4: no edita archivos. No ejecuta comandos git que escriban.
Guarda este inglés como .claude/skills/review-notes/SKILL.md:
---
name: review-notes
description: Write a short review of the current diff. Use when the user asks what changed, wants notes before a commit, or asks for a risk list. Report only; do not edit files or create a commit.
---
## Diff
!`git diff HEAD`
## Instructions
1. Summarize the change in three bullets or fewer.
2. List risks: missing tests, secrets, or behavior that looks accidental.
3. If the diff is empty, say so and stop.
4. Do not edit files. Do not run git write commands.
Arranca Claude en el repo y escribe /review-notes, o pregunta “¿qué cambié?” si la descripción basta para que Claude la cargue. La línea ! inserta los cambios aún no confirmados antes del resto, así que las notas se basan en ese diff. Comprueba que salga un resumen corto y una lista de riesgos.
Una vez cargada, la skill se queda en los turnos siguientes de la conversación y gasta tokens, así que escribe solo los pasos, no la justificación. Si no debe dispararse sola, pon disable-model-invocation: true y llámala solo con /review-notes.