Skills de Claude Code: Guia Definitiva con 30+ Ejemplos Listos para Usar [2026]
Quieres que tu equipo domine Claude Code? Formacion in-company personalizada con skills, hooks y CLAUDE.md incluidos desde la primera sesion.
TL;DR
- Los Skills de Claude Code son comandos personalizados almacenados como archivos
.mden.claude/skills/e invocables con/nombre-del-skill - Se crean en menos de 2 minutos: un archivo markdown con frontmatter YAML (nombre + descripcion) y el prompt que quieras ejecutar
- Hooks son scripts automaticos que se ejecutan antes o despues de acciones concretas (antes de un commit, despues de editar un archivo, al finalizar una tarea larga)
- CLAUDE.md es el archivo de instrucciones del proyecto que Claude Code carga automaticamente al abrir cualquier sesion en ese repositorio
- Este articulo contiene 30+ skills completos listos para copiar y pegar en tu proyecto: desarrollo, enterprise, SEO, seguridad y mas
- Compatibles con Claude Code CLI, la extension de VS Code y el plugin de JetBrains sin cambios de configuracion
- Skills, hooks y CLAUDE.md se complementan: los skills son bajo demanda, los hooks son automaticos y CLAUDE.md es contexto permanente
- Equipos que usan skills personalizados reportan un 40-60% menos de tiempo en tareas repetitivas como testing, documentacion y code review
"El verdadero poder de Claude Code no esta en lo que hace por defecto, sino en como lo personalizas para tu proyecto." -- Anthropic Engineering Blog, 2025
Los skills son la funcionalidad menos utilizada y mas potente de Claude Code. Segun datos de uso de Q1 2026, menos del 15% de los usuarios de Claude Code han creado al menos un skill personalizado, pero quienes lo hacen reducen el tiempo medio por tarea en un 40-60%. Este articulo contiene todo lo que necesitas para dominar skills, hooks y templates: desde la teoria hasta 30+ ejemplos completos que puedes copiar directamente.
Que Son los Skills de Claude Code
Los skills de Claude Code son plantillas de prompts reutilizables almacenadas como archivos markdown que extienden las capacidades de la herramienta. Funcionan como comandos personalizados: los invocas con /nombre-del-skill desde cualquier sesion de Claude Code y ejecutan un flujo de trabajo predefinido.
A diferencia de escribir el mismo prompt cada vez, un skill:
- Estandariza la calidad: todo el equipo obtiene el mismo resultado para la misma tarea
- Ahorra tiempo: un skill de 50 lineas se invoca con 1 comando
- Es versionable: se commitea con el proyecto y evoluciona con el codigo
- Acepta parametros: puedes pasarle argumentos al invocarlo (
/skill argumento) - Es compartible: cualquier miembro del equipo con acceso al repo lo puede usar
Donde se almacenan los skills
Los skills viven en el directorio .claude/skills/ de tu proyecto o en tu directorio personal ~/.claude/skills/ para skills globales:
1mi-proyecto/2 .claude/3 skills/4 commit.md # Skill de proyecto5 review-pr.md # Skill de proyecto6 test.md # Skill de proyecto7 settings.json # Configuracion del proyecto8 settings.local.json # Configuracion local (gitignored)9 CLAUDE.md # Instrucciones del proyecto10 src/11 package.json
Los skills en .claude/skills/ tienen prioridad sobre los globales en ~/.claude/skills/. Esto permite que cada proyecto tenga sus propias versiones personalizadas.
Anatomia de un Skill: Estructura y Frontmatter
Cada skill es un archivo markdown con un frontmatter YAML que define su nombre y descripcion, seguido del prompt que Claude Code ejecutara. La estructura minima es:
1---2name: nombre-del-skill3description: Descripcion breve de lo que hace4---5 6Aqui va el prompt que Claude Code ejecutara cuando invoques /nombre-del-skill.7 8Puedes usar markdown, listas, instrucciones detalladas, ejemplos de codigo9y cualquier formato que necesites.
Campos del frontmatter
| Campo | Obligatorio | Descripcion | Ejemplo |
|---|---|---|---|
| name | Si | Nombre del skill (sin espacios, usa guiones) | review-pr |
| description | Si | Descripcion corta (aparece en la lista de skills) | "Revisa el PR actual" |
| args | No | Parametros que acepta el skill | ["archivo", "severidad"] |
| tools | No | Herramientas que el skill puede usar | ["Bash", "Read", "Edit"] |
| allowedCommands | No | Comandos de shell permitidos | ["git", "npm", "pnpm"] |
Ejemplo completo de frontmatter avanzado
1---2name: security-audit3description: Auditoría de seguridad completa del proyecto4args:5 - nombre: severity6 description: Nivel mínimo de severidad (low, medium, high, critical)7 required: false8 default: medium9tools:10 - Bash11 - Read12 - Grep13allowedCommands:14 - npm15 - git16 - grep17---
Como invocar un skill
Desde cualquier sesion de Claude Code:
1# Invocar sin argumentos2/commit3 4# Invocar con argumentos5/review-pr 1426 7# Invocar con flags8/test --coverage9 10# Ver todos los skills disponibles11/skills
10 Skills Esenciales para Desarrollo
Estos 10 skills cubren el 80% de las tareas repetitivas de un desarrollador. Cada uno esta listo para copiar, crear el archivo .md correspondiente y empezar a usar.
| Skill | Descripcion | Tiempo que ahorra | Caso de uso principal |
|---|---|---|---|
| /commit | Genera commits semanticos | 3-5 min/commit | Mensajes consistentes |
| /review-pr | Revisa codigo del PR | 15-30 min/PR | Code review |
| /test | Genera tests unitarios | 20-45 min/archivo | Testing |
| /refactor | Refactoriza codigo | 30-60 min/modulo | Deuda tecnica |
| /docs | Genera documentacion | 15-30 min/modulo | JSDoc, README |
| /debug | Diagnostica errores | 10-30 min/bug | Debugging |
| /migrate | Migraciones de BD | 30-60 min/migracion | Database changes |
| /security-audit | Auditoria de seguridad | 1-2 horas/auditoria | Vulnerabilidades |
| /performance | Optimizacion de rendimiento | 30-60 min/modulo | Bottlenecks |
| /deploy-check | Checklist pre-deploy | 15-20 min/deploy | Despliegues seguros |
1. /commit - Commits semanticos inteligentes
1---2name: commit3description: Genera un mensaje de commit semántico analizando los cambios staged4---5 6Analiza los cambios staged en git (git diff --staged) y genera un mensaje de commit7siguiendo la convención Conventional Commits:8 9Formato obligatorio:10- tipo(scope): descripcion breve (max 72 caracteres)11- Linea en blanco12- Cuerpo descriptivo explicando el "por qué" (no el "qué")13- Linea en blanco14- Footer con breaking changes si aplica15 16Tipos permitidos: feat, fix, docs, style, refactor, perf, test, build, ci, chore17 18Reglas:191. Analiza TODOS los archivos modificados, no solo el primero202. Si hay más de 3 archivos en diferentes módulos, sugiere dividir en commits213. El scope debe ser el módulo o directorio principal afectado224. Usa imperativo en español para el cuerpo: "Añade", "Corrige", "Elimina"235. Si detectas un breaking change, incluye "BREAKING CHANGE:" en el footer24 25Ejecuta: git status y git diff --staged26Luego propón el mensaje y pide confirmación antes de hacer el commit.
2. /review-pr - Code review automatizado
1---2name: review-pr3description: Revisa el código del PR actual o un PR específico por número4---5 6Realiza una revisión completa del código del Pull Request.7 8Si se proporciona un número de PR, revisa ese PR. Si no, revisa los cambios9de la rama actual respecto a main.10 11Estructura de la revisión:12 13## 1. Resumen14- Qué hace este PR en 2-3 frases15- Archivos modificados y líneas cambiadas16 17## 2. Análisis de calidad18Para cada archivo modificado, evalúa:19- Legibilidad del código (nombres, estructura)20- Complejidad ciclomática (flag si > 10)21- Duplicación de código22- Manejo de errores23- Type safety (para TypeScript)24 25## 3. Problemas encontrados26Clasifica cada problema como:27- CRITICAL: Bugs, vulnerabilidades de seguridad, pérdida de datos28- WARNING: Code smells, rendimiento subóptimo, malas prácticas29- SUGGESTION: Mejoras opcionales de estilo o legibilidad30 31## 4. Tests32- ¿Se han añadido tests para los cambios?33- ¿Los tests existentes siguen pasando?34- Sugerencias de tests que faltan35 36## 5. Veredicto37- APPROVE / REQUEST_CHANGES / COMMENT38- Resumen de los cambios necesarios antes de merge39 40Ejecuta: git log main..HEAD --oneline y git diff main...HEAD
3. /test - Generador de tests
1---2name: test3description: Genera tests unitarios para un archivo o módulo específico4---5 6Genera tests completos para el archivo o módulo indicado.7 8Pasos:91. Lee el archivo objetivo y analiza todas las funciones/métodos exportados102. Identifica el framework de testing del proyecto (Jest, Vitest, Mocha, pytest)113. Genera tests que cubran:12 - Caso feliz (happy path) para cada función13 - Casos límite (null, undefined, array vacío, string vacío)14 - Manejo de errores (throws, rejects, error responses)15 - Edge cases específicos del dominio16 17Reglas:18- Usa el mismo lenguaje que el archivo fuente19- Importa desde rutas relativas correctas del proyecto20- Usa mocks solo cuando sea estrictamente necesario21- Cada test debe tener un nombre descriptivo en español22- Agrupa tests con describe() por función23- Target: cobertura mínima del 80% de branches24- No generes tests triviales (getter/setter sin lógica)25 26Formato de salida: crea el archivo de test en la ubicación correcta según27la convención del proyecto (__tests__/, *.test.ts, *.spec.ts).
4. /refactor - Refactorizacion guiada
1---2name: refactor3description: Analiza y refactoriza código identificando code smells y mejoras4---5 6Analiza el archivo o módulo indicado y propón refactorizaciones concretas.7 8Proceso:91. Lee el código y detecta estos code smells:10 - Funciones de más de 30 líneas11 - Más de 3 niveles de anidamiento12 - Código duplicado (DRY violations)13 - God classes o god functions14 - Magic numbers/strings sin constantes15 - Parámetros booleanos (flag arguments)16 - Acoplamiento excesivo entre módulos17 182. Para cada refactorización propuesta, muestra:19 - Qué: descripción del cambio20 - Por qué: problema que resuelve21 - Antes: código actual22 - Después: código refactorizado23 - Riesgo: bajo/medio/alto24 253. Ordena las refactorizaciones por impacto (mayor primero)26 274. Aplica solo las refactorizaciones aprobadas por el usuario28 29Regla crítica: NUNCA cambies la interfaz pública (exports, API endpoints,30props de componentes) sin confirmación explícita.
5. /docs - Generador de documentacion
1---2name: docs3description: Genera documentación JSDoc/TSDoc para un archivo o módulo4---5 6Genera documentación completa para el archivo indicado.7 8Tipos de documentación según el archivo:9- .ts/.tsx/.js/.jsx: JSDoc/TSDoc con @param, @returns, @throws, @example10- .py: Docstrings Google-style con Args, Returns, Raises, Examples11- README: Genera README.md del módulo con instalación, uso y API12- API endpoints: Genera documentación OpenAPI/Swagger13 14Para cada función/clase, incluye:151. Descripción breve (1 línea)162. Descripción detallada si la lógica no es obvia173. @param con tipo y descripción para cada parámetro184. @returns con tipo y descripción195. @throws para cada excepción posible206. @example con al menos 1 ejemplo de uso real21 22Reglas:23- No documentes lo obvio (getters simples, constructores triviales)24- Usa español para las descripciones25- Los @example deben ser ejecutables (código válido)26- Mantén el estilo de documentación existente en el proyecto
6. /debug - Diagnostico de errores
1---2name: debug3description: Diagnostica un error a partir del mensaje, stack trace o comportamiento4---5 6Diagnostica el error proporcionado siguiendo este proceso sistemático:7 81. REPRODUCIR: Identifica los pasos para reproducir el error9 - Lee el stack trace si se proporciona10 - Localiza el archivo y línea exactos11 - Identifica el contexto de ejecución12 132. ANALIZAR: Investiga la causa raíz14 - Lee el código fuente en la línea del error15 - Revisa las dependencias y versiones16 - Busca issues conocidos en el proyecto17 - Verifica tipos y contratos de las funciones involucradas18 193. DIAGNOSTICAR: Presenta las causas probables20 - Causa más probable (80%+): explicación detallada21 - Causas alternativas: lista con probabilidad estimada22 - Factores contribuyentes: configuración, entorno, datos23 244. SOLUCIONAR: Propón la corrección25 - Fix mínimo: el cambio más pequeño que resuelve el problema26 - Fix completo: corrección + tests + prevención27 - Muestra el diff exacto para cada opción28 295. PREVENIR: Sugiere cómo evitar que vuelva a pasar30 - Test que habría detectado el bug31 - Mejora de tipos o validación32 - Documentación si aplica33 34Acepta como input: mensaje de error, stack trace, descripción del comportamiento,35o simplemente "el test X falla".
7. /migrate - Migraciones de base de datos
1---2name: migrate3description: Genera migraciones de base de datos seguras con rollback4---5 6Genera una migración de base de datos según la descripción proporcionada.7 8Detecta automáticamente el ORM/herramienta del proyecto:9- Prisma: genera archivo de migración + actualiza schema.prisma10- TypeORM: genera migración con up() y down()11- Knex: genera migración con exports.up y exports.down12- Django: genera migración de Django13- SQL puro: genera archivo .sql con UP y DOWN14 15Cada migración DEBE incluir:161. Migración UP (aplicar cambios)172. Migración DOWN (revertir cambios - OBLIGATORIO)183. Comentarios explicando cada operación194. Manejo de datos existentes si aplica20 21Validaciones de seguridad:22- NUNCA genera DROP TABLE sin confirmación23- NUNCA genera DELETE FROM sin WHERE24- Las columnas NOT NULL nuevas deben tener DEFAULT o migración de datos25- Los índices deben tener nombre explícito26- Las foreign keys deben tener ON DELETE definido27 28Formato de nombre: YYYYMMDD_HHMMSS_descripcion_breve
8. /security-audit - Auditoria de seguridad
1---2name: security-audit3description: Auditoría de seguridad completa del proyecto4---5 6Realiza una auditoría de seguridad exhaustiva del proyecto.7 8Checklist de revisión (por categoría):9 10## Dependencias11- Ejecuta: npm audit / pip audit / cargo audit12- Revisa dependencias con vulnerabilidades conocidas13- Identifica dependencias desactualizadas (más de 6 meses)14- Busca dependencias con pocos mantenedores (riesgo supply chain)15 16## Secretos y credenciales17- Busca: API keys, tokens, contraseñas hardcodeadas18- Revisa: .env files no gitignored, archivos de configuración19- Verifica: .gitignore incluye .env, credentials, *.pem, *.key20 21## Inputs y validación22- Busca: SQL injection, XSS, command injection23- Revisa: validación de inputs en endpoints/formularios24- Verifica: sanitización de datos antes de renderizar25 26## Autenticación y autorización27- Revisa: manejo de sesiones, tokens JWT28- Verifica: rutas protegidas, middleware de auth29- Busca: endpoints sin autenticación que deberían tenerla30 31## Configuración32- Revisa: headers de seguridad (CORS, CSP, HSTS)33- Verifica: configuración de producción vs desarrollo34- Busca: debug mode habilitado, verbose logging en prod35 36Genera reporte con severidad: CRITICAL / HIGH / MEDIUM / LOW / INFO37Ordena por severidad descendente.
9. /performance - Optimizacion de rendimiento
1---2name: performance3description: Analiza rendimiento y propone optimizaciones concretas4---5 6Analiza el rendimiento del archivo o módulo indicado.7 8Áreas de análisis:9 10## Complejidad algorítmica11- Identifica bucles O(n²) o peor que podrían optimizarse12- Busca operaciones de array ineficientes (filter+map vs reduce)13- Detecta re-cálculos innecesarios (candidatos a memoización)14 15## Rendimiento de red16- Llamadas API secuenciales que podrían ser paralelas (Promise.all)17- Falta de caché en respuestas que cambian poco18- Payloads excesivos (selecciona solo campos necesarios)19 20## Rendimiento de renderizado (frontend)21- Re-renders innecesarios en React (useMemo, useCallback, React.memo)22- Imágenes sin optimizar (next/image, lazy loading)23- Bundles excesivos (code splitting, dynamic imports)24- DOM excesivo (virtualización para listas largas)25 26## Base de datos27- Queries N+1 (eager loading vs lazy loading)28- Índices faltantes en columnas de WHERE/JOIN29- Queries sin LIMIT en tablas grandes30 31Para cada optimización:321. Problema detectado + impacto estimado332. Código actual (antes)343. Código optimizado (después)354. Mejora esperada (ms, %, reducción de memoria)
10. /deploy-check - Checklist pre-despliegue
1---2name: deploy-check3description: Checklist de verificación antes de desplegar a producción4---5 6Ejecuta una verificación completa antes del despliegue a producción.7 8## 1. Build9- Ejecuta: npm run build (o equivalente)10- Verifica: build exitoso sin warnings críticos11- Comprueba: tamaño del bundle (alerta si > 500KB gzipped)12 13## 2. Tests14- Ejecuta: npm test (o equivalente)15- Verifica: todos los tests pasan16- Comprueba: cobertura mínima según configuración del proyecto17 18## 3. Linting19- Ejecuta: npm run lint20- Verifica: 0 errores (los warnings son aceptables)21 22## 4. Variables de entorno23- Compara: .env.example vs variables necesarias en producción24- Verifica: no hay valores de desarrollo hardcodeados25- Comprueba: las URLs apuntan a producción (no localhost)26 27## 5. Base de datos28- Verifica: migraciones pendientes aplicadas29- Comprueba: seeds de producción actualizados si aplica30 31## 6. Seguridad32- Ejecuta: npm audit --production33- Verifica: no hay vulnerabilidades CRITICAL o HIGH34- Comprueba: headers de seguridad configurados35 36## 7. Git37- Verifica: rama correcta (main/master)38- Comprueba: no hay commits de merge pendientes39- Confirma: tag de versión creado40 41Genera reporte: PASS (listo para deploy) o FAIL (con lista de bloqueantes).
10 Skills para Equipos Enterprise
Los equipos enterprise necesitan skills que estandaricen procesos, faciliten el onboarding y garanticen compliance. Estos 10 skills estan disenados para organizaciones de 5 a 200 desarrolladores.
| Skill | Rol que mas lo usa | Impacto | Frecuencia |
|---|---|---|---|
| /onboard | Tech Lead | Reduce onboarding de 4 a 1 semana | Por nueva incorporacion |
| /code-standards | Senior Dev | Elimina 70% de comentarios en PR | Cada PR |
| /sprint-review | Scrum Master | Ahorra 2h de preparacion | Cada sprint |
| /incident | SRE/DevOps | Reduce MTTR un 30% | Por incidencia |
| /architecture | Architect | Documenta decisiones clave | Semanal |
| /api-design | Backend Lead | APIs consistentes desde el dia 1 | Por nuevo endpoint |
| /compliance-check | Security Lead | Auditoria automatizada | Pre-release |
| /changelog | Release Manager | Changelog perfecto en 1 min | Cada release |
| /estimate | Todo el equipo | Estimaciones 2x mas precisas | Cada sprint planning |
| /knowledge-base | Todo el equipo | Busca en docs internas | Diario |
1. /onboard - Onboarding de nuevos miembros
1---2name: onboard3description: Genera guía de onboarding personalizada para nuevos miembros del equipo4---5 6Genera una guía de onboarding completa para un nuevo miembro del equipo.7 8Analiza el proyecto y genera:9 10## 1. Visión general del proyecto11- Qué hace la aplicación (en 3 frases)12- Stack tecnológico completo con versiones13- Arquitectura a alto nivel (monolito, microservicios, serverless)14- Servicios externos de los que depende15 16## 2. Setup local17- Requisitos previos (Node, Python, Docker, etc.)18- Pasos exactos para levantar el entorno (copiar .env, instalar deps, etc.)19- Cómo verificar que todo funciona20- Problemas comunes de setup y cómo resolverlos21 22## 3. Estructura del código23- Directorios principales y qué contienen24- Patrones de arquitectura usados25- Convenciones de nombrado26- Dónde encontrar cada tipo de código (rutas, modelos, servicios, tests)27 28## 4. Flujo de trabajo29- Cómo crear una rama30- Convención de commits31- Proceso de PR y revisión32- Pipeline de CI/CD33 34## 5. Primeras tareas sugeridas35- 3 issues de dificultad baja etiquetados como "good first issue"36- 1 tarea de documentación para familiarizarse con el código
2. /code-standards - Verificar estandares de codigo
1---2name: code-standards3description: Verifica que el código cumple los estándares del equipo4---5 6Revisa el código cambiado contra los estándares del equipo definidos en CLAUDE.md.7 8Verifica:9 10## Nombrado11- Variables y funciones: camelCase (TS/JS) o snake_case (Python)12- Componentes React: PascalCase13- Constantes: UPPER_SNAKE_CASE14- Archivos: kebab-case para módulos, PascalCase para componentes15 16## Estructura17- Funciones de máximo 30 líneas18- Archivos de máximo 300 líneas19- Máximo 3 niveles de anidamiento20- Un export principal por archivo (excepto utils)21 22## Patrones obligatorios23- Error handling: try/catch en todo código async24- Logging: usar el logger del proyecto, nunca console.log en producción25- Types: no usar 'any' en TypeScript (excepto justificado con comentario)26- Imports: usar alias del proyecto (@/), nunca rutas relativas de más de 2 niveles27 28## Prohibiciones29- No usar var (solo const y let)30- No dejar TODO sin ticket asociado31- No commitear código comentado32- No usar !important en CSS sin justificación33 34Para cada violación muestra: archivo, línea, regla violada, corrección sugerida.
3. /sprint-review - Resumen de sprint
1---2name: sprint-review3description: Genera resumen automático del sprint basado en commits y PRs4---5 6Genera un resumen del sprint actual analizando la actividad de Git.7 8Analiza los commits de las últimas 2 semanas (o el rango de fechas indicado).9 10Estructura del resumen:11 12## Métricas del sprint13- Total de commits: X14- PRs merged: X15- Archivos modificados: X16- Líneas añadidas/eliminadas: +X / -X17- Contribuidores activos: lista18 19## Funcionalidades completadas20- Agrupa commits por feature (basado en branches y mensajes)21- Para cada feature: descripción, PRs asociados, autor principal22 23## Bugs corregidos24- Lista de fix commits con descripción del problema resuelto25 26## Deuda técnica27- Refactorizaciones realizadas28- Mejoras de testing (cobertura antes vs después)29 30## Puntos de atención31- Archivos con más cambios (posible hotspot de bugs)32- PRs que tardaron más de 3 días en mergearse33- Tests que se deshabilitaron durante el sprint34 35Formato de salida: Markdown listo para compartir en Slack o Confluence.
4. /incident - Respuesta a incidencias
1---2name: incident3description: Guía de respuesta rápida ante incidencias en producción4---5 6Inicia el protocolo de respuesta a incidencias.7 8## 1. Triaje (primeros 5 minutos)9- Qué servicio está afectado10- Cuántos usuarios impactados (estimación)11- Desde cuándo ocurre (primer reporte)12- Severidad: SEV1 (caída total), SEV2 (degradación), SEV3 (menor), SEV4 (cosmético)13 14## 2. Diagnóstico rápido15- Revisa los últimos 5 deploys (git log --oneline -5 en producción)16- Busca cambios recientes en archivos de configuración17- Verifica estado de servicios externos (bases de datos, APIs de terceros)18- Revisa logs de error recientes19 20## 3. Mitigación21- Si el problema es un deploy reciente: genera comando de rollback22- Si es un servicio externo: genera fallback o circuit breaker temporal23- Si es un problema de datos: identifica la query o migración problemática24 25## 4. Documentación post-mortem26Genera plantilla de post-mortem con:27- Timeline de eventos28- Causa raíz29- Impacto (usuarios, duración, datos)30- Acciones correctivas con responsable y fecha31- Lecciones aprendidas
5. /architecture - Registro de decisiones de arquitectura
1---2name: architecture3description: Crea un ADR (Architecture Decision Record) para decisiones técnicas4---5 6Genera un Architecture Decision Record (ADR) para documentar una decisión técnica.7 8Formato ADR:9 10# ADR-XXXX: [Título de la decisión]11 12## Estado13Propuesto | Aceptado | Deprecado | Sustituido por ADR-XXXX14 15## Contexto16- Cuál es el problema o necesidad que motiva esta decisión17- Qué restricciones técnicas y de negocio existen18- Qué intentos previos se han hecho19 20## Decisión21- Qué se ha decidido hacer (en 2-3 frases)22- Justificación técnica de la decisión23 24## Alternativas consideradas25| Alternativa | Pros | Contras | Por qué se descartó |26|-------------|------|---------|---------------------|27| Opción A | ... | ... | ... |28| Opción B | ... | ... | ... |29 30## Consecuencias31- Positivas: qué mejora con esta decisión32- Negativas: qué trade-offs asumimos33- Riesgos: qué puede salir mal y cómo mitigarlo34 35## Referencias36- Links a documentación, RFCs, benchmarks37 38Guarda el ADR en docs/adr/ con numeración secuencial (busca el último número).
6. /api-design - Revision de diseno de API
1---2name: api-design3description: Revisa y sugiere mejoras en el diseño de endpoints API REST/GraphQL4---5 6Revisa el diseño del endpoint o API indicada siguiendo las mejores prácticas.7 8Checklist de revisión:9 10## Nomenclatura11- URLs en plural y kebab-case (/api/v1/blog-posts)12- Verbos HTTP correctos (GET lectura, POST creación, PUT/PATCH actualización, DELETE borrado)13- No usar verbos en URLs (/api/users NO /api/getUsers)14 15## Request/Response16- Paginación para colecciones (cursor-based preferido sobre offset)17- Filtros y ordenación consistentes (?sort=created_at&order=desc)18- Response envelope consistente: { data, meta, errors }19- Códigos HTTP correctos (201 Created, 204 No Content, 422 Validation)20 21## Seguridad22- Autenticación requerida en endpoints sensibles23- Rate limiting configurado24- Validación de inputs con esquema (Zod, Joi, Pydantic)25- CORS configurado correctamente26 27## Documentación28- OpenAPI/Swagger spec actualizada29- Ejemplos de request/response para cada endpoint30- Errores documentados con códigos y mensajes31 32## Versionado33- Estrategia de versionado definida (URL, header, query param)34- Política de deprecación documentada35 36Genera: reporte de mejoras + ejemplo de spec OpenAPI corregida.
7. /compliance-check - Verificacion de compliance
1---2name: compliance-check3description: Verifica cumplimiento normativo (GDPR, accesibilidad, licencias)4---5 6Ejecuta verificaciones de cumplimiento normativo del proyecto.7 8## GDPR / Protección de datos9- Busca almacenamiento de datos personales sin consentimiento10- Verifica que existen mecanismos de borrado de datos (derecho al olvido)11- Comprueba cifrado de datos sensibles en reposo y tránsito12- Revisa que no se envían datos a terceros sin documentar13 14## Accesibilidad (WCAG 2.1 AA)15- Imágenes con alt text descriptivo16- Formularios con labels asociados17- Contraste de colores mínimo 4.5:118- Navegación por teclado funcional19- Roles ARIA correctos20 21## Licencias de dependencias22- Lista todas las dependencias con su licencia23- Flag licencias problemáticas: GPL en proyecto propietario24- Verifica compatibilidad de licencias25- Genera archivo THIRD_PARTY_LICENSES si no existe26 27## Logging y auditoría28- Verifica que no se loggean datos sensibles (passwords, tokens, PII)29- Comprueba que existe audit trail para operaciones críticas30- Revisa retención de logs según política de la empresa31 32Genera reporte de compliance con estado: PASS / FAIL / WARNING por categoría.
8. /changelog - Generador de changelog
1---2name: changelog3description: Genera changelog automático desde los commits entre dos tags/releases4---5 6Genera un CHANGELOG siguiendo el formato Keep a Changelog (keepachangelog.com).7 8Analiza los commits entre el tag indicado (o último tag) y HEAD.9 10Formato de salida:11 12## [X.Y.Z] - YYYY-MM-DD13 14### Añadido (Added)15- Nuevas funcionalidades (commits tipo feat)16 17### Cambiado (Changed)18- Cambios en funcionalidades existentes (commits tipo refactor, perf)19 20### Deprecado (Deprecated)21- Funcionalidades que se eliminarán en futuras versiones22 23### Eliminado (Removed)24- Funcionalidades eliminadas25 26### Corregido (Fixed)27- Corrección de bugs (commits tipo fix)28 29### Seguridad (Security)30- Correcciones de vulnerabilidades31 32Reglas:33- Agrupa commits por tipo, no por fecha34- Cada entrada es una frase legible por humanos (no el mensaje de commit raw)35- Incluye referencia al PR o issue si existe36- Si un commit tiene BREAKING CHANGE, destácalo al inicio
9. /estimate - Estimacion de tareas
1---2name: estimate3description: Estima esfuerzo y complejidad de una tarea analizando el código afectado4---5 6Analiza la tarea descrita y proporciona una estimación de esfuerzo.7 8Proceso:91. Identifica los archivos y módulos que habría que modificar102. Evalúa la complejidad de cada cambio113. Identifica dependencias y riesgos12 13Formato de estimación:14 15## Desglose de la tarea16| Subtarea | Archivos afectados | Complejidad | Horas estimadas |17|----------|-------------------|-------------|-----------------|18| ... | ... | Baja/Media/Alta | X-Y h |19 20## Estimación total21- Optimista: X horas22- Realista: Y horas23- Pesimista: Z horas24- Story points sugeridos: N (escala Fibonacci: 1,2,3,5,8,13)25 26## Riesgos que pueden aumentar la estimación27- Dependencias externas28- Código legacy sin tests29- Requisitos ambiguos30- Necesidad de migración de datos31 32## Recomendaciones33- Sugerir si conviene dividir la tarea34- Identificar tareas que se pueden paralelizar35- Pre-requisitos que deben completarse antes
10. /knowledge-base - Busqueda en documentacion interna
1---2name: knowledge-base3description: Busca en la documentación interna del proyecto para responder preguntas4---5 6Busca en la documentación interna del proyecto para responder la pregunta del usuario.7 8Fuentes de búsqueda (en orden de prioridad):91. CLAUDE.md del proyecto102. README.md y docs/113. Comentarios en código y JSDoc124. Archivos de configuración (package.json, tsconfig, etc.)135. ADRs (Architecture Decision Records) en docs/adr/146. CHANGELOG.md157. Commits recientes relacionados con la pregunta16 17Formato de respuesta:181. Respuesta directa a la pregunta192. Fuente exacta (archivo + línea) de donde se obtuvo la información203. Contexto adicional relevante214. Si no encuentra la respuesta: indica qué documentación falta y sugiere crearla22 23Reglas:24- No inventes información que no esté en los archivos del proyecto25- Si hay información contradictoria entre fuentes, prioriza el orden indicado26- Cita siempre la fuente exacta
10 Skills Avanzados y Creativos
Estos skills cubren necesidades especializadas que van mas alla del desarrollo puro: SEO, accesibilidad, internacionalizacion, infraestructura y mas. Son los skills que separan a un equipo competente de uno excepcional.
| Skill | Especialidad | Complejidad | ROI estimado |
|---|---|---|---|
| /seo-audit | SEO tecnico | Media | Alto |
| /i18n | Internacionalizacion | Alta | Medio-Alto |
| /accessibility | Accesibilidad | Media | Alto |
| /data-pipeline | Data Engineering | Alta | Alto |
| /prompt-engineer | IA/LLM | Media | Muy Alto |
| /cost-estimate | Cloud/FinOps | Media | Alto |
| /benchmark | Performance | Alta | Medio |
| /schema-design | Base de datos | Media | Alto |
| /monitoring | Observabilidad | Alta | Alto |
| /disaster-recovery | SRE | Alta | Critico |
1. /seo-audit - Auditoria SEO tecnica
1---2name: seo-audit3description: Auditoría SEO técnica completa para proyectos web4---5 6Realiza una auditoría SEO técnica del proyecto web.7 8## Meta tags9- Verifica: title (50-60 chars), description (150-160 chars) en cada página10- Busca: páginas sin meta description o con duplicadas11- Comprueba: canonical URLs correctas (www vs no-www)12- Revisa: Open Graph y Twitter Cards en todas las páginas13 14## Estructura15- Verifica: un solo H1 por página16- Comprueba: jerarquía correcta de headings (H1 > H2 > H3, sin saltos)17- Busca: imágenes sin alt text18- Revisa: enlaces internos rotos19 20## Rendimiento SEO21- Verifica: sitemap.xml existe y es válido22- Comprueba: robots.txt configurado correctamente23- Revisa: URLs amigables (kebab-case, sin parámetros innecesarios)24- Busca: redirects 301 configurados para URLs antiguas25 26## Datos estructurados27- Verifica: JSON-LD en páginas clave (Article, Organization, FAQ, BreadcrumbList)28- Comprueba: schema válido contra schema.org29- Revisa: breadcrumbs implementados30 31## Core Web Vitals32- Analiza: tamaño de imágenes (sugiere WebP/AVIF)33- Busca: JavaScript bloqueante en el render34- Revisa: lazy loading en imágenes below-the-fold35 36Genera reporte con prioridades: CRITICAL > HIGH > MEDIUM > LOW.
2. /i18n - Internacionalizacion
1---2name: i18n3description: Prepara el código para internacionalización o extrae textos para traducir4---5 6Analiza el proyecto y genera todo lo necesario para internacionalización.7 8Modo 1: Preparar proyecto para i18n9- Detecta framework de i18n existente (next-intl, react-i18next, vue-i18n)10- Si no existe, recomienda el más adecuado para el stack11- Genera configuración base12 13Modo 2: Extraer textos14- Escanea todos los archivos del proyecto15- Extrae textos hardcodeados en componentes, páginas y templates16- Genera archivo de traducciones base (es.json, en.json)17- Reemplaza textos por claves de traducción: t('key')18 19Formato del archivo de traducciones:20{21 "common": {22 "save": "Guardar",23 "cancel": "Cancelar"24 },25 "pages": {26 "home": {27 "title": "Página de inicio",28 "subtitle": "Bienvenido"29 }30 }31}32 33Reglas:34- Las claves deben ser descriptivas (pages.home.title, no key_001)35- Agrupa por contexto (common, pages, components, errors)36- Incluye plurales cuando sea necesario37- No extraigas textos de logs o mensajes de debug
3. /accessibility - Verificacion de accesibilidad
1---2name: accessibility3description: Verifica accesibilidad WCAG 2.1 AA en componentes y páginas4---5 6Audita la accesibilidad del componente o página indicada.7 8Checklist WCAG 2.1 AA:9 10## Perceptible11- Imágenes: alt text descriptivo (no "imagen", no vacío excepto decorativas)12- Videos: subtítulos y transcripciones13- Contraste: mínimo 4.5:1 texto normal, 3:1 texto grande14- Responsive: contenido legible a 200% zoom15 16## Operable17- Teclado: todos los elementos interactivos accesibles con Tab18- Focus: indicador de focus visible (no outline: none sin alternativa)19- Skip links: link "Saltar al contenido" en la navegación20- Timeouts: usuario puede extender o pausar21 22## Comprensible23- Labels: todos los inputs tienen label asociado (htmlFor/id)24- Errores: mensajes de error descriptivos junto al campo25- Idioma: lang attribute en html tag26- Consistencia: navegación consistente entre páginas27 28## Robusto29- Roles ARIA: usados correctamente (no redundantes con HTML semántico)30- Landmarks: main, nav, header, footer, aside31- Live regions: aria-live para contenido dinámico32- Validación: HTML válido33 34Para cada problema: severidad, línea, regla WCAG violada, corrección con código.
4. /data-pipeline - Diseno de pipeline de datos
1---2name: data-pipeline3description: Diseña un pipeline de datos ETL/ELT con código y documentación4---5 6Diseña un pipeline de datos basado en la descripción proporcionada.7 8Genera:9 10## 1. Arquitectura del pipeline11- Fuentes de datos (origen)12- Transformaciones necesarias13- Destino (data warehouse, lake, API)14- Frecuencia de ejecución15 16## 2. Código del pipeline17- Extract: conectores a las fuentes de datos18- Transform: lógica de limpieza, validación y transformación19- Load: escritura al destino con manejo de errores20 21## 3. Manejo de errores22- Reintentos con backoff exponencial23- Dead letter queue para registros fallidos24- Alertas en caso de fallo25 26## 4. Monitorización27- Métricas: registros procesados, tiempo de ejecución, tasa de error28- Logs estructurados29- Dashboard sugerido30 31Herramientas soportadas: Apache Airflow, Prefect, Dagster, dbt, Python scripts.
5. /prompt-engineer - Optimizar prompts
1---2name: prompt-engineer3description: Optimiza prompts para LLMs siguiendo las mejores prácticas4---5 6Analiza y optimiza el prompt proporcionado para obtener mejores resultados.7 8Técnicas de optimización aplicadas:9 101. Claridad: eliminar ambigüedades y ser específico112. Estructura: usar formato claro (listas, secciones, ejemplos)123. Contexto: añadir contexto relevante sin ruido134. Restricciones: definir explícitamente qué NO hacer145. Few-shot: añadir 2-3 ejemplos de input/output esperado156. Chain of thought: pedir razonamiento paso a paso si aplica167. Output format: especificar formato exacto de salida17 18Para cada optimización muestra:19- Prompt original (lo que tenías)20- Prompt optimizado (lo que deberías usar)21- Por qué es mejor (explicación de la mejora)22- Resultado esperado (qué diferencia verás)
6. /cost-estimate - Estimacion de costes cloud
1---2name: cost-estimate3description: Estima costes mensuales de infraestructura cloud4---5 6Analiza la arquitectura del proyecto y estima costes mensuales en la nube.7 8Proveedores soportados: AWS, GCP, Azure, Vercel, Railway, Fly.io9 10Análisis por servicio:11- Compute: instancias, funciones serverless, contenedores12- Storage: bases de datos, object storage, CDN13- Network: transferencia de datos, load balancers, DNS14- Otros: monitorización, logging, CI/CD, backups15 16Genera tabla de costes:17| Servicio | Tier/Config | Coste mensual | Notas |18|----------|-------------|---------------|-------|19| ... | ... | XX EUR | ... |20| **Total** | | **XXX EUR** | |21 22Incluye:23- Estimación para 3 escenarios de tráfico (1K, 10K, 100K MAU)24- Recomendaciones para reducir costes25- Free tier vs primer euro: cuándo empiezas a pagar
7. /benchmark - Benchmarking de rendimiento
1---2name: benchmark3description: Crea y ejecuta benchmarks de rendimiento para funciones críticas4---5 6Genera benchmarks de rendimiento para el código indicado.7 8Para cada función/endpoint a benchmarkear:9 101. Setup: preparar datos de prueba realistas112. Warmup: 100 iteraciones de calentamiento (JIT, caché)123. Ejecución: 1000+ iteraciones medidas134. Medición: tiempo medio, P50, P95, P99, desviación estándar145. Memoria: heap usado antes y después156. Comparación: si hay implementación alternativa, ejecutar ambas16 17Formato de resultados:18| Función | Ops/sec | Media | P95 | P99 | Memoria |19|---------|---------|-------|-----|-----|---------|20| v1 | 10,000 | 0.1ms | 0.3ms | 0.8ms | 2MB |21| v2 | 25,000 | 0.04ms | 0.1ms | 0.3ms | 1.5MB |22 23Genera código de benchmark ejecutable con: Benchmark.js (JS), pytest-benchmark24(Python), criterion (Rust), o el framework nativo del lenguaje.
8. /schema-design - Diseno de esquema de base de datos
1---2name: schema-design3description: Diseña o revisa esquema de base de datos con mejores prácticas4---5 6Diseña o revisa el esquema de base de datos según los requisitos.7 8Genera:91. Diagrama entidad-relación (formato Mermaid para visualizar)102. SQL de creación de tablas con tipos correctos113. Índices recomendados basados en queries esperadas124. Constraints: foreign keys, unique, check135. Migraciones si es un cambio sobre esquema existente14 15Mejores prácticas aplicadas:16- Normalización hasta 3NF (desnormalizar solo con justificación)17- UUIDs vs auto-increment según el caso18- Timestamps: created_at y updated_at en todas las tablas19- Soft delete vs hard delete (deleted_at nullable)20- Tipos correctos: no usar varchar(255) para todo21- Enums como tipos nativos de la BD o tablas de lookup
9. /monitoring - Configuracion de monitorizacion
1---2name: monitoring3description: Configura monitorización y alertas para la aplicación4---5 6Genera configuración de monitorización completa.7 8## Métricas de aplicación (RED method)9- Rate: peticiones por segundo10- Errors: tasa de errores (4xx, 5xx)11- Duration: latencia P50, P95, P9912 13## Health checks14- Endpoint /health con verificación de dependencias15- Liveness probe (la app responde)16- Readiness probe (la app puede servir tráfico)17 18## Alertas recomendadas19| Alerta | Condición | Severidad | Acción |20|--------|-----------|-----------|--------|21| Error rate alto | >5% en 5 min | Critical | Notificar oncall |22| Latencia alta | P99 >2s en 10 min | Warning | Investigar |23| Memoria alta | >85% durante 15 min | Warning | Scale up |24| Disco lleno | >90% | Critical | Limpiar logs |25 26Herramientas soportadas: Prometheus + Grafana, Datadog, New Relic,27Sentry (errores), Uptime Robot (disponibilidad).
10. /disaster-recovery - Plan de recuperacion ante desastres
1---2name: disaster-recovery3description: Genera plan de recuperación ante desastres (DR) del proyecto4---5 6Genera un plan de Disaster Recovery (DR) para el proyecto.7 8## Inventario de servicios críticos9- Lista servicios, bases de datos, APIs externas10- RPO (Recovery Point Objective): cuántos datos puedes perder11- RTO (Recovery Time Objective): cuánto tiempo puedes estar caído12 13## Estrategias de backup14| Servicio | Frecuencia backup | Retención | Ubicación | Test de restauración |15|----------|-------------------|-----------|-----------|---------------------|16| BD principal | Cada 6h | 30 días | Región secundaria | Mensual |17| Object storage | Continuo | 90 días | Multi-región | Trimestral |18 19## Runbooks de recuperación20Para cada escenario de fallo:211. Base de datos corrompida: pasos para restaurar desde backup222. Región cloud caída: failover a región secundaria233. Credenciales comprometidas: rotación de secretos244. Ataque DDoS: activar protección y mitigación25 26## Pruebas de DR27- Calendario de simulacros (mínimo trimestral)28- Checklist de verificación post-recuperación29- Métricas: RTO real vs objetivo, RPO real vs objetivo
Hooks: Automatizacion en Cada Accion
Los hooks de Claude Code son scripts que se ejecutan automaticamente antes o despues de que Claude Code use una herramienta, sin que el usuario tenga que hacer nada. A diferencia de los skills que se invocan manualmente, los hooks se disparan solos cuando se cumple la condicion configurada.
Tipos de hooks
| Tipo | Cuando se ejecuta | Uso principal | Ejemplo |
|---|---|---|---|
| PreToolUse | Antes de que Claude use una herramienta | Validacion y bloqueo | Impedir edicion de archivos protegidos |
| PostToolUse | Despues de que Claude use una herramienta | Formateo y verificacion | Ejecutar linter tras editar un archivo |
| Notification | Cuando Claude quiere notificar al usuario | Alertas custom | Enviar mensaje a Slack si la tarea dura mas de 5 min |
| Stop | Cuando Claude termina su turno | Limpieza y reporte | Generar resumen de cambios realizados |
Configuracion de hooks en settings.json
Los hooks se configuran en .claude/settings.json o .claude/settings.local.json:
1{2 "hooks": {3 "PreToolUse": [4 {5 "matcher": "Edit",6 "command": "node .claude/hooks/pre-edit-lint.js $FILE"7 }8 ],9 "PostToolUse": [10 {11 "matcher": "Edit",12 "command": "npx prettier --write $FILE"13 },14 {15 "matcher": "Bash",16 "command": "node .claude/hooks/post-bash-audit.js"17 }18 ],19 "Notification": [20 {21 "matcher": ".*",22 "command": "node .claude/hooks/slack-notify.js"23 }24 ]25 }26}
3 hooks esenciales con codigo completo
Hook 1: Lint automatico antes de cada commit
Archivo .claude/hooks/pre-commit-lint.js:
1// Hook PreToolUse para Bash cuando el comando contiene "git commit"2const { execSync } = require('child_process');3 4const command = process.env.CLAUDE_TOOL_INPUT;5 6if (command && command.includes('git commit')) {7 try {8 console.log('[Hook] Ejecutando lint antes del commit...');9 execSync('npx eslint . --ext .ts,.tsx,.js,.jsx --quiet', {10 stdio: 'inherit'11 });12 console.log('[Hook] Lint OK - procediendo con commit');13 process.exit(0); // Permitir el commit14 } catch (error) {15 console.error('[Hook] Lint FALLIDO - commit bloqueado');16 console.error('Corrige los errores de lint antes de commitear.');17 process.exit(1); // Bloquear el commit18 }19}20 21process.exit(0); // Si no es un commit, no interferir
Hook 2: Formatear automaticamente tras editar
Configuracion en settings.json:
1{2 "hooks": {3 "PostToolUse": [4 {5 "matcher": "Edit",6 "command": "npx prettier --write $FILE 2>/dev/null || true"7 }8 ]9 }10}
Hook 3: Notificacion a Slack para tareas largas
Archivo .claude/hooks/slack-notify.js:
1const https = require('https');2 3const SLACK_WEBHOOK = process.env.SLACK_WEBHOOK_URL;4const message = process.env.CLAUDE_NOTIFICATION_MESSAGE || 'Tarea completada';5 6if (SLACK_WEBHOOK) {7 const payload = JSON.stringify({8 text: `[Claude Code] ${message}`,9 channel: '#dev-notifications'10 });11 12 const url = new URL(SLACK_WEBHOOK);13 const options = {14 hostname: url.hostname,15 path: url.pathname,16 method: 'POST',17 headers: { 'Content-Type': 'application/json' }18 };19 20 const req = https.request(options);21 req.write(payload);22 req.end();23}
CLAUDE.md: El Archivo de Instrucciones del Proyecto
CLAUDE.md es un archivo markdown en la raiz del proyecto que Claude Code carga automaticamente al inicio de cada sesion. Funciona como la "memoria del proyecto": define reglas, convenciones, stack tecnologico y cualquier instruccion que Claude Code debe seguir siempre.
Jerarquia de carga de CLAUDE.md
Claude Code busca y combina CLAUDE.md en 3 niveles (en orden de prioridad):
| Nivel | Ubicacion | Scope | Ejemplo de contenido |
|---|---|---|---|
| Proyecto | ./CLAUDE.md | Todo el equipo | Stack, convenciones, reglas de negocio |
| Usuario | ~/.claude/CLAUDE.md | Personal (todos tus proyectos) | Preferencias de estilo, idioma |
| Directorio | ./src/CLAUDE.md | Subdirectorio especifico | Reglas del modulo API, reglas del frontend |
Template de CLAUDE.md efectivo
1# CLAUDE.md2 3## Stack del proyecto4- Framework: Next.js 15 con App Router5- Lenguaje: TypeScript (strict mode)6- Estilos: Tailwind CSS7- Tests: Vitest + Testing Library8- Base de datos: PostgreSQL con Prisma ORM9- CI/CD: GitHub Actions10 11## Comandos de desarrollo12- `pnpm dev` - Servidor de desarrollo (puerto 3000)13- `pnpm build` - Build de producción14- `pnpm test` - Ejecutar tests15- `pnpm lint` - Linting16- `pnpm db:migrate` - Aplicar migraciones17 18## Convenciones de código19- Commits: Conventional Commits en español20- Funciones: máximo 30 líneas21- Archivos: máximo 300 líneas22- Imports: usar alias @/ (nunca rutas relativas largas)23- Types: prohibido usar 'any' sin justificación24 25## Reglas de negocio26- Los precios siempre incluyen IVA en España (21%)27- Los emails se envían solo en horario laboral (9-18h CET)28- Los datos de usuario se eliminan a los 30 días de baja29 30## Archivos que NUNCA deben modificarse31- .env.production32- prisma/migrations/ (solo crear nuevas, nunca editar existentes)33- public/robots.txt34 35## Patrones del proyecto36- Server Components por defecto, Client Components solo para interactividad37- Data fetching en Server Components, nunca en Client Components38- Error boundaries en cada layout39- Loading states en cada página
Buenas practicas para CLAUDE.md
- Se especifico, no generico: "Usa pnpm, no npm" es mejor que "Usa el gestor de paquetes del proyecto"
- Incluye comandos exactos: Claude Code los ejecutara directamente
- Documenta lo que NO hacer: Las restricciones son tan importantes como las instrucciones
- Actualiza con cada cambio de stack: Un CLAUDE.md desactualizado es peor que no tenerlo
- Versionalo en git: Todo el equipo debe usar las mismas instrucciones
Templates: Configuraciones Reutilizables
Los templates son configuraciones completas de Claude Code (.claude/ + CLAUDE.md + skills + hooks) empaquetadas para reutilizar en proyectos nuevos. En lugar de configurar cada proyecto desde cero, creas un template una vez y lo replicas.
Estructura de un template
1templates/2 nextjs-fullstack/3 .claude/4 skills/5 commit.md6 test.md7 review-pr.md8 deploy-check.md9 settings.json10 hooks/11 pre-commit-lint.js12 post-edit-format.js13 CLAUDE.md14 README.md # Instrucciones de uso del template
Como aplicar un template a un proyecto nuevo
1# Opcion 1: Copiar directamente2cp -r templates/nextjs-fullstack/.claude mi-nuevo-proyecto/.claude3cp templates/nextjs-fullstack/CLAUDE.md mi-nuevo-proyecto/CLAUDE.md4 5# Opcion 2: Usar un script de setup6#!/bin/bash7# setup-claude-code.sh8TEMPLATE=${1:-"nextjs-fullstack"}9DEST=${2:-"."}10 11echo "Aplicando template '$TEMPLATE' en '$DEST'..."12cp -r "templates/$TEMPLATE/.claude" "$DEST/.claude"13cp "templates/$TEMPLATE/CLAUDE.md" "$DEST/CLAUDE.md"14echo "Template aplicado. Skills disponibles:"15ls "$DEST/.claude/skills/"
Templates recomendados por tipo de proyecto
| Tipo de proyecto | Skills incluidos | Hooks | Nivel de configuracion |
|---|---|---|---|
| Next.js fullstack | commit, test, review-pr, deploy-check, seo-audit | Lint pre-commit, format post-edit | Completo |
| API REST (Node/Python) | commit, test, api-design, security-audit, migrate | Lint, audit deps | Completo |
| Libreria/SDK | commit, test, docs, changelog, benchmark | Lint, test pre-commit | Medio |
| Data engineering | commit, data-pipeline, schema-design, monitoring | Validacion de schemas | Medio |
| Proyecto personal | commit, test, docs | Format post-edit | Basico |
Como Crear un Skill Personalizado: Paso a Paso
Crear un skill personalizado lleva menos de 5 minutos y empieza a ahorrarte tiempo desde la primera invocacion. Estos son los 5 pasos exactos.
Paso 1: Identificar la tarea repetitiva
Piensa en una tarea que hagas al menos 3 veces por semana y que siempre siga un patron similar. Ejemplos: generar migrations, crear componentes con cierta estructura, revisar PRs con los mismos criterios.
Paso 2: Crear el directorio de skills
1# Desde la raíz de tu proyecto2mkdir -p .claude/skills
Paso 3: Crear el archivo del skill
1# Ejemplo: skill para crear componentes React2touch .claude/skills/component.md
Paso 4: Escribir el frontmatter y el prompt
1---2name: component3description: Crea un componente React con TypeScript, tests y estilos4---5 6Crea un nuevo componente React siguiendo la estructura del proyecto.7 8Parámetro: nombre del componente (PascalCase)9 10Genera estos archivos:111. components/{nombre}/{nombre}.tsx - Componente con TypeScript122. components/{nombre}/{nombre}.test.tsx - Tests con Vitest133. components/{nombre}/index.ts - Re-export14 15El componente debe:16- Usar TypeScript con interfaz de Props explícita17- Ser Server Component por defecto (sin 'use client')18- Usar Tailwind CSS para estilos19- Incluir prop className para personalización20- Tener al menos 3 tests: render, props, accesibilidad21 22Ejemplo de estructura:23interface {Nombre}Props {24 className?: string;25 children?: React.ReactNode;26}27 28export function {Nombre}({ className, children }: {Nombre}Props) {29 return (30 <div className={cn("", className)}>31 {children}32 </div>33 );34}
Paso 5: Invocar y probar
1# Abre Claude Code en tu proyecto2claude3 4# Invoca el skill5> /component UserCard6 7# Claude Code generará los 3 archivos siguiendo las instrucciones del skill
Para compartir con tu equipo, simplemente commitea la carpeta .claude/skills/ al repositorio.
Skills vs Hooks vs CLAUDE.md: Cuando Usar Cada Uno
La regla general es: CLAUDE.md para contexto permanente, skills para acciones bajo demanda, y hooks para automatizacion sin intervencion. Esta tabla resume cuando usar cada mecanismo.
| Criterio | CLAUDE.md | Skills | Hooks |
|---|---|---|---|
| Cuando se ejecuta | Automaticamente al iniciar sesion | Cuando el usuario invoca /skill | Automaticamente en cada accion configurada |
| Proposito | Contexto y reglas del proyecto | Tareas especificas bajo demanda | Automatizacion de verificaciones |
| Frecuencia de uso | Cada sesion (100%) | Cuando se necesita (variable) | Cada vez que ocurre la accion |
| Quien lo crea | Tech Lead / equipo | Cualquier desarrollador | DevOps / Senior Developer |
| Complejidad | Baja (markdown) | Baja-Media (markdown) | Media-Alta (scripts) |
| Ejemplo tipico | "Usa TypeScript strict" | "/test genera tests" | "Formatear tras cada edicion" |
| Se puede desactivar | Renombrar archivo | No invocar | Eliminar de settings.json |
| Riesgo si falla | Claude ignora regla | La tarea no se ejecuta | Bloquea la accion de Claude |
Escenarios practicos
Escenario 1: "Quiero que los commits siempre sigan Conventional Commits"
- Usa CLAUDE.md para definir la regla: "Todos los commits deben seguir Conventional Commits"
- Crea un skill
/commitpara generar el mensaje automaticamente - Configura un hook PreToolUse para validar el formato antes de cada
git commit - Los 3 se complementan: regla + herramienta + validacion automatica
Escenario 2: "Quiero que el codigo se formatee siempre"
- Usa un hook PostToolUse en Edit: ejecutar Prettier automaticamente tras cada edicion
- No necesitas skill ni CLAUDE.md para esto: la automatizacion pura es suficiente
Escenario 3: "Quiero documentar decisiones de arquitectura"
- Crea un skill
/architecturepara generar ADRs bajo demanda - Anade en CLAUDE.md: "Las decisiones de arquitectura se documentan en docs/adr/"
- No necesitas hook: la documentacion no se genera automaticamente
Preguntas Frecuentes (FAQ)
Que son los skills de Claude Code?
Los skills de Claude Code son comandos personalizados almacenados como archivos markdown (.md) en el directorio .claude/skills/ del proyecto. Cada skill contiene un prompt predefinido que se ejecuta al invocarlo con /nombre-del-skill. Son reutilizables, versionables con Git y compartibles con el equipo. Funcionan en Claude Code CLI, la extension de VS Code y el plugin de JetBrains.
Como creo un skill personalizado en Claude Code?
Se crea en 3 pasos: crear el directorio .claude/skills/, escribir un archivo .md con frontmatter YAML (name + description) y el prompt, y luego invocarlo con /nombre. No hace falta instalar nada adicional ni reiniciar Claude Code. El skill esta disponible inmediatamente despues de crear el archivo. Consulta la seccion "Como Crear un Skill Personalizado" de esta guia para el tutorial completo con codigo.
Los skills de Claude Code son gratuitos?
Si, los skills son gratuitos. No cuestan dinero adicional mas alla de tu suscripcion a Claude Code. El plan Pro (20 USD/mes), Team (25 USD/usuario/mes) y Enterprise (precio custom) incluyen soporte completo para skills, hooks y CLAUDE.md. Los skills no consumen tokens adicionales por si mismos, aunque el prompt del skill se suma al contexto de la sesion.
Puedo compartir skills con mi equipo?
Si, los skills se comparten commiteando la carpeta .claude/skills/ al repositorio Git del proyecto. Cualquier miembro del equipo con acceso al repo tendra automaticamente los mismos skills disponibles. Para skills personales que no quieras compartir, usalos en ~/.claude/skills/ (directorio personal). Tambien puedes crear un repositorio de templates con skills preconfigurados para proyectos nuevos.
Que diferencia hay entre skills y hooks en Claude Code?
Los skills se invocan manualmente con /nombre y los hooks se ejecutan automaticamente sin intervencion del usuario. Los skills son plantillas de prompts para tareas bajo demanda (como /test para generar tests). Los hooks son scripts que se ejecutan antes o despues de acciones especificas de Claude Code (como formatear automaticamente despues de editar un archivo). Los skills son archivos markdown; los hooks son scripts ejecutables (JavaScript, Python, Bash) configurados en settings.json.
Donde se guardan los skills de Claude Code?
Los skills se guardan en .claude/skills/ dentro del proyecto (skills de equipo) o en ~/.claude/skills/ en tu directorio home (skills personales). Los skills de proyecto tienen prioridad sobre los personales si tienen el mismo nombre. Tambien existen skills de directorio: puedes crear un .claude/skills/ en cualquier subdirectorio para skills especificos de ese modulo. La jerarquia completa es: proyecto > directorio > personal.
Los skills funcionan en VS Code y JetBrains?
Si, los skills funcionan en las 3 plataformas compatibles con Claude Code: la CLI de terminal, la extension de VS Code (Claude Code for VS Code) y el plugin de JetBrains. No hay diferencia de funcionalidad entre plataformas. Los skills, hooks y CLAUDE.md se cargan desde los mismos archivos independientemente de donde ejecutes Claude Code. Lo unico que cambia es la interfaz visual, no la funcionalidad.
Claude Code tiene skills predefinidos?
Si, Claude Code incluye varios skills predefinidos como /commit, /review-pr, /init y /compact. Estos skills vienen integrados y estan disponibles sin configuracion. Sin embargo, los skills predefinidos son genericos. Para obtener resultados optimos, se recomienda crear skills personalizados que conozcan las convenciones, el stack y las reglas especificas de tu proyecto. Los skills personalizados siempre tienen prioridad sobre los predefinidos si tienen el mismo nombre.
Posts Relacionados
- Guia Completa Claude Code: Tutorial para Empezar desde Cero -- Instalacion, configuracion basica y primeros pasos
- Claude Code para Empresas: Implementacion, Formacion y ROI -- Planes enterprise, MCPs y metricas de productividad
- Como Implementar Claude Code en tu Equipo de Desarrollo -- Tutorial de 2 semanas con checklist
- Claude Code vs Cursor vs Copilot para Empresas -- Comparativa detallada con 15 criterios
- MCP: Model Context Protocol Explicado -- Que es MCP y como conectar Claude Code a tus herramientas
- Formacion in-company en Claude Code y programacion agentica -- Programa de formacion con skills y hooks incluidos
Fuentes
- Documentacion oficial de Claude Code -- Anthropic
- Claude Code: Skills and Customization -- Anthropic Docs
- Model Context Protocol Specification -- Protocolo abierto
- Claude Code en GitHub -- Repositorio oficial
- Stack Overflow Developer Survey 2025 -- Datos de adopcion de herramientas IA
En Resumen
- Los skills de Claude Code son archivos markdown en
.claude/skills/que funcionan como comandos personalizados invocables con/nombre-del-skilldesde cualquier sesion de Claude Code - Crear un skill lleva menos de 5 minutos: un archivo
.mdcon frontmatter YAML (name + description) y el prompt que quieras ejecutar, sin instalaciones ni reinicio necesario - Este articulo contiene 30 skills completos listos para copiar: 10 para desarrollo diario, 10 para equipos enterprise y 10 avanzados (SEO, accesibilidad, infraestructura, data pipelines)
- Los hooks automatizan acciones sin intervencion del usuario: se configuran en
settings.jsony se ejecutan antes (PreToolUse) o despues (PostToolUse) de cada accion de Claude Code - CLAUDE.md es el archivo de instrucciones permanentes del proyecto: Claude Code lo carga automaticamente al iniciar sesion y lo combina en 3 niveles de jerarquia (proyecto, directorio, personal)
- Skills, hooks y CLAUDE.md se complementan: CLAUDE.md define reglas permanentes, skills ejecutan tareas bajo demanda y hooks automatizan validaciones -- los equipos que usan los 3 reducen tiempo en tareas repetitivas un 40-60%
- Compatibles con CLI, VS Code y JetBrains: los skills funcionan identicamente en las 3 plataformas y se comparten con el equipo commiteando
.claude/skills/al repositorio Git del proyecto
