CLAUDE.md, skill, hook o subagente: ¿cuál necesitas?
Claude Code tiene varios sitios donde poner una instrucción. Se parecen, pero se cargan en momentos distintos, gastan distinto contexto y solo algunos se cumplen a la fuerza.
La respuesta corta
- CLAUDE.mdLo que Claude debe saber siempre: comandos de compilación, convenciones, «nunca hagas X». Se carga en cada sesión.
- SkillMaterial de consulta o un flujo que solo necesitas a veces, como una lista para publicar una versión. Se carga al usarla o cuando escribes su nombre.
- HookAlgo que debe pasar siempre igual sin que decida el modelo, como dar formato tras una edición o bloquear un archivo.
- SubagenteUna tarea lateral que inundaría tu conversación. Trabaja en su propio contexto y devuelve un resumen.
- Servidor MCPUna conexión con algo de fuera, como una base de datos o un navegador.
- PluginUn paquete de lo anterior, para que un segundo repositorio reutilice la misma configuración.
Empieza por lo que falló
La visión general de Anthropic sugiere añadir cada pieza cuando se repite algo concreto, no todas a la vez:
- Claude se equivoca dos veces con una convención o un comando: ponlo en CLAUDE.md.
- Pegas el mismo procedimiento en el chat por tercera vez: hazlo una skill.
- Quieres que algo pase siempre sin pedirlo: escribe un hook.
- Una tarea lateral llena la conversación de salida que no vas a volver a mirar: pásala por un subagente.
- Sigues copiando datos de una pestaña que Claude no ve: conéctala como servidor MCP.
- Un segundo repositorio necesita lo mismo: empaquétalo como plugin.
¿CLAUDE.md o skill?
Las dos guardan instrucciones. CLAUDE.md se carga al empezar cada sesión. Una skill carga su descripción corta en cada sesión y el texto completo solo cuando se usa. La pregunta es con qué frecuencia lo necesita Claude.
La documentación da una regla práctica: mantén CLAUDE.md por debajo de 200 líneas y, si crece, pasa el material de consulta a skills o a archivos de .claude/rules/. Un archivo de reglas con paths en su frontmatter solo se carga cuando Claude trabaja con archivos que encajan. Si quieres ayuda para recortar, nuestra lista de diez comprobaciones de CLAUDE.md lo cubre.
¿Skill o subagente?
Una skill añade su texto a tu conversación principal. Un subagente tiene su propia ventana de contexto y devuelve solo un resumen. Usa un subagente cuando el trabajo lee muchos archivos y solo quieres la conclusión. Usa una skill cuando el contenido debe estar junto a la conversación.
También se combinan: un subagente puede precargar skills y una skill puede correr en un contexto aislado. Mira cómo escribir un SKILL.md para el archivo en sí.
¿Instrucción o candado?
Esta es la que más cuesta. «No edites nunca .env» en CLAUDE.md o en una skill es una petición. El modelo suele cumplirla, pero nada se lo impide. Un hook PreToolUse que bloquea la edición sí la aplica a la fuerza. La documentación dice que, si una regla debe cumplirse siempre, se ponga en un hook.
Dos guías de esta web cubren la parte que se aplica a la fuerza: una lista de partida de reglas de permisos y tres hooks para pegar.
Lo que cuesta cada uno en contexto
- CLAUDE.md: su texto completo va en cada petición.
- Skill: la descripción va en cada petición y el texto completo solo al usarla. Una skill con efectos secundarios puede llevar
disable-model-invocation: truepara que corra solo cuando la nombras. - Hook: nada, salvo que el hook devuelva algo escrito.
- Subagente: queda fuera de tu ventana principal; solo vuelve el resumen.
- Servidor MCP: poco hasta que se usa una herramienta, porque la búsqueda de herramientas viene activada por defecto.
Cuatro ejemplos pequeños
- «Usa pnpm, no npm»: una línea en CLAUDE.md.
- «Nuestra lista para publicar una versión»: una skill, que llamas por su nombre al publicar.
- «Pasa Prettier por cada archivo que edite Claude»: un hook.
- «Busca de dónde viene este error entre cuarenta archivos»: un subagente, para que a tu conversación solo llegue la respuesta.
Límites
- Las categorías se solapan y la documentación de Anthropic es la que manda. Funciones y límites pueden cambiar.
- No hemos medido ahorro de tokens. Los costes de arriba son cómo describe la documentación la carga.
- Esta página no cubre a fondo plugins, servidores MCP ni estilos de salida.
Esta página sigue la visión general «Extend Claude Code» de Anthropic tal como la leemos en octubre de 2026. Esa página manda, y no tenemos relación con Anthropic. La escribimos a partir de la documentación y no hemos probado todas las afirmaciones.
Si quieres una segunda mirada a tu CLAUDE.md y a tus ajustes, el Tune-Up Kit es una lista de comprobación para eso (la ficha está en inglés).