Cuándo uso skill, cuándo prompt, cuándo regla de CLAUDE.md

Tengo tres formas de decirle al agente cómo comportarse. Tardé un rato en entender cuándo usar cada una — y más en entender que la confusión no era técnica sino conceptual.

Las preguntas que me hago antes de elegir:

1. ¿Esto aplica siempre, sin excepción? Si sí → va al CLAUDE.md. Son los constraints que aprendí que si no los fijo ahí, los pierdo: el tono, el idioma, las convenciones del proyecto. Si lo tengo que decir en cada conversación, está en el lugar equivocado.

2. ¿Es un procedimiento que voy a repetir varias veces? Si sí → es una skill. Una skill tiene nombre, tiene trigger, y el agente la invoca solo cuando la situación lo pide. No necesito pedirla explícitamente cada vez. La diferencia con CLAUDE.md es que una skill no aplica siempre — aplica en ciertos contextos, y el agente aprende a reconocerlos.

3. ¿Es una decisión de esta conversación en particular? Si sí → es un prompt. Un ajuste puntual, un contexto que cambia, algo que no quiero hardcodear porque la próxima vez puede ser distinto.

Por qué funciona pensar así

Cada nivel responde a una frecuencia distinta.

Lo que va al CLAUDE.md lo escribo una vez y no lo toco más. Lo que es skill lo entreno una vez y el agente lo activa cuando corresponde. Lo que va en el prompt lo digo y se va.

Cuando los mezclaba, lo que debía durar no duraba — el tono cambiaba de conversación en conversación. Y lo que debía ser flexible quedaba clavado — instrucciones de un contexto que ya no existía contaminando uno nuevo.

El eje “siempre / varias veces / solo ahora” simplifica la decisión porque la ancla en el tiempo, no en la importancia. No es que el prompt sea menos importante que una regla de CLAUDE.md. Es que tiene una vida útil diferente.

Lo que cambió cuando empecé a usarlo

El error que cometía antes: metía todo en prompts. Cada conversación nueva tenía que volver a explicar lo mismo — el tono, las convenciones del proyecto, qué archivos tocar y cuáles no. El agente era capaz, pero arrancaba de cero cada vez.

Cuando empecé a distinguir estos tres niveles, dejé de repetirme. Las conversaciones arrancan desde donde dejé.

Lo otro que cambió sin que lo buscara: cuánto contexto le queda al agente para el trabajo real. Lo que está en CLAUDE.md viaja en cada turno — pesa siempre. Lo que está en una skill se carga sólo cuando hace falta. Y lo que va al prompt vive y muere en esa conversación. Cuando metía instrucciones repetidas en CLAUDE.md o en prompts largos, el agente arrancaba con la ventana de contexto ya consumida en setup. Mover los procedimientos a skills me devolvió tokens donde importan — en el contenido que estoy produciendo, no en explicarle cómo trabajar.

Sigue sin ser perfecto. Hay cosas que todavía no sé bien dónde poner. Pero la pregunta de “¿esto aplica siempre, varias veces, o solo ahora?” me alcanza para el 90% de los casos.

Comentarios