Skills en Claude Code: qué son, cómo se escriben y cuándo usarlas (2026)

Le pides lo mismo cada semana y cada vez sale distinto. Una skill fija el procedimiento una vez: qué es, cómo la carga Claude, dónde se guarda y cómo se escribe su SKILL.md.

Por

Director de Ciade · 9 min de lectura · Datos comprobados el 27 de septiembre de 2026

Índice del artículo
  1. Una skill es una receta
  2. Qué es una skill
  3. Cómo la carga Claude
  4. Dónde viven
  5. El formato de SKILL.md
  6. Cómo se invoca (y cómo se impide)
  7. Skill, CLAUDE.md, hook o subagente
  8. Skills y MCP juntas
  9. Cómo saber si una skill funciona
  10. Crea tu primera skill, paso a paso
  11. Una skill de ejemplo: el informe del lunes
  12. Otro ejemplo: contestar reseñas con la voz del negocio
  13. Por dónde empezar

Una skill es la forma que tiene Claude Code de guardar un procedimiento: cómo se hace algo en tu empresa, paso a paso, con su formato y sus comprobaciones, para que el agente lo siga igual cada vez que haga falta. Es una carpeta con un archivo SKILL.md dentro, y se invoca con una barra, como un comando: /informe-semanal.

Resuelve un problema concreto. Cada sesión de Claude Code abre una ventana de contexto nueva. Lo que vale para todo el proyecto —cómo se prueba, qué no se toca— va en el archivo de instrucciones, que se carga siempre, y la memoria automática guarda preferencias y correcciones. Pero un procedimiento largo que solo usas los lunes no merece ocupar espacio en cada sesión, y tampoco conviene reescribirlo en el chat cada semana. Ese hueco es el de las skills.

Esta guía explica qué son, cómo las carga Claude, dónde se guardan, cómo se escribe su SKILL.md y cómo comprobar que funcionan, con una skill de ejemplo completa al final. Todo está comprobado con la documentación oficial el 27 de septiembre de 2026.

Una skill es una receta

Imagina la cocina de un restaurante. El manual de la casa dice cosas que valen siempre: dónde está cada cosa, las normas de higiene, cómo se llama cada plato. Eso es el CLAUDE.md. Pero la receta del arroz de los domingos no está en el manual: está en una ficha aparte que el cocinero saca solo cuando toca hacer arroz. Eso es una skill.

La ventaja es la misma que en la cocina: el arroz sale parecido lo haga quien lo haga, y el manual no se llena de recetas que solo se usan una vez por semana.

Qué es una skill

Una skill es una carpeta con un archivo SKILL.md adentro. Ese archivo tiene dos partes: un encabezado con datos —el nombre y, sobre todo, la descripción— y el cuerpo con las instrucciones, escrito en Markdown. Nada más es obligatorio.

Si la tarea lo pide, la carpeta puede traer más: un archivo de referencia con el detalle que no cabe en las instrucciones, ejemplos, o scripts que el agente ejecuta en lugar de redactar de más. La recomendación de la documentación es mantener SKILL.md por debajo de 500 líneas y mover el material largo a archivos aparte que el propio SKILL.md nombra.

Dos datos que ordenan el tema:

  • Es un estándar abierto. Las skills de Claude Code siguen el estándar Agent Skills, de agentskills.io, pensado para que la misma carpeta funcione en varias herramientas de IA, no solo en una.
  • Los comandos personalizados ya son skills. Antes había dos cosas distintas; hoy un archivo .claude/commands/despliega.md y una skill .claude/skills/despliega/SKILL.md crean el mismo comando. Si encuentras carpetas commands viejas, siguen funcionando tal cual.

Y Claude Code ya trae algunas skills de fábrica —/doctor, /code-review, /debug— que se invocan igual que las tuyas y sirven de modelo de cómo se escriben.

Tres pasos en vertical: al empezar ve el nombre y la descripción, cuando la pides lee las instrucciones de SKILL.md y, si hace falta, abre los archivos de apoyo.
Por eso tener muchas skills cuesta poco: el grueso de su contenido se lee solo cuando se usa.

Cómo la carga Claude

Claude no lee tus skills completas al arrancar. Lo que entra en la ventana de contexto de cada sesión es un listado: el nombre y la descripción de cada una. Con eso sabe qué existe. El cuerpo —las instrucciones— lo lee solo cuando la skill se invoca, sea porque tú escribiste /nombre o porque tu pedido encaja con su descripción. Y los archivos de apoyo se leen solo cuando el propio SKILL.md los nombra.

Ese reparto tiene dos consecuencias prácticas:

  • El material largo es barato. Como el cuerpo se carga solo al usarse, una referencia extensa dentro de la skill cuesta casi nada hasta el día que se necesita.
  • Las skills que Claude puede activar solo ocupan un poco de contexto siempre. Su nombre y su descripción están en el listado, las uses o no; las que reservas para invocar tú no ocupan nada hasta que las llamas. Coleccionar skills sin uso gasta contexto que le hace falta a tu conversación.

Por eso la descripción es la parte que más trabajo merece: es lo único que Claude ve para decidir si la usa. Una descripción genérica («ayuda con informes») compite con todo lo demás; una concreta («prepara el informe semanal para dirección a partir de las hojas de ventas, gastos y banco») se reconoce en cuanto la pides. Hazla concreta y pon el caso de uso principal al principio, porque el texto conjunto de description y when_to_use se corta, en el listado, a los 1.536 caracteres.

Así no

description: Ayuda con informes.

Así sí

description: Prepara el informe semanal para dirección a partir de las hojas de ventas, gastos y banco. Usar cuando se pida el informe semanal o los números de la semana.

La primera compite con cualquier otra cosa que tenga que ver con informes. La segunda dice qué hace, con qué datos y cuándo usarla.

Dónde viven

La carpeta donde guardas la skill decide quién la ve. Las tres rutas que importan a diario: la personal, para todos tus proyectos; la de proyecto, para quien trabaja en ese repositorio; la de plugin, para entregarla instalada junto con otras piezas.

Dónde vive cada skill y quién la ve

Personal

Ruta: ~/.claude/skills/<nombre>/SKILL.md

Dónde carga: En todos tus proyectos de esa computadora

De proyecto

Ruta: .claude/skills/<nombre>/SKILL.md

Dónde carga: En las sesiones de ese repositorio; se entrega al equipo por git

Anidada

Ruta: <subcarpeta>/.claude/skills/<nombre>/SKILL.md

Dónde carga: En las sesiones que arrancan en esa subcarpeta o por debajo, o cuando Claude trabaja con archivos de esa subcarpeta desde una sesión iniciada más arriba

De empresa

Ruta: .claude/skills/<nombre>/SKILL.md en el directorio de configuración administrada

Dónde carga: En las computadoras donde tu organización la despliega

De plugin

Ruta: <plugin>/skills/<nombre>/SKILL.md

Dónde carga: Donde el plugin está activo, con su prefijo: /mi-plugin:nombre

De la cuenta claude.ai

Ruta: Se activan en los ajustes de la cuenta, sin archivo local

Dónde carga: En sesiones en la nube y en las de terminal donde inicias sesión con esa cuenta

Si dos skills se llaman igual, la de empresa le gana a la personal y la personal a la de proyecto. Las de plugin no chocan: viajan con su prefijo. Fuente: code.claude.com · Consultado el 27/9/2026

Un detalle que ahorra reinicios: si editas o agregas una skill en plena sesión, Claude Code detecta el cambio y la recoge sin que vuelvas a arrancar. La excepción es una carpeta de skills de nivel superior que no existía al abrir la sesión: para esa hay que ejecutar /reload-skills.

El formato de SKILL.md

El archivo abre con un bloque de configuración en YAML entre dos líneas ---. Si la primera línea del archivo no es ---, todo el archivo se lee como instrucciones y ningún campo aplica. Después del bloque van las instrucciones en Markdown.

Todos los campos son opcionales y solo description es recomendable. Un campo que Claude Code no reconoce se ignora sin error, así que un nombre mal escrito no rompe nada: solo no hace nada. Estos son los que de verdad se usan al empezar:

Campos del frontmatter que más se usan

name

Para qué sirve: Nombre del comando en el menú /. Si no está, se usa el nombre de la carpeta.

description

Para qué sirve: Qué hace la skill y cuándo usarla. Claude la lee para decidir si la activa. El campo que más cuidado merece.

when_to_use

Para qué sirve: Contexto extra de activación, como frases que la disparan. Se suma a description en el listado.

argument-hint

Para qué sirve: Pista de argumentos en el autocompletado, como [numero-de-issue].

disable-model-invocation

Para qué sirve: En true, solo tú puedes invocarla con /nombre; Claude no la activa por su cuenta.

user-invocable

Para qué sirve: En false, desaparece del menú / y solo Claude puede activarla.

allowed-tools

Para qué sirve: Herramientas que Claude usa sin pedirte permiso durante el turno que invocó la skill.

disallowed-tools

Para qué sirve: Herramientas que Claude no puede usar mientras la skill está activa.

model

Para qué sirve: Modelo que se usa mientras la skill está activa.

context

Para qué sirve: En fork, la skill corre en un subagente con su propio contexto, sin tu historial de conversación.

agent

Para qué sirve: Tipo de subagente que la ejecuta cuando context es fork.

paths

Para qué sirve: Patrones de archivo que limitan la activación a esos archivos.

Con el cuerpo, la regla es poca instrucción y clara: una vez cargada, su contenido se queda en la conversación turno tras turno, así que cada línea es un costo recurrente. Fuente: code.claude.com · Consultado el 27/9/2026

Cómo se invoca (y cómo se impide)

Dos caminos. El tuyo: escribes /informe-semanal y listo; puedes pasar argumentos —/arregla-issue 123— y el texto que sigue al nombre llega a las instrucciones donde escribiste $ARGUMENTS. El de Claude: lee tu pedido, lo compara con las descripciones del listado y, si una encaja, carga esa skill.

Cada camino se puede cerrar por separado:

  • disable-model-invocation: true deja la skill solo para ti. Es lo que quieres en tareas con efectos fuera del chat: desplegar, enviar, publicar. Tú decides cuándo, no el criterio del agente. Además, su descripción deja de ocupar espacio en el listado de Claude.
  • user-invocable: false hace lo contrario: la oculta del menú / y la deja como conocimiento de fondo que Claude activa cuando encaja. Sirve para contexto que no es un comando, como cómo funciona el sistema viejo de la empresa o cómo se llama cada tabla.

Skill, CLAUDE.md, hook o subagente

Cuatro mecanismos que conviene no mezclar. Si no conoces el archivo de instrucciones, aquí está la guía de CLAUDE.md y AGENTS.md.

Cuál es cuál y cuándo se carga

CLAUDE.md: archivo de instrucciones del proyecto

Cuándo se carga: Al inicio de cada sesión, entero

Para qué usarlo: Hechos que aplican a todo: comandos de compilación, convenciones, reglas del equipo

Skill: carpeta con SKILL.md

Cuándo se carga: Su nombre y descripción al arrancar; el cuerpo, solo al invocarla

Para qué usarlo: Procedimientos y tareas que se repiten y no hacen falta en cada sesión

Hook: comando que Claude Code ejecuta en un punto fijo de su ciclo

Cuándo se carga: En su evento del ciclo, decida el agente lo que decida

Para qué usarlo: Obligar algo en un momento exacto: revisar el formato antes de cada commit, por ejemplo

Subagente: agente con su propio contexto y sus herramientas, definido en .claude/agents/

Cuándo se carga: Cuando Claude le delega una tarea

Para qué usarlo: Trabajos que conviene correr aislados de la conversación principal

La regla de la documentación: cuando una entrada de CLAUDE.md se volvió un procedimiento, muévela a una skill; lo que debe ocurrir en un punto exacto, aunque el modelo piense otra cosa, es un hook. Fuente: code.claude.com · Consultado el 27/9/2026

Y por encima de todo esto está el plugin: un directorio que agrupa skills, subagentes, hooks y servidores MCP y se instala como una unidad desde un catálogo. Sirve cuando quieres entregar o recibir un paquete completo con un comando, no cuando estás escribiendo tu primera skill.

Skills y MCP juntas

Una skill son instrucciones; no le da a Claude brazos nuevos. Los brazos son herramientas, y un servidor MCP es la forma de conectar herramientas nuevas: un programa que le da acceso a un sistema externo. La distinción está explicada en herramienta y habilidad y en qué es MCP.

Juntas cubren el flujo completo. Imagina el circuito de una orden de compra: la skill lleva el procedimiento con el criterio de tu empresa —qué revisar, en qué orden, con qué formato dar de alta la factura— y el servidor MCP del sistema contable aporta las acciones: consultar la orden, crear el documento. La skill dice qué hacer; el servidor, con qué hacerlo. Y si quieres repartir el conjunto, un plugin puede empaquetar la skill y el servidor MCP juntos: quien instala recibe instrucciones y herramientas de una vez.

Cómo saber si una skill funciona

Que la skill se active solo prueba que Claude la encontró; no prueba que hizo lo que querías. Hay que medir dos cosas por separado: si se invoca con los pedidos que debe, y si el resultado sale como esperas cuando se invoca.

El método es una comparación de base. Junta unos pedidos reales —los que de verdad escribes en el trabajo, no ejemplos de laboratorio—, córrelos en una sesión nueva con la skill disponible y vuelve a correrlos con la skill desactivada. La sesión nueva importa: si la pruebas en la misma conversación donde la escribiste, el contexto sobrante tapa los huecos de las instrucciones. Para no hacerlo a mano, la documentación describe el plugin oficial skill-creator, que se instala con /plugin install skill-creator@claude-plugins-official: guarda los casos de prueba junto a la skill, corre cada uno en una sesión aislada, califica el resultado y compara dos versiones a ciegas para que confirmes que un cambio fue una mejora antes de guardarlo.

Con los resultados delante, revisa dos cosas:

  • Activación. Haz una lista corta con pedidos que deberían usar la skill y otros parecidos que no. Si falla en los primeros, a la descripción le faltan las palabras con las que tú lo pides; si salta en los segundos, está demasiado abierta, o conviene reservarla con disable-model-invocation: true para invocarla tú.
  • Calidad. Compara lo que devuelve con el resultado que harías a mano. Si se parece a lo que saldría sin skill, las instrucciones son demasiado generales: escribe el formato esperado y los pasos concretos, no consejos.

Crea tu primera skill, paso a paso

  1. Elige una tarea que repitas

    Algo que hagas cada semana y que tenga un formato que ya conoces: el informe, la respuesta a reseñas, el resumen de una reunión.

  2. Crea la carpeta

    Dentro de tu proyecto, .claude/skills/nombre-de-la-tarea/. El nombre de la carpeta es el del comando: /nombre-de-la-tarea.

  3. Escribe el SKILL.md

    Arriba, entre dos líneas ---, el nombre y una descripción concreta. Debajo, los pasos, el formato de entrega y qué hacer si falta un dato.

  4. Pruébala en una sesión nueva

    Escribe /nombre-de-la-tarea con datos que ya conozcas y compara con lo que harías a mano.

  5. Corrige solo lo que falle

    Si algo sale mal, añade la instrucción que faltaba. No la llenes de reglas por si acaso.

Una skill de ejemplo: el informe del lunes

Imagina que cada lunes preparas el informe de dirección: abres la hoja de ventas, la de gastos y el archivo del banco, y lo armas con el formato que la dirección ya conoce: resumen, ventas por día, gastos por categoría y las diferencias que merecen atención. A mano, hay que reunir y ordenar los datos cada semana. Sin instrucciones, cada semana el agente te lo devolvería con otra estructura y otro criterio.

La skill fija el formato una vez. Crea la carpeta informe-semanal dentro de .claude/skills/ de tu proyecto y guarda dentro este SKILL.md:

informe-semanal/SKILL.md
---
name: informe-semanal
description: Prepara el informe semanal para dirección con el formato fijo de la empresa. Usar cuando se pida el informe semanal, el resumen del lunes o los números de la semana.
argument-hint: "[semana en formato AAAA-MM-DD; opcional]"
disable-model-invocation: true
---

# Informe semanal

Prepara el informe de la semana que se indique; si no se indica, la más reciente en datos/.

## Datos

- Lee datos/ventas.csv, datos/gastos.csv y datos/banco.csv.
- Cada archivo tiene una fila por día; la semana va del lunes al domingo.

## Formato de entrega

Escribe el informe en informes/informe-<fecha-del-lunes>.md con estas secciones, en este orden y con estos títulos:

1. Resumen en tres líneas: venta total, costo total, saldo.
2. Ventas por día, en tabla, con el total al final.
3. Gastos por categoría, en tabla, con el total al final.
4. Diferencias: días con venta por debajo de la semana anterior y gastos que no estaban la semana pasada.

## Antes de entregar

- Comprueba que el total de cada tabla coincide con el número que dices en el resumen.
- Si falta un archivo o un día, escribe «dato faltante» y nombra el archivo: no completes el número.
- No añadas secciones, consejos ni conclusiones que nadie pidió.
Con disable-model-invocation: true, el informe sale cuando tú escribes /informe-semanal, no cuando al agente le parece buen momento.

Fíjate en qué hace que esta skill funcione: la descripción deja claro en el menú para qué sirve, y como lleva disable-model-invocation: true solo se ejecuta cuando tú escribes /informe-semanal; el formato está cerrado, con secciones, orden y títulos; la verificación va antes de entregar; y hay una regla para el hueco —si falta un dato, se escribe «dato faltante» en vez de completarlo—.

Pruébala en una sesión nueva con los datos de una semana que ya conozcas. Si el informe sale igual al que hiciste a mano, la skill está lista. Si no, el ajuste suele estar en la descripción o en un paso ambiguo, no en escribir más.

Otro ejemplo: contestar reseñas con la voz del negocio

Imagina un restaurante que recibe reseñas en Google cada día y quiere contestarlas todas con el mismo tono, sin sonar a robot. Esta skill no publica nada: prepara los borradores para que alguien los revise y los pegue.

responder-resenas/SKILL.md
---
name: responder-resenas
description: Prepara borradores de respuesta a reseñas del restaurante con la voz de la casa. Usar cuando se pegue una o varias reseñas y se pida contestarlas.
---

# Responder reseñas

Para cada reseña que te pase, escribe un borrador de respuesta:

- Tono: cercano, de tú, sin exclamaciones ni emojis. Firma: «El equipo de Casa Lola».
- Máximo cuatro frases.
- Si la reseña es buena: agradece algo concreto que mencione (un plato, el trato).
- Si es mala: reconoce el problema sin excusas, di qué vamos a revisar e invita a escribir a [email protected].
- Nunca ofrezcas descuentos ni devoluciones: eso lo decide el encargado.
- Si la reseña menciona un problema de salud o una alergia, no respondas: escribe «PASAR AL ENCARGADO».

Entrega: una lista con la reseña resumida en una línea y debajo el borrador.

Por dónde empezar

Elige una sola tarea para tu primera skill: una que hagas cada semana, que tenga un formato que ya conozcas y cuyo resultado puedas comparar con el que harías a mano. El informe de este ejemplo cumple las tres condiciones. Escríbela corta, pruébala con los datos de una semana cerrada y compara. Solo cuando falle en algo concreto, añade la instrucción que falta.

Una skill no hace infalible al agente: hace predecible el encargo. Revisar lo que devuelve sigue siendo trabajo tuyo, y la guía completa de Claude Code explica el resto de piezas —permisos, hooks, subagentes— que ayudan a controlarlo.

Términos relacionados

Formación

Aprende a usar la IA en tu trabajo, con criterio.

El nivel 0 es gratis: cuarenta minutos para entender qué pedirle a la IA y qué revisar. El programa completo enseña a implementarla en tu propio negocio, tarea a tarea.