Ejemplos de Claude skills: archivos SKILL.md reales para copiar
Nadie publica los SKILL.md que de verdad funcionan. Aquí hay ejemplos reales, en producción, de una biblioteca de skills de persona: alex-hormozi, lifeos-lint, loading maps y la estructura de referencias separadas por decisión que hace que funcionen.
La mayoría de las guías describen la arquitectura de la skill. Esta muestra los archivos reales.
La guía para crear skills en Claude Code cubre lo básico: qué es un SKILL.md, cómo funciona un loading map, cuándo vale la pena construir una skill. Si todavía estás decidiendo si las skills encajan en tu workflow, qué son las Claude skills es la introducción. Este artículo no repite eso. Muestra ejemplos reales: archivos de una biblioteca que corre en producción.
Nadie publica su SKILL.md. No los que de verdad funcionan. Encuentras diagramas de arquitectura y explicaciones abstractas de loading maps, pero nada que puedas soltar en .agents/ y probar el lunes. Los ejemplos de abajo son de una biblioteca real: ocho skills de persona y dieciséis skills de función que sostienen un workflow diario. Dos categorías, una arquitectura, trabajos distintos. Esto es el desarmado.
La biblioteca es una carpeta plana
Cada skill es un subdirectorio con un SKILL.md que hace de router y, en las skills de persona, una carpeta references/ dividida por dominio de decisión. La biblioteca que uso tiene 24 skills de ambos tipos. Las skills de persona llevan nombre de personas: cada una apunta a una obra reconocible y enruta las preguntas a referencias destiladas. Las skills de función llevan el nombre del trabajo que hacen: sin calibración de persona, solo un checklist y un formato de salida.
Biblioteca de skills: .agents/skills/
- alex-hormozi/persona// diseño de ofertas, precios, garantías
- SKILL.mdrouter
- references/// 15 archivos, uno por decisión
- neil-patel/persona// estrategia de SEO
- russell-brunson/persona// funnels, escalera de valor
- gary-vaynerchuk/persona// contenido, atención
- feynman/persona// claridad didáctica
- arthur-miller/persona// narrativa, guion
- michael-burry/persona// inversión contrarian
- felipe-fontoura/persona// estrategia de negocio
- lifeos-lint/función// health-check de la wiki
- lifeos-review/función// revisión semanal
- lifeos-capture/función
- lifeos-ingest/función
- lifeos-journal/función
- lifeos-plan/función
- lifeos-query/función
- lifeos-study/función
- youtube-analyse/función// rendimiento de videos
- narration-review/función
Por qué nombrar a una persona funciona mejor que un role prompt genérico, y por qué las referencias separan la técnica del cosplay, está en skills de persona para Claude Code. La estructura de arriba es donde eso vive en el día a día.
Anatomía de una skill de persona: alex-hormozi
Una skill de persona nombra a una persona, destila su método en referencias separadas por decisión y enruta cada pregunta al archivo dueño de esa decisión. La skill alex-hormozi se encarga de diseño de ofertas, precios, garantías y retención. El SKILL.md es solo lógica de enrutamiento. No contiene el método. Tiene 15 referencias y un loading map que el agente debe consultar antes de responder.
El bloque de frontmatter es lo que Claude Code lee para decidir si invoca la skill:
---
name: alex-hormozi
description: >
Designs, critiques, and refines commercial offers — products, pricing,
guarantees, sales ladders, lead magnets, ads, sales copy, retention plays,
pricing raises, and fast-cash campaigns. Applies: Value Equation, Grand Slam
Offer, Core Four advertising, ACA closing, Five Horsemen retention, MAGIC
naming. Output is a single direct recommendation — not a menu of options.
---
La description nombra los frameworks de forma explícita. “Diseño de ofertas” es vago; “Value Equation, Grand Slam Offer, ACA closing” es una coordenada. Claude Code compara la intención del usuario con esta description para decidir qué invocar. Precisión en la description es precisión en el disparador.
El loading map dentro del cuerpo del SKILL.md es la capa de enrutamiento:
Loading map de referencias del SKILL.md
| Referencia | Cuándo cargarla |
|---|---|
| references/00-canon.md | Principios centrales — cargar para cualquier pregunta |
| references/01-value-equation.md | Precio, conversión, valor percibido |
| references/02-grand-slam-offer.md | Construir o auditar una oferta nueva |
| references/03-money-models.md | Secuencia de productos, lógica de upsell/downsell |
| references/04-pricing-and-guarantees.md | Subidas de precio, tipos de garantía, reversión de riesgo |
| references/05-naming-and-positioning.md | Naming, fórmula MAGIC, estrategia de nicho |
| references/06-advertising-and-leads.md | Estrategia de anuncios, hooks, lead magnets |
| references/07-closing-and-sales.md | Objeciones, llamadas de venta, tasa de cierre |
| references/08-retention-and-ltv.md | Diagnóstico de churn, LTV, punto de activación |
| references/09-branding-and-proof.md | Testimonios, factores de prueba, asociación de marca |
| references/10-fast-cash-plays.md | Inyección trimestral de ingresos, caja ya |
| references/11-decision-checklist.md | Una oferta concreta — punto de partida recomendado |
| references/12-canonical-phrases.md | Calibración — cargar cuando el tono se desvía |
| references/13-cfa-math-and-scaling.md | Cuentas de CAC/GP, economía de adquisición pagada |
| references/14-operations-and-scaling.md | Diagnóstico de la etapa de escala, rituales operativos |
Quince filas, quince decisiones. Una pregunta de retención carga retención, no toda la biblioteca. Una pregunta de precios carga precios. Nada se carga solo; el map hace explícito el enrutamiento para que el modelo no tenga margen para adivinar.
La skill alex-hormozi en cifras
- 15
- archivos de referenciauno por dominio de decisión
- 80KB
- de método destiladolibros, charlas, playbooks
- 1
- SKILL.md router
- 0
- prompts que repetirel estudio vive en la skill
Anatomía de una skill de función: lifeos-lint
Una skill de función no tiene persona. Lleva el nombre del trabajo que hace, no de la persona que canaliza. lifeos-lint corre un health-check sobre una wiki personal: páginas huérfanas, links fantasma, contenido desactualizado, capa y tipo que no coinciden, deuda de cosecha. Sin calibración de autor, sin frases canónicas. Solo un checklist y un formato de salida estricto. El rigor viene de las verificaciones, no de una voz.
El frontmatter:
---
name: lifeos-lint
description: >
Health-check the Life OS wiki. Use when user says "lint", "health check",
"orphans", "contradictions", or asks about wiki quality. Finds orphan pages,
weak connections, ghost links, stale content, premature promotions,
and layer-type mismatches. Suggests improvements; auto-fixes unambiguous issues.
---
Sin sección de identidad, sin frases canónicas, sin calibración de autor. La description lista directamente las frases disparadoras: lint, health check, orphans, contradictions. La skill se activa con el lenguaje del trabajo, no con un nombre.
El cuerpo del SKILL.md es el checklist:
## Checks (in order)
1. **Orphans** — pages in `20-wiki/` with zero inbound `[[links]]`
2. **Weak pages** — fewer than 3 outbound connections
3. **Ghost links** — `[[links]]` pointing to non-existent pages
4. **Contradictions** — conflicting claims across pages
5. **Stale content** — `updated` date older than 30 days
6. **Layer-type mismatch** — study note in worklog folder, or vice versa
7. **Harvest debt** — work-log drafts older than 14 days, never promoted
El formato de salida es igual de explícito: un reporte de lint con secciones de crítico, medio y sugerencia, un bloque de estadísticas al final y un append a log.md. El modelo no puede improvisar el formato. Esa especificidad es lo que hace útil a la skill con el tiempo. Revisas el mismo formato de reporte cada semana.
Si estás decidiendo si construir este tipo de tarea como skill o como subagent con MCP, Claude skills frente a MCP y subagents cubre el límite.
El loading map es todo el truco
El loading map es la parte que la mayoría de los SKILL.md que andan por ahí se salta por completo. Sin él, el modelo decide qué leer. Y prefiere, de forma sistemática, sus pesos a tus archivos. Toma el camino de menor resistencia, que es generar desde los datos de entrenamiento en lugar de cargar la referencia que te tomó tiempo construir. El loading map le quita esa opción.
El loading map convierte una sugerencia en una regla de enrutamiento. Escribe la columna “cuándo cargarla” como un dolor o una decisión, no como una etiqueta de tema. “Precio, conversión, valor percibido” enruta bien. “Conceptos de la value equation” no. Eso describe un archivo, no una pregunta. El agente tiene que hacer coincidir las palabras del usuario con el map; escribe el map en el lenguaje que trae el usuario, no en el del archivo.
Una disciplina más: enruta al archivo más acotado que cubra la decisión. No cargues 00-canon.md para todo por defecto. Si el usuario pregunta por la tasa de cierre, carga la referencia de cierre. El canon es para anclar, no para cada respuesta.
Prueba con inputs reales, no con escenarios de juguete
La prueba no es un conteo de palabras ni de referencias. Una skill está lista cuando resuelve una decisión real: una oferta a la que de verdad le pondrías precio, o una pasada real por la wiki que de verdad revisarías. Las hipótesis no cuentan.
Antes de poner una skill en uso
- Obligatorio:La description nombra frameworks o frases disparadoras concretas, no solo el área temática."Value Equation, Grand Slam Offer, ACA closing" le gana a "diseño de ofertas".
- Obligatorio:Las referencias están divididas por decisión, no por fuente.pricing-and-guarantees.md le gana a book-1.md.
- Obligatorio:Hay un loading map explícito en el cuerpo del SKILL.md.Una sugerencia de consultar las referencias no es un loading map.
- Obligatorio:La probaste con un input real, algo de tu trabajo de verdad.Un ejemplo de juguete no es una prueba.
- Obligatorio:La salida es concreta: una recomendación, un veredicto de checklist, un reporte de lint.Un muro de opciones no es un modo de salida.
- Opcional:La skill está versionada en git.
- Opcional:Hay al menos un ejemplo real de un buen input y su salida esperada.
Los cinco primeros son obligatorios. Los dos últimos suben el techo de consistencia, pero no bloquean. Empieza por la decisión que enfrentas con más frecuencia. Esa es la primera referencia. Agrega más cuando un input real revele un hueco que las referencias existentes no cubren.
La arquitectura es la parte fácil
Un SKILL.md router, referencias divididas por decisión, un loading map: la guía para crear skills en Claude Code explica todo eso en un par de miles de palabras. Lo difícil es construir referencias reales y probarlas con inputs reales.
Los ejemplos de aquí son de una biblioteca en producción: una skill de diseño de ofertas con 15 referencias divididas por decisión y una tabla de enrutamiento que cubre desde precios hasta retención, y un auditor de wiki sin persona, con un checklist que atrapa siete categorías de deuda estructural. Las dos necesitaron varios inputs reales hasta quedar bien.
Constrúyelas para el trabajo que repites cada semana. No para demos.
¿Cuál es la diferencia entre una skill de persona y una skill de función?
Una skill de persona nombra a una persona y activa su método: frameworks, criterios de decisión, frases canónicas, todo destilado en referencias divididas por dominio de decisión. Funciona cuando hay un corpus público real detrás de la persona: libros, charlas, playbooks.
Una skill de función nombra un trabajo. Sin calibración de autor, sin frases canónicas. El rigor viene del checklist y del formato de salida. Usa persona cuando el método vive en la obra de alguien. Usa función cuando el método es un checklist técnico.
¿Por qué dividir las referencias por decisión y no por fuente?
Porque la pregunta del usuario llega como una decisión, no como un capítulo de libro. Una pregunta sobre churn carga la referencia de retención. Una pregunta sobre precios carga la referencia de precios.
Si tus archivos se llaman book-1.md y transcript-3.md, el loading map no puede enrutar por decisión. Enruta por fuente, que es lo incorrecto. La división por decisión es lo que hace utilizable el map.
¿El loading map carga los archivos automáticamente cuando se dispara la skill?
No. Nada se carga solo. El loading map es una instrucción que el modelo debe seguir: una tabla que le dice al agente qué archivo abrir para cada tipo de pregunta.
Sin él, el modelo decide qué leer. Lo habitual es que no elija nada y responda desde los datos de entrenamiento. El map le quita esa opción al hacer el enrutamiento explícito y obligatorio.
¿Cuántas referencias necesita una skill para ser útil?
De tres a cinco, si cada una es dueña de una decisión clara. La skill alex-hormozi empezó con cinco referencias que cubrían construcción de ofertas, precios y cierre. Las otras diez se agregaron con el tiempo, a medida que inputs reales revelaban huecos.
Empieza por la decisión que enfrentas con más frecuencia. Esa es la primera referencia. Agrega más cuando la skill falle en algo que debería haber resuelto.
¿Una skill de función puede tener loading map?
Sí. lifeos-lint no tiene loading map porque no tiene referencias. El método está entero en el cuerpo del SKILL.md. Pero una skill de función más compleja (un auditor de seguridad, un planificador de migraciones) debería tener referencias divididas por tipo de verificación y un map que enrute en consecuencia.
El concepto de loading map aplica a cualquier skill con varios archivos de referencia, sea de persona o no.
La newsletter
Don’t Code, Specify. Cada semana, agentes de IA en producción de verdad. Sin hype: lo que funcionó y lo que se rompió.
Suscríbete en Substack (se abre en una pestaña nueva)