← BLOG
Tutorial

Crea Skills y Comandos Personalizados para Claude Code

Los Skills convierten prompts repetitivos en comandos reutilizables. Escribe un SKILL.md una vez, invócalo con /nombre-del-skill, y Claude Code ejecuta el flujo completo cada vez.

Los Skills son archivos markdown que definen flujos de trabajo reutilizables para Claude Code. En lugar de escribir el mismo prompt complejo cada vez que quieres desplegar, hacer una revisión de código o generar documentación, escribes un SKILL.md una vez y lo invocas con un comando slash.

Qué es un Skill de Claude Code

Un Skill es un archivo markdown (SKILL.md) que contiene instrucciones que Claude Code sigue cuando lo invocas. Puede incluir una descripción, restricciones de herramientas, configuración de contexto e instrucciones paso a paso. Piénsalo como un prompt guardado con superpoderes.

Cómo crear un Skill

Crea un archivo SKILL.md en el directorio .claude/skills/ de tu proyecto (compartido con el equipo) o en ~/.claude/skills/ (personal):

markdown
# .claude/skills/deploy.md
---
name: deploy
description: Desplegar la rama actual a staging
allowed-tools: Bash, Read
---

## Pasos
1. Ejecutar la suite de pruebas: `npm run test`
2. Si las pruebas pasan, compilar el proyecto: `npm run build`
3. Desplegar a staging: `npm run deploy:staging`
4. Verificar el despliegue comprobando el endpoint de salud
5. Publicar un resumen de lo que se desplegó

Ahora puedes invocarlo:

bash
# En Claude Code
> /deploy

Qué opciones de frontmatter están disponibles

OpciónQué haceEjemplo
nameNombre del comando slashdeploy
descriptionSe muestra en la lista de skillsDesplegar a staging
allowed-toolsRestringe qué herramientas puede usar el skillBash, Read, Edit
disable-model-invocationPreviene llamadas anidadas de IAtrue
contextManejo de sesiónfork (se ejecuta en contexto aislado)

Cuáles son buenos casos de uso para Skills

  • +Flujos de trabajo de despliegue (probar, compilar, desplegar, verificar)
  • +Checklists de revisión de código (seguridad, rendimiento, estilo)
  • +Generación de documentación (documentos API, changelogs, READMEs)
  • +Operaciones de base de datos (migración, seeding, backup)
  • +Incorporación de nuevos miembros del equipo (tour del proyecto, verificación de setup)
  • +Gestión de releases (bump de versión, changelog, tag, publicar)

Cómo usar variables en Skills

Los Skills soportan argumentos a través de $ARGUMENTS (texto completo) y variables posicionales ($0, $1, etc.):

markdown
# .claude/skills/create-component.md
---
name: create-component
description: Crear un nuevo componente React
---

Crea un nuevo componente React llamado $0 en el directorio de componentes.

Requisitos:
- TypeScript con interfaz de props adecuada
- Tailwind CSS para estilos
- Exportar como default
- Incluir prueba unitaria básica en __tests__/

Uso: /create-component UserProfile

Invocar con argumentos

bash
# Argumento único
> /create-component UserProfile

# Múltiples argumentos
> /create-component UserProfile --with-tests --with-story

Cómo compartir Skills con tu equipo

Coloca los Skills en el directorio .claude/skills/ de tu proyecto y commitéalos a git. Cada desarrollador que clone el repo obtiene los mismos skills. Los skills personales van en ~/.claude/skills/ y no se comparten.

INFO

Los Skills componen bien con los Hooks. Por ejemplo, un skill de "deploy" puede activar un hook PostToolUse que envíe una notificación a Slack después del despliegue. Construye tu automatización en capas.

Preguntas frecuentes

Cuántos Skills puedo tener?+
No hay un límite estricto. Claude Code descubre todos los archivos SKILL.md en .claude/skills/ y ~/.claude/skills/ al inicio de sesión. Mantén el número manejable (menos de 20) para que la lista de skills siga siendo útil.
Los Skills pueden llamar a otros Skills?+
No directamente. Un Skill es un conjunto de instrucciones para una sola invocación. Sin embargo, puedes crear un skill "meta" que incluya instrucciones para ejecutar múltiples comandos slash en secuencia.
Cuál es la diferencia entre Skills y CLAUDE.md?+
CLAUDE.md proporciona contexto pasivo que aplica a cada sesión. Los Skills son comandos activos que invocas para tareas específicas. CLAUDE.md dice "así es como funciona este proyecto." Los Skills dicen "así es como hacer esta cosa específica."
Puedo restringir lo que un Skill puede hacer?+
Sí. Usa la opción de frontmatter allowed-tools para limitar qué herramientas puede acceder el skill. Por ejemplo, un skill de documentación podría solo necesitar Read y Write, mientras que un skill de deploy necesita acceso a Bash.
ALL POSTSSTART FREE COURSE →