Antonio Herrera.
6Fase 6 · Claude desde cero

CLAUDE.md: el contrato entre tu proyecto y Claude

Crear el proyecto de práctica, generar el CLAUDE.md con /init y darle contexto

Por Antonio Herrera Publicada en octubre 2026 4 min de lectura
8/13
Qué vas a conseguir: crear la app de práctica con Claude Code, ponerla bajo control de versiones y darle un CLAUDE.md: las instrucciones que Claude lee al empezar cada sesión.
Tiempo: 20 minutos. Necesitas: la carpeta mis-tareas de la fase 5 y Git instalado (en Windows, Git para Windows). La app de esta fase está en el repositorio: soluciones/fase-06/.
Paso 1 · Pide la app

Entra en la carpeta, arranca Claude Code y comprueba abajo que estás en manual mode (si no, pulsa Shift + Tab hasta verlo). Escribe:

Claude Code
Crea una app web de lista de tareas en un único fichero index.html, con HTML, CSS y JavaScript y sin dependencias. Debe permitir añadir tareas, marcarlas como hechas y borrarlas, y guardarlas en localStorage. Diseño limpio y textos en español.

Claude escribe el código y, antes de crear el fichero, te pide permiso enseñándote lo que va a escribir:

Claude Code muestra el final del código de index.html y pregunta Do you want to create index.html? con las opciones Yes, Yes and switch to accept edits y No
«Do you want to create index.html?» 1 = sí, esta vez; 2 = sí y aprobar automáticamente las ediciones de ficheros durante la sesión; 3 = no. Con Tab puedes matizar la petición antes de responder. Elige 1 y pulsa Enter.
Resumen de Claude: he creado la app en index.html, qué hace (añadir, marcar como hecha, borrar, guardado, resumen) y el diseño
Claude resume lo que ha hecho y avisa de lo que no ha comprobado («No la he abierto en el navegador»). Lee siempre este resumen.

Abre index.html con doble clic para probarla:

La app Mis tareas en el navegador con la caja ¿Qué tienes que hacer?, el botón Añadir y tres tareas, una de ellas tachada
La app funcionando, con unas tareas de ejemplo. La tuya será parecida, pero no idéntica: cada vez que Claude genera código, el resultado varía.
Paso 2 · Ponla bajo control de versiones sin salir de Claude

Si empiezas un mensaje con !, lo que escribas se ejecuta directamente en la terminal (modo shell). Escribe ! y después git init:

Modo shell: ! git init con el resultado Initialized empty Git repository y Claude proponiendo los siguientes pasos
El resultado del comando entra en la conversación, así que Claude lo ve y propone qué hacer después. Git es tu red de seguridad: con él puedes deshacer cualquier cambio.
Paso 3 · Genera el CLAUDE.md con /init

CLAUDE.md es un fichero de texto en la raíz del proyecto que Claude lee al empezar cada sesión. Es el lugar para explicarle cómo es el proyecto y cómo quieres que trabaje. No hace falta escribirlo desde cero:

Claude Code
/init
Propuesta de CLAUDE.md generada por /init con las secciones Architecture y Conventions y la pregunta Do you want to create CLAUDE.md?
/init analiza el proyecto y propone un CLAUDE.md: qué es la app, cómo está organizada y qué convenciones sigue. Lo generó en inglés; lo arreglamos en el paso siguiente. Acepta con 1.
Paso 4 · Hazlo tuyo

El CLAUDE.md generado es un punto de partida. Añade lo que Claude no puede deducir del código: tus preferencias y reglas de trabajo.

Claude Code
Reescribe el CLAUDE.md en español y añade al final una sección «Forma de trabajar» con dos reglas: propón un plan y espera mi aprobación antes de cambios grandes, y escribe los commits en español y en imperativo.
Diff del CLAUDE.md con líneas en rojo eliminadas en inglés y líneas en verde añadidas en español, incluida la sección Forma de trabajar
Así se ve un cambio antes de aplicarlo: en rojo lo que se quita y en verde lo que se añade. Revisa y acepta con 1.
› El CLAUDE.md que quedó en nuestra sesión
CLAUDE.md (resumido)
# CLAUDE.md ## Proyecto «Mis tareas» es una lista de tareas en un único archivo: todo (HTML, CSS y JS) está en index.html. No hay compilación ni dependencias. ## Arquitectura - Estado: array tareas con objetos { id, texto, hecha }, guardado en localStorage. - Ciclo: modificar → guardar() → render(). - Seguridad: el texto se inserta con textContent, nunca con innerHTML. ## Convenciones - Interfaz, identificadores y comentarios en español. - Sin dependencias externas. ## Forma de trabajar - Antes de hacer cambios grandes, propón un plan y espera mi aprobación. - Escribe los mensajes de commit en español y en imperativo.

El fichero completo está en soluciones/fase-06/CLAUDE.md del repositorio.

Paso 5 · Dónde vive la memoria: /memory
Menú Memory con Auto-memory true, Project instructions en ./CLAUDE.md, User instructions en ~/.claude/CLAUDE.md y Open auto-memory folder
/memory te deja abrir y editar los ficheros de instrucciones y ver la memoria automática (las notas que Claude toma solo).
./CLAUDE.md
Del proyecto. Se sube al repositorio y lo comparte todo el equipo.
~/.claude/CLAUDE.md
Tuyo, para todos tus proyectos: preferencias personales.
./CLAUDE.local.md
Tuyo, solo en este proyecto. Añádelo a .gitignore.
Memoria automática
Lo que Claude aprende de tus correcciones. Puedes activarla o desactivarla.
Un buen CLAUDE.md es corto y concreto. Cómo se ejecuta, cómo se prueba, qué convenciones seguir y qué no hacer nunca. Si una instrucción es una obligación que no admite excepciones, mejor un hook (fase 9) o un permiso (fase 8): el CLAUDE.md orienta, no obliga.
✓ Gate 6 — CLAUDE.md útil
✓
La app de tareas funciona en el navegador
✓
He aprobado la creación de un fichero
✓
He usado el modo shell con !
✓
He generado el CLAUDE.md con /init
✓
Le he añadido mis reglas de trabajo
✓
Sé dónde está cada tipo de memoria

Fuentes oficiales: How Claude remembers your project · Quickstart · Commands. Revisado el 15 de octubre de 2026 con Claude Code 2.1.300.

Hablemos →