Principios fundamentales
La concisión es clave
La ventana de contexto es un bien público. Tu Skill comparte la ventana de contexto con todo lo demás que Claude necesita saber, incluyendo:- El prompt del sistema
- Historial de conversación
- Metadatos de otros Skills
- Tu solicitud real
- “¿Claude realmente necesita esta explicación?”
- “¿Puedo asumir que Claude sabe esto?”
- “¿Este párrafo justifica su costo en tokens?”
Establece grados de libertad apropiados
Haz coincidir el nivel de especificidad con la fragilidad y variabilidad de la tarea. Alta libertad (instrucciones basadas en texto): Úsalo cuando:- Múltiples enfoques son válidos
- Las decisiones dependen del contexto
- Las heurísticas guían el enfoque
- Existe un patrón preferido
- Alguna variación es aceptable
- La configuración afecta el comportamiento
- Las operaciones son frágiles y propensas a errores
- La consistencia es crítica
- Se debe seguir una secuencia específica
- Puente estrecho con acantilados a ambos lados: Solo hay una forma segura de avanzar. Proporciona barandillas específicas e instrucciones exactas (baja libertad). Ejemplo: migraciones de base de datos que deben ejecutarse en secuencia exacta.
- Campo abierto sin peligros: Muchos caminos llevan al éxito. Da dirección general y confía en que Claude encontrará la mejor ruta (alta libertad). Ejemplo: revisiones de código donde el contexto determina el mejor enfoque.
Prueba con todos los modelos que planeas usar
Los Skills actúan como adiciones a los modelos, por lo que la efectividad depende del modelo subyacente. Prueba tu Skill con todos los modelos que planeas usar. Consideraciones de prueba por modelo:- Claude Haiku (rápido, económico): ¿El Skill proporciona suficiente orientación?
- Claude Sonnet (equilibrado): ¿El Skill es claro y eficiente?
- Claude Opus (razonamiento poderoso): ¿El Skill evita sobre-explicar?
Estructura del Skill
Frontmatter YAML: El frontmatter de SKILL.md requiere dos campos:
name:- Máximo 64 caracteres
- Debe contener solo letras minúsculas, números y guiones
- No puede contener etiquetas XML
- No puede contener palabras reservadas: “anthropic”, “claude”
description:- Debe ser no vacío
- Máximo 1024 caracteres
- No puede contener etiquetas XML
- Debe describir qué hace el Skill y cuándo usarlo
Convenciones de nomenclatura
Usa patrones de nomenclatura consistentes para que los Skills sean más fáciles de referenciar y discutir. Recomendamos usar forma de gerundio (verbo + -ing) para nombres de Skills, ya que esto describe claramente la actividad o capacidad que proporciona el Skill. Recuerda que el camponame debe usar solo letras minúsculas, números y guiones.
Buenos ejemplos de nomenclatura (forma de gerundio):
processing-pdfsanalyzing-spreadsheetsmanaging-databasestesting-codewriting-documentation
- Frases nominales:
pdf-processing,spreadsheet-analysis - Orientado a acciones:
process-pdfs,analyze-spreadsheets
- Nombres vagos:
helper,utils,tools - Demasiado genéricos:
documents,data,files - Palabras reservadas:
anthropic-helper,claude-tools - Patrones inconsistentes dentro de tu colección de skills
- Referenciar Skills en documentación y conversaciones
- Entender qué hace un Skill de un vistazo
- Organizar y buscar a través de múltiples Skills
- Mantener una biblioteca de skills profesional y cohesiva
Escribir descripciones efectivas
El campodescription permite el descubrimiento de Skills e incluye tanto qué hace el Skill como cuándo usarlo.
Siempre escribe en tercera persona. La descripción se inyecta en el prompt del sistema, y el punto de vista inconsistente puede causar problemas de descubrimiento.
- Bueno: “Procesa archivos de Excel y genera informes”
- Evita: “Puedo ayudarte a procesar archivos de Excel”
- Evita: “Puedes usar esto para procesar archivos de Excel”
Patrones de divulgación progresiva
SKILL.md sirve como una descripción general que apunta a Claude a materiales detallados según sea necesario, como una tabla de contenidos en una guía de incorporación. Para una explicación de cómo funciona la divulgación progresiva, consulta Cómo funcionan los Skills en la descripción general. Orientación práctica:- Mantén el cuerpo de SKILL.md bajo 500 líneas para un rendimiento óptimo
- Divide el contenido en archivos separados cuando te acerques a este límite
- Usa los patrones a continuación para organizar instrucciones, código y recursos de manera efectiva
Descripción visual: De simple a complejo
Un Skill básico comienza con solo un archivo SKILL.md que contiene metadatos e instrucciones:

Patrón 1: Guía de alto nivel con referencias
Patrón 2: Organización específica del dominio
Para Skills con múltiples dominios, organiza el contenido por dominio para evitar cargar contexto irrelevante. Cuando un usuario pregunta sobre métricas de ventas, Claude solo necesita leer esquemas relacionados con ventas, no datos de finanzas o marketing. Esto mantiene el uso de tokens bajo y el contexto enfocado.SKILL.md
Patrón 3: Detalles condicionales
Muestra contenido básico, vincula a contenido avanzado:Evita referencias profundamente anidadas
Claude puede leer parcialmente archivos cuando se hace referencia a ellos desde otros archivos referenciados. Al encontrar referencias anidadas, Claude podría usar comandos comohead -100 para obtener una vista previa del contenido en lugar de leer archivos completos, resultando en información incompleta.
Mantén referencias un nivel de profundidad desde SKILL.md. Todos los archivos de referencia deben vincularse directamente desde SKILL.md para asegurar que Claude lea archivos completos cuando sea necesario.
Mal ejemplo: Demasiado profundo:
Estructura archivos de referencia más largos con tabla de contenidos
Para archivos de referencia más largos que 100 líneas, incluye una tabla de contenidos en la parte superior. Esto asegura que Claude pueda ver el alcance completo de la información disponible incluso cuando obtiene una vista previa con lecturas parciales. Ejemplo:Flujos de trabajo y bucles de retroalimentación
Usa flujos de trabajo para tareas complejas
Divide operaciones complejas en pasos claros y secuenciales. Para flujos de trabajo particularmente complejos, proporciona una lista de verificación que Claude pueda copiar en su respuesta y marcar a medida que avanza. Ejemplo 1: Flujo de trabajo de síntesis de investigación (para Skills sin código):Implementa bucles de retroalimentación
Patrón común: Ejecutar validador → corregir errores → repetir Este patrón mejora enormemente la calidad de salida. Ejemplo 1: Cumplimiento de guía de estilo (para Skills sin código):Directrices de contenido
Evita información sensible al tiempo
No incluyas información que se volverá obsoleta: Mal ejemplo: Sensible al tiempo (se volverá incorrecto):Usa terminología consistente
Elige un término y úsalo en todo el Skill: Bueno - Consistente:- Siempre “endpoint de API”
- Siempre “campo”
- Siempre “extraer”
- Mezcla “endpoint de API”, “URL”, “ruta de API”, “ruta”
- Mezcla “campo”, “caja”, “elemento”, “control”
- Mezcla “extraer”, “tirar”, “obtener”, “recuperar”
Patrones comunes
Patrón de plantilla
Proporciona plantillas para formato de salida. Haz coincidir el nivel de rigidez con tus necesidades. Para requisitos estrictos (como respuestas de API o formatos de datos):Patrón de ejemplos
Para Skills donde la calidad de salida depende de ver ejemplos, proporciona pares entrada/salida tal como lo harías en prompting regular:Patrón de flujo de trabajo condicional
Guía a Claude a través de puntos de decisión:Si los flujos de trabajo se vuelven grandes o complicados con muchos pasos, considera empujarlos a archivos separados e indica a Claude que lea el archivo apropiado basado en la tarea en cuestión.
Evaluación e iteración
Construye evaluaciones primero
Crea evaluaciones ANTES de escribir documentación extensa. Esto asegura que tu Skill resuelva problemas reales en lugar de documentar los imaginados. Desarrollo impulsado por evaluación:- Identifica brechas: Ejecuta Claude en tareas representativas sin un Skill. Documenta fallos específicos o contexto faltante
- Crea evaluaciones: Construye tres escenarios que prueben estas brechas
- Establece línea base: Mide el desempeño de Claude sin el Skill
- Escribe instrucciones mínimas: Crea solo suficiente contenido para abordar las brechas y pasar evaluaciones
- Itera: Ejecuta evaluaciones, compara contra línea base, y refina
Este ejemplo demuestra una evaluación impulsada por datos con una rúbrica de prueba simple. Actualmente no proporcionamos una forma integrada de ejecutar estas evaluaciones. Los usuarios pueden crear su propio sistema de evaluación. Las evaluaciones son tu fuente de verdad para medir la efectividad del Skill.
Desarrolla Skills iterativamente con Claude
El proceso más efectivo de desarrollo de Skill implica a Claude mismo. Trabaja con una instancia de Claude (“Claude A”) para crear un Skill que será usado por otras instancias (“Claude B”). Claude A te ayuda a diseñar y refinar instrucciones, mientras que Claude B las prueba en tareas reales. Esto funciona porque los modelos Claude entienden tanto cómo escribir instrucciones efectivas de agentes como qué información necesitan los agentes. Creando un nuevo Skill:- Completa una tarea sin un Skill: Trabaja a través de un problema con Claude A usando prompting normal. Mientras trabajas, naturalmente proporcionarás contexto, explicarás preferencias y compartirás conocimiento procedural. Nota qué información proporcionas repetidamente.
- Identifica el patrón reutilizable: Después de completar la tarea, identifica qué contexto proporcionaste que sería útil para tareas futuras similares. Ejemplo: Si trabajaste a través de un análisis de BigQuery, podrías haber proporcionado nombres de tablas, definiciones de campos, reglas de filtrado (como “siempre excluir cuentas de prueba”), y patrones de consulta comunes.
-
Pide a Claude A que cree un Skill: “Crea un Skill que capture este patrón de análisis de BigQuery que acabamos de usar. Incluye los esquemas de tabla, convenciones de nomenclatura, y la regla sobre filtrado de cuentas de prueba.”
Los modelos Claude entienden el formato y estructura del Skill nativamente. No necesitas prompts del sistema especiales o un “skill de escritura de skills” para que Claude ayude a crear Skills. Simplemente pide a Claude que cree un Skill y generará contenido SKILL.md adecuadamente estructurado con frontmatter y contenido del cuerpo apropiados.
- Revisa por concisión: Verifica que Claude A no haya agregado explicaciones innecesarias. Pregunta: “Elimina la explicación sobre qué significa tasa de ganancia - Claude ya sabe eso.”
- Mejora la arquitectura de información: Pide a Claude A que organice el contenido más efectivamente. Por ejemplo: “Organiza esto para que el esquema de tabla esté en un archivo de referencia separado. Podríamos agregar más tablas más tarde.”
- Prueba en tareas similares: Usa el Skill con Claude B (una instancia nueva con el Skill cargado) en casos de uso relacionados. Observa si Claude B encuentra la información correcta, aplica reglas correctamente, y maneja la tarea exitosamente.
- Itera basado en observación: Si Claude B lucha o pierde algo, vuelve a Claude A con especificidades: “Cuando Claude usó este Skill, olvidó filtrar por fecha para Q4. ¿Deberíamos agregar una sección sobre patrones de filtrado de fecha?”
- Trabajar con Claude A (el experto que ayuda a refinar el Skill)
- Probar con Claude B (el agente usando el Skill para realizar trabajo real)
- Observar el comportamiento de Claude B y traer insights de vuelta a Claude A
- Usa el Skill en flujos de trabajo reales: Dale a Claude B (con el Skill cargado) tareas reales, no escenarios de prueba
- Observa el comportamiento de Claude B: Anota dónde lucha, tiene éxito, o hace elecciones inesperadas Ejemplo de observación: “Cuando pedí a Claude B un informe de ventas regional, escribió la consulta pero olvidó filtrar cuentas de prueba, incluso aunque el Skill menciona esta regla.”
- Vuelve a Claude A para mejoras: Comparte el SKILL.md actual y describe lo que observaste. Pregunta: “Noté que Claude B olvidó filtrar cuentas de prueba cuando pedí un informe regional. El Skill menciona filtrado, ¿pero quizás no es lo suficientemente prominente?”
- Revisa las sugerencias de Claude A: Claude A podría sugerir reorganizar para hacer reglas más prominentes, usar lenguaje más fuerte como “DEBE filtrar” en lugar de “siempre filtrar”, o reestructurar la sección de flujo de trabajo.
- Aplica y prueba cambios: Actualiza el Skill con los refinamientos de Claude A, luego prueba nuevamente con Claude B en solicitudes similares
- Repite basado en uso: Continúa este ciclo de observar-refinar-probar a medida que encuentres nuevos escenarios. Cada iteración mejora el Skill basado en comportamiento real del agente, no suposiciones.
- Comparte Skills con compañeros de equipo y observa su uso
- Pregunta: ¿Se activa el Skill cuando se espera? ¿Son claras las instrucciones? ¿Qué falta?
- Incorpora retroalimentación para abordar puntos ciegos en tus propios patrones de uso
Observa cómo Claude navega Skills
A medida que iteras en Skills, presta atención a cómo Claude realmente los usa en la práctica. Observa:- Rutas de exploración inesperadas: ¿Lee Claude archivos en un orden que no anticipaste? Esto podría indicar que tu estructura no es tan intuitiva como pensaste
- Conexiones perdidas: ¿Falla Claude en seguir referencias a archivos importantes? Tus enlaces podrían necesitar ser más explícitos o prominentes
- Dependencia excesiva de ciertas secciones: Si Claude lee repetidamente el mismo archivo, considera si ese contenido debería estar en el SKILL.md principal en lugar de
- Contenido ignorado: Si Claude nunca accede a un archivo agrupado, podría ser innecesario o mal señalizado en las instrucciones principales
Anti-patrones a evitar
Evita rutas de estilo Windows
Siempre usa barras diagonales en rutas de archivo, incluso en Windows:- ✓ Bueno:
scripts/helper.py,reference/guide.md - ✗ Evita:
scripts\helper.py,reference\guide.md
Evita ofrecer demasiadas opciones
No presentes múltiples enfoques a menos que sea necesario:Avanzado: Skills con código ejecutable
Las secciones a continuación se enfocan en Skills que incluyen scripts ejecutables. Si tu Skill usa solo instrucciones markdown, salta a Lista de verificación para Skills efectivos.Resuelve, no eludas
Al escribir scripts para Skills, maneja condiciones de error en lugar de eludir a Claude. Buen ejemplo: Maneja errores explícitamente:Proporciona scripts de utilidad
Incluso si Claude pudiera escribir un script, los scripts prefabricados ofrecen ventajas: Beneficios de scripts de utilidad:- Más confiables que código generado
- Ahorran tokens (no necesitas incluir código en contexto)
- Ahorran tiempo (no se requiere generación de código)
- Aseguran consistencia en todos los usos

- Ejecutar el script (más común): “Ejecuta
analyze_form.pypara extraer campos” - Leerlo como referencia (para lógica compleja): “Consulta
analyze_form.pypara el algoritmo de extracción de campos”
Usa análisis visual
Cuando las entradas pueden renderizarse como imágenes, haz que Claude las analice:En este ejemplo, necesitarías escribir el script
pdf_to_images.py.Crea salidas intermedias verificables
Cuando Claude realiza tareas complejas y abiertas, puede cometer errores. El patrón “plan-validar-ejecutar” detecta errores temprano al hacer que Claude primero cree un plan en formato estructurado, luego valide ese plan con un script antes de ejecutarlo. Ejemplo: Imagina pedir a Claude que actualice 50 campos de formulario en un PDF basado en una hoja de cálculo. Sin validación, Claude podría hacer referencia a campos inexistentes, crear valores conflictivos, perder campos requeridos, o aplicar actualizaciones incorrectamente. Solución: Usa el patrón de flujo de trabajo mostrado arriba (llenado de formularios PDF), pero agrega un archivo intermediochanges.json que se valida antes de aplicar cambios. El flujo de trabajo se convierte en: analizar → crear archivo de plan → validar plan → ejecutar → verificar.
Por qué funciona este patrón:
- Detecta errores temprano: La validación encuentra problemas antes de que se apliquen cambios
- Verificable por máquina: Los scripts proporcionan verificación objetiva
- Planificación reversible: Claude puede iterar en el plan sin tocar originales
- Depuración clara: Los mensajes de error apuntan a problemas específicos
Empaqueta dependencias
Los Skills se ejecutan en el entorno de ejecución de código con limitaciones específicas de plataforma:- claude.ai: Puede instalar paquetes de npm y PyPI y extraer de repositorios de GitHub
- API de Anthropic: No tiene acceso a red y sin instalación de paquetes en tiempo de ejecución
Entorno de ejecución
Los Skills se ejecutan en un entorno de ejecución de código con acceso al sistema de archivos, comandos bash, y capacidades de ejecución de código. Para la explicación conceptual de esta arquitectura, consulta La arquitectura de Skills en la descripción general. Cómo esto afecta tu autoría: Cómo Claude accede a Skills:- Metadatos precargados: Al inicio, el nombre y descripción del frontmatter YAML de todos los Skills se cargan en el prompt del sistema
- Archivos leídos bajo demanda: Claude usa herramientas bash Read para acceder a SKILL.md y otros archivos del sistema de archivos cuando sea necesario
- Scripts ejecutados eficientemente: Los scripts de utilidad pueden ejecutarse vía bash sin cargar su contenido completo en contexto. Solo la salida del script consume tokens
- Sin penalización de contexto para archivos grandes: Archivos de referencia, datos, o documentación no consumen tokens de contexto hasta que se lean realmente
- Las rutas de archivo importan: Claude navega tu directorio de skill como un sistema de archivos. Usa barras diagonales (
reference/guide.md), no barras invertidas - Nombra archivos descriptivamente: Usa nombres que indiquen contenido:
form_validation_rules.md, nodoc2.md - Organiza para descubrimiento: Estructura directorios por dominio o característica
- Bueno:
reference/finance.md,reference/sales.md - Malo:
docs/file1.md,docs/file2.md
- Bueno:
- Agrupa recursos completos: Incluye documentos de API completos, ejemplos extensos, conjuntos de datos grandes; sin penalización de contexto hasta que se acceda
- Prefiere scripts para operaciones deterministas: Escribe
validate_form.pyen lugar de pedir a Claude que genere código de validación - Aclara la intención de ejecución:
- “Ejecuta
analyze_form.pypara extraer campos” (ejecutar) - “Consulta
analyze_form.pypara el algoritmo de extracción” (leer como referencia)
- “Ejecuta
- Prueba patrones de acceso a archivos: Verifica que Claude pueda navegar tu estructura de directorio probando con solicitudes reales
reference/finance.md, e invoca bash para leer solo ese archivo. Los archivos sales.md y product.md permanecen en el sistema de archivos, consumiendo cero tokens de contexto hasta que sea necesario. Este modelo basado en el sistema de archivos es lo que habilita la divulgación progresiva. Claude puede navegar y cargar selectivamente exactamente lo que cada tarea requiere.
Para detalles técnicos completos sobre la arquitectura, consulta Cómo funcionan los Skills en la descripción general de Skills.
Referencias de herramientas MCP
Si tu Skill usa herramientas MCP (Model Context Protocol), siempre usa nombres de herramientas completamente calificados para evitar errores “herramienta no encontrada”. Formato:ServerName:tool_name
Ejemplo:
BigQueryyGitHubson nombres de servidor MCPbigquery_schemaycreate_issueson los nombres de herramientas dentro de esos servidores
Evita asumir que las herramientas están instaladas
No asumas que los paquetes están disponibles:Notas técnicas
Requisitos de frontmatter YAML
El frontmatter de SKILL.md requiere camposname y description con reglas de validación específicas:
name: Máximo 64 caracteres, solo letras minúsculas/números/guiones, sin etiquetas XML, sin palabras reservadasdescription: Máximo 1024 caracteres, no vacío, sin etiquetas XML
Presupuestos de tokens
Mantén el cuerpo de SKILL.md bajo 500 líneas para un rendimiento óptimo. Si tu contenido excede esto, divídelo en archivos separados usando los patrones de divulgación progresiva descritos anteriormente. Para detalles arquitectónicos, consulta la descripción general de Skills.Lista de verificación para Skills efectivos
Antes de compartir un Skill, verifica:Calidad central
- La descripción es específica e incluye términos clave
- La descripción incluye tanto qué hace el Skill como cuándo usarlo
- El cuerpo de SKILL.md está bajo 500 líneas
- Los detalles adicionales están en archivos separados (si es necesario)
- Sin información sensible al tiempo (o en sección “patrones antiguos”)
- Terminología consistente en todo
- Los ejemplos son concretos, no abstractos
- Las referencias de archivo están un nivel de profundidad
- La divulgación progresiva se usa apropiadamente
- Los flujos de trabajo tienen pasos claros
Código y scripts
- Los scripts resuelven problemas en lugar de eludir a Claude
- El manejo de errores es explícito y útil
- Sin “constantes vudú” (todos los valores justificados)
- Paquetes requeridos listados en instrucciones y verificados como disponibles
- Los scripts tienen documentación clara
- Sin rutas de estilo Windows (todas barras diagonales)
- Pasos de validación/verificación para operaciones críticas
- Bucles de retroalimentación incluidos para tareas críticas de calidad
Pruebas
- Al menos tres evaluaciones creadas
- Probado con Haiku, Sonnet y Opus
- Probado con escenarios de uso real
- Retroalimentación del equipo incorporada (si aplica)