Qué es CLAUDE.md y cómo escribir uno que de verdad funcione

Instalaste Claude Code. Ejecutaste algunos prompts. Los resultados fueron... pasables. Quizá te sugirió instalar un paquete que ya tienes. Quizá usó CommonJS cuando todo tu proyecto es ESM. Quizá escribió tests en Mocha cuando tú usas Vitest.
El problema no es Claude Code. El problema es que Claude Code no sabe nada sobre tu proyecto hasta que se lo dices.
Para eso sirve CLAUDE.md. Es un simple archivo markdown que vive en la raíz de tu repositorio y le da a Claude Code el contexto que necesita para trabajar de forma eficaz en tu base de código concreta. Piénsalo como documentación de incorporación (onboarding), no para un nuevo empleado, sino para una IA que puede leer toda tu base de código en segundos pero que aún necesita conocer las reglas no escritas.
Esta guía cubre todo: qué es CLAUDE.md, cómo estructurar uno que de verdad funcione, ejemplos reales para distintos tipos de proyecto, errores que debes evitar y cómo iterar sobre él con el tiempo.
Tabla de contenidos
- ¿Qué es CLAUDE.md?
- Por qué CLAUDE.md importa más de lo que crees
- Anatomía de un buen CLAUDE.md
- Ejemplos reales por tipo de proyecto
- Antipatrones: lo que no debes hacer
- Cómo iterar sobre tu CLAUDE.md
- Cómo ayuda SuperBuilder
- Preguntas frecuentes
¿Qué es CLAUDE.md?
CLAUDE.md es un archivo de configuración para Claude Code, el agente de programación con IA de Anthropic que se ejecuta en tu terminal. Cuando Claude Code inicia una sesión en un directorio, lee automáticamente el archivo CLAUDE.md de la raíz del proyecto para entender las convenciones, la arquitectura y las preferencias de tu base de código.
No es un formato de configuración rígido. No hay esquema, ni campos obligatorios, ni validación. Es markdown plano. Escribes cualquier contexto que ayude a un agente inteligente a trabajar de forma más eficaz en tu proyecto.
Aquí tienes un ejemplo mínimo:
Eso son 12 líneas. Lleva dos minutos escribirlo. Y evita decenas de suposiciones equivocadas.

Dónde viven los archivos CLAUDE.md
Claude Code lee archivos CLAUDE.md desde varias ubicaciones, fusionadas por orden de precedencia:
~/.claude/CLAUDE.md: preferencias globales que aplican a todos los proyectos (tu estilo de programación personal, herramientas preferidas)CLAUDE.mden la raíz del proyecto: convenciones a nivel de proyecto compartidas por el equipoCLAUDE.mden subdirectorios: instrucciones acotadas para partes específicas de un monorepo o base de código
Este enfoque por capas significa que puedes establecer valores por defecto globales y sobrescribirlos por proyecto o por directorio.
Por qué CLAUDE.md importa más de lo que crees
Claude Code es potente. Puede leer archivos, ejecutar comandos, editar código y llevar a cabo planes de varios pasos. Pero la potencia sin contexto da lugar a código de aspecto plausible que no da en el blanco.
Sin un CLAUDE.md, Claude Code:
- Adivinará tu stack. Puede sugerir
jestcuando usasvitest, oaxioscuando usas la API nativafetch. - Ignorará las convenciones del proyecto. ¿Tu equipo pone todas las consultas a la base de datos en una carpeta
repositories/? Claude no lo sabe. - Usará patrones equivocados. ¿Tu app de React usa exclusivamente server components? Claude podría poner
"use client"por defecto en todo. - Se saltará pasos de build. Si tu proyecto necesita
npm run codegenantes de que pasen los tests, Claude no lo sabrá a menos que se lo digas.
Con un CLAUDE.md bien escrito, Claude Code se convierte en un miembro del equipo que sí leyó la documentación de incorporación. Sigue tus patrones, usa tus librerías preferidas y entiende la arquitectura.
La diferencia es enorme. Los equipos que mantienen un buen CLAUDE.md reportan que Claude Code acierta a la primera entre 2 y 3 veces más a menudo en comparación con hacer prompts sin uno.
Anatomía de un buen CLAUDE.md
Tras revisar cientos de archivos CLAUDE.md de proyectos open source y de nuestros propios usuarios, emerge una estructura clara. Los mejores archivos comparten estas secciones:
1. Descripción del proyecto (2-3 líneas)
Indica qué es el proyecto y el stack tecnológico principal. Sé específico con las versiones cuando importe.
2. Comandos clave
Enumera los comandos que un desarrollador (o una IA) necesita para construir, testear, lintar y ejecutar el proyecto. Esta es la sección de mayor valor porque evita que Claude Code adivine.
3. Arquitectura y disposición de archivos
Describe dónde vive cada cosa. Esto evita que Claude Code tenga que escanear todo tu árbol para entender la estructura.
4. Convenciones de código
Aquí es donde codificas las reglas no escritas. Las cosas que un nuevo miembro del equipo aprende en su primera semana.
5. Restricciones importantes
Cosas que Claude Code nunca debe hacer, o que siempre debe hacer.
6. Patrones de testing
Si tu configuración de testing tiene convenciones específicas, déjalas claras.

Ejemplos reales por tipo de proyecto
La teoría está bien, pero necesitas algo que puedas copiar y adaptar. Aquí tienes cinco archivos CLAUDE.md para tipos de proyecto comunes, basados en patrones de proyectos del mundo real.
Ejemplo 1: App de React + TypeScript
Ejemplo 2: API de Python (FastAPI)
Ejemplo 3: Monorepo (Turborepo)
Ejemplo 4: Herramienta CLI (Go)
Ejemplo 5: App móvil (React Native)

Antipatrones: lo que no debes hacer
Un CLAUDE.md malo puede ser peor que no tener ninguno, porque le da a Claude Code un contexto seguro pero equivocado. Aquí están los errores más comunes.
1. La novela (demasiado largo)
Si tu CLAUDE.md supera las 500 líneas, es demasiado largo. Claude Code procesa el archivo completo al inicio de cada sesión, y un archivo excesivamente largo diluye la información importante con ruido.
Mal:
Mejor: enlaza a la documentación en su lugar.
2. La vaguedad ondeante (demasiado genérico)
Las instrucciones que podrían aplicar a cualquier proyecto son espacio desperdiciado.
Mal:
Mejor: sé específico para tu proyecto.
3. La contradicción
Cuando tu CLAUDE.md dice una cosa pero tu base de código hace otra, Claude Code se confunde.
Mal:
...pero la mitad de la base de código usa CSS Modules.
Mejor: reconoce la realidad.
4. El artefacto obsoleto
Un CLAUDE.md escrito hace seis meses que hace referencia a paquetes ya eliminados, a comandos de build que cambiaron o a una arquitectura que fue reestructurada.
Solución: trata CLAUDE.md como documentación viva. Actualízalo cuando cambies tu stack o tus convenciones.
5. La inyección de prompt
Algunos desarrolladores intentan usar CLAUDE.md como un campo de pruebas de prompt engineering, llenándolo de instrucciones elaboradas al estilo system prompt.
Mal:
Mejor: CLAUDE.md es para el contexto del proyecto, no para instrucciones de personalidad. Céntrate en hechos sobre tu base de código.

Cómo iterar sobre tu CLAUDE.md
Tu primer CLAUDE.md no será perfecto. Y está bien. Aquí tienes un proceso práctico para mejorarlo con el tiempo.
Empieza pequeño
Comienza con solo tres secciones: descripción del proyecto, comandos clave y convenciones. Eso cubre el 80% del valor. Siempre puedes añadir más después.
Vigila las correcciones repetidas
Cada vez que te descubras corrigiendo a Claude Code con el mismo comentario ("no, usamos pnpm, no npm" o "pon eso en la capa de servicios"), añádelo a tu CLAUDE.md. Esas correcciones son tu mejor fuente sobre qué incluir.
Revisa cada mes
Programa un recordatorio en el calendario. Lee tu CLAUDE.md una vez al mes. Elimina cualquier cosa obsoleta. Añade todo lo que hayas estado repitiéndole a Claude Code en los prompts.
Pide ayuda a Claude Code
Literalmente puedes pedirle a Claude Code que sugiera mejoras para tu CLAUDE.md:
Claude Code escaneará tu proyecto y sugerirá convenciones que detecte: patrones de import, nomenclatura de archivos, estructuras de test y más. Es una forma excelente de capturar convenciones implícitas que quizá no se te ocurriría documentar.
Usa CLAUDE.md por directorio para proyectos grandes
Si tu proyecto tiene secciones distintas con convenciones diferentes (un frontend y un backend en el mismo repo, por ejemplo), usa archivos CLAUDE.md anidados:

Cómo ayuda SuperBuilder
SuperBuilder es una app de escritorio construida sobre Claude Code que facilita la gestión de tu flujo de trabajo de programación con IA, incluido tu CLAUDE.md.
Editor visual de CLAUDE.md
En lugar de editar manualmente un archivo markdown, SuperBuilder ofrece un editor estructurado que organiza tu CLAUDE.md en secciones. Añade comandos, convenciones y notas de arquitectura mediante una interfaz limpia, y SuperBuilder genera el markdown con el formato correcto.
Sugerencias de plantilla
Cuando abres un nuevo proyecto en SuperBuilder, escanea tu package.json, pyproject.toml, go.mod u otros archivos de manifiesto y sugiere una plantilla de CLAUDE.md adaptada a tu stack. Un proyecto de React + Vite + Vitest recibe sugerencias distintas a las de un proyecto de Django + PostgreSQL.
Sistema de memoria
SuperBuilder mantiene una memoria persistente entre sesiones que funciona junto con CLAUDE.md. A medida que trabajas con Claude Code a través de SuperBuilder, recuerda correcciones y preferencias, construyendo un contexto que complementa tu archivo CLAUDE.md estático. Piensa en CLAUDE.md como la documentación del equipo y en la memoria de SuperBuilder como tus notas personales.
Integración con el modo Debug
Cuando Claude Code depura un problema, SuperBuilder registra hipótesis, resultados de pruebas y hallazgos. Este contexto de depuración funciona con tu CLAUDE.md: la arquitectura y las convenciones que documentas ayudan a Claude Code a formar mejores hipótesis sobre dónde pueden estar los bugs.

Poniéndolo todo junto
Aquí tienes una lista de verificación para escribir tu CLAUDE.md hoy:
- Indica tu stack en 2-3 líneas al principio (framework, lenguaje, librerías clave)
- Enumera cada comando que un desarrollador necesita (dev, test, lint, build, migrate)
- Mapea tu estructura de archivos: ¿dónde viven los componentes, servicios, tests y configuraciones?
- Anota tus convenciones: las reglas no escritas que sigue tu equipo
- Añade restricciones: cosas que Claude Code nunca debe hacer en tu proyecto
- Mantenlo por debajo de 200 líneas para la mayoría de proyectos (500 como máximo para monorepos grandes)
- Súbelo al control de versiones para que todo el equipo se beneficie
- Revísalo cada mes y actualízalo cuando cambien tu stack o tus patrones
Los mejores archivos CLAUDE.md no son obras de arte. Son prácticos, específicos y actuales. Llevan 15 minutos escribirlos y ahorran horas de corregir código generado por IA que no encaja con tu proyecto.
Si usas Claude Code sin un CLAUDE.md, lo estás usando a una fracción de su potencial. Escribe uno hoy. Empieza pequeño, itera y observa cómo la calidad del código generado por IA en tu proyecto da un salto enorme.
Preguntas frecuentes
¿Qué longitud debería tener un CLAUDE.md?
Para la mayoría de proyectos, 50-200 líneas es lo ideal. Los monorepos podrían estirarse hasta 300-500 líneas. Si superas las 500 líneas, probablemente estés incluyendo información que pertenece a archivos de documentación separados.
¿Debería subir CLAUDE.md al control de versiones?
Sí. El CLAUDE.md a nivel de proyecto debería estar en tu repo para que cada miembro del equipo y cada entorno de CI se beneficie de él. Tu ~/.claude/CLAUDE.md personal permanece local.
¿Funciona CLAUDE.md con otras herramientas de IA?
CLAUDE.md es específico de Claude Code (y de herramientas construidas sobre él, como SuperBuilder). Sin embargo, existen convenciones similares para otras herramientas: Cursor usa .cursorrules, GitHub Copilot usa .github/copilot-instructions.md. El contenido suele ser transferible aunque el formato del archivo difiera.
¿Puedo tener varios archivos CLAUDE.md?
Sí. Claude Code lee archivos CLAUDE.md desde tu directorio home, la raíz del proyecto y cualquier subdirectorio en el que estés trabajando. Se fusionan entre sí, dando precedencia a los archivos más específicos.
¿Qué pasa si mi CLAUDE.md contradice el código?
Claude Code generalmente seguirá las instrucciones de tu CLAUDE.md, pero también lee tu código real. Si hay una contradicción, puede confundirse o pedir aclaraciones. La solución es mantener tu CLAUDE.md sincronizado con la realidad: documenta lo que existe y anota los cambios planeados por separado.
¿Debería incluir claves de API o secretos en CLAUDE.md?
Nunca. CLAUDE.md se sube al control de versiones y no debe contener secretos. Usa nombres de variables de entorno en su lugar: "Configura DATABASE_URL en .env para el desarrollo local."
¿En qué se diferencia CLAUDE.md de un README?
Un README es para desarrolladores humanos y suele cubrir instalación, uso y pautas de contribución. CLAUDE.md está optimizado para el consumo por IA: se centra en convenciones, restricciones y patrones que un agente de IA necesita para generar código correcto. Hay cierto solapamiento, pero las audiencias y los objetivos difieren.

¿Quieres sacarle más partido a Claude Code? SuperBuilder te ofrece una interfaz visual para gestionar CLAUDE.md, memoria persistente entre sesiones y potentes herramientas de depuración. Descárgalo gratis en superbuilder.sh.