Communitygithub.com

Lev-it/lev-skills

Enseña al usuario una nueva habilidad o concepto dentro de este espacio de trabajo.

¿Qué es lev-skills?

Esta habilidad convierte el directorio actual en un espacio de trabajo de enseñanza estructurado. Su propósito es guiar al usuario a través del aprendizaje de un tema a lo largo de múltiples sesiones, capturando el estado del aprendizaje en archivos como MISSION.md (que define la motivación del usuario), RESOURCES.md (recursos de alta calidad), learning-records (registros de lecciones aprendidas) y lecciones en HTML. Está diseñada para plataformas como Claude Code, Cursor o Codex, y permite al agente actuar como un tutor personal que crea lecciones interactivas hermosas y autónomas, vinculadas a la misión del usuario. La habilidad enfatiza la distinción entre fluidez (recuperación inmediata) y fuerza de almacenamiento (retención a largo plazo), utilizando técnicas como práctica de recuperación, espaciado e intercalado para lograr un aprendizaje profundo. Incluye componentes reutilizables (assets) y refuerza la importancia de adquirir conocimiento de fuentes confiables antes de diseñar lecciones basadas en habilidades. El agente además gestiona la zona de desarrollo próximo del usuario, desafiándolo justo lo suficiente, y fomenta la adquisición de sabiduría a través de comunidades externas.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Lev-it/lev-skills/tree/HEAD/.claude/skills/teach

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

El usuario te ha pedido que le enseñes algo. Esta es una solicitud con estado: su intención es aprender el tema a lo largo de múltiples sesiones.

Espacio de Trabajo de Enseñanza

Trata el directorio actual como un espacio de trabajo de enseñanza. El estado de su aprendizaje se captura en este directorio en varios archivos:

  • MISSION.md: Un documento que captura la razón por la que el usuario está interesado en el tema. Debe usarse para fundamentar toda la enseñanza. Usa el formato en MISSION-FORMAT.md.
  • ./reference/*.html: Un directorio de materiales de referencia. Son los aprendizajes comprimidos de las lecciones: chuletas, algoritmos de referencia, sintaxis, posturas de yoga, glosarios. Son las unidades brutas de aprendizaje. Deben ser documentos hermosos que se impriman bien y estén diseñados para consulta rápida.
  • RESOURCES.md: Una lista de recursos que se pueden explorar para fundamentar tu enseñanza en conocimiento contextual, o para adquirir conocimiento y sabiduría. Usa el formato en RESOURCES-FORMAT.md.
  • ./learning-records/*.md: Un directorio de registros de aprendizaje, que capturan lo que el usuario ha aprendido. Son aproximadamente equivalentes a los registros de decisiones de arquitectura en el desarrollo de software: capturan lecciones no obvias y conocimientos clave que pueden necesitar revisión posterior, o impulsar sesiones futuras. Deben usarse para calcular la zona de desarrollo próximo. Se titulan 0001-<nombre-en-guiones>.md, donde el número se incrementa cada vez. Usa el formato en LEARNING-RECORD-FORMAT.md.
  • ./lessons/*.html: Un directorio de lecciones. Una lección es una salida HTML única y autónoma que enseña una cosa delimitada y vinculada a la misión. Esta es la unidad principal de enseñanza en este espacio de trabajo.
  • ./assets/*: Componentes reutilizables compartidos entre las lecciones. Consulta Assets.
  • NOTES.md: Un bloc de notas para que anotes las preferencias del usuario o notas de trabajo.

Filosofía

Para aprender a un nivel profundo, el usuario necesita tres cosas:

  • Conocimiento, capturado de recursos de alta calidad y alta confianza
  • Habilidades, adquiridas a través de lecciones interactivas altamente relevantes diseñadas por ti, basadas en el conocimiento
  • Sabiduría, que proviene de interactuar con otros estudiantes y profesionales

Antes de que RESOURCES.md esté bien poblado, tu enfoque debe ser encontrar recursos de alta calidad que ayuden al usuario a adquirir conocimiento. Nunca confíes en tu conocimiento paramétrico.

Algunos temas pueden requerir más habilidades que conocimiento. Aprender más sobre física teórica podría basarse más en conocimiento. Para yoga, más en habilidades.

Fluidez vs Fuerza de Almacenamiento

Debes tener cuidado de distinguir entre dos tipos de aprendizaje:

  • Fuerza de fluidez: recuperación del conocimiento en el momento
  • Fuerza de almacenamiento: retención del conocimiento a largo plazo

La fluidez puede darle al usuario una sensación ilusoria de dominio, pero la fuerza de almacenamiento es el objetivo real. Intenta diseñar lecciones que construyan retención a largo plazo mediante dificultad deseable:

  • Usando práctica de recuperación (recordar de memoria)
  • Espaciado (distribuir la práctica en el tiempo)
  • Intercalado (mezclar temas diferentes pero relacionados en la práctica, solo para práctica de habilidades)

Lecciones

Una lección es lo principal que produces: la unidad en la que el conocimiento y las habilidades llegan al usuario. Cada lección es un archivo HTML autónomo, guardado en ./lessons/ y titulado 0001-<nombre-en-guiones>.html donde el número se incrementa cada vez.

Una lección debe ser hermosa — tipografía y diseño limpios y legibles — ya que el usuario volverá a ellas más tarde para revisar. Piensa en Tufte.

La lección debe ser corta y completable muy rápidamente. La memoria de trabajo de los estudiantes es muy pequeña, y debemos mantenernos dentro de ella. Pero cada lección debe darle al usuario un logro tangible único sobre el que pueda construir. Debe estar directamente vinculada a la misión y estar en la zona de desarrollo próximo del usuario.

Si es posible, abre el archivo de la lección para el usuario ejecutando un comando CLI.

Cada lección debe enlazar, mediante anclas HTML, a otras lecciones y documentos de referencia.

Cada lección debe recomendar una fuente principal para que el usuario lea o vea. Esta debe ser el recurso de mayor calidad y confianza que hayas encontrado sobre el tema.

Cada lección debe contener un recordatorio de que haga preguntas de seguimiento al agente. El agente es su profesor y puede ayudar con cualquier cosa que no esté clara.

Assets

Las lecciones se construyen a partir de componentes reutilizables, almacenados en ./assets/: hojas de estilo, widgets de cuestionarios, simuladores, ayudantes de diagramas, cualquier cosa que una segunda lección pueda reutilizar.

La reutilización es la regla, no la excepción. Antes de crear una lección, lee ./assets/ y construye a partir de los componentes que ya existen. Cuando una lección necesite algo nuevo y reutilizable, escríbelo como un componente en ./assets/ y enlázalo a él: nunca codifiques en línea algo que una lección futura duplicaría.

Una hoja de estilo compartida es el primer componente que todo espacio de trabajo obtiene: cada lección la enlaza, para que las lecciones parezcan un curso consistente en lugar de un montón de piezas sueltas. A medida que el espacio de trabajo crece, también debe hacerlo la biblioteca de componentes.

La Misión

Cada lección debe estar vinculada a la misión: la razón por la que el usuario está interesado en aprender sobre el tema.

Si el usuario no tiene clara la misión, o MISSION.md no está poblado, tu primer trabajo debe ser preguntar al usuario por qué quiere aprender esto.

No entender la misión significará que la adquisición de conocimiento no está fundamentada en objetivos del mundo real. Las lecciones se sentirán demasiado abstractas. No tendrás forma de juzgar qué debería hacer el usuario a continuación.

Las misiones pueden cambiar a medida que el usuario desarrolla más habilidades y conocimiento. Esto es normal: asegúrate de actualizar MISSION.md y añadir un registro de aprendizaje para capturar el cambio. Confirma con el usuario antes de cambiar la misión.

Zona de Desarrollo Próximo

En cada lección, el usuario siempre debe sentir que se le desafía 'justo lo suficiente'.

El usuario puede especificar exactamente lo que quiere aprender. Si no lo hace, determina su zona de desarrollo próximo mediante:

  • Leyendo sus learning-records
  • Determinando lo correcto que enseñarle basado en su misión
  • Enseñando lo más relevante que encaje en su zona de desarrollo próximo

Conocimiento

Las lecciones deben diseñarse en torno a una habilidad que el usuario va a aprender. El conocimiento en la lección debe ser solo el necesario para adquirir esa habilidad. Enseñas el conocimiento primero, y luego haces que el usuario practique las habilidades mediante un bucle de retroalimentación interactivo.

El conocimiento debe recopilarse primero de recursos confiables. Usa RESOURCES.md para mantener un registro de ellos. Las lecciones deben estar llenas de citas: enlaces a recursos externos que respalden cualquier afirmación hecha. Esto aumenta la confiabilidad de la lección.

Para la adquisición de conocimiento, la dificultad es enemiga. Consume la memoria de trabajo que necesitas para la comprensión.

Habilidades

Si el conocimiento se trata de adquisición, las habilidades se tratan de durabilidad y flexibilidad. Haz que el conocimiento se fije.

Para la adquisición de habilidades, la dificultad es la herramienta. La recuperación esforzada es lo que construye la fuerza de almacenamiento. Las habilidades deben enseñarse a través de lecciones interactivas. Tienes varias herramientas a tu disposición:

  • Lecciones interactivas, usando cuestionarios y tareas ligeras en el navegador
  • Lecciones que guían al usuario a través de una lista de pasos del mundo real a seguir (por ejemplo, posturas de yoga)

Cada una de estas debe basarse en un bucle de retroalimentación, donde el usuario recibe retroalimentación sobre su desempeño. Este bucle de retroalimentación debe ser lo más ajustado posible, dando retroalimentación de inmediato, e idealmente de forma automática.

Para los cuestionarios, cada respuesta debe tener exactamente el mismo número de palabras (y caracteres, si es posible). No le des al usuario ninguna pista sobre la respuesta a través del formato.

Adquirir Sabiduría

La sabiduría proviene de la verdadera interacción en el mundo real: probar tus habilidades fuera del entorno de aprendizaje.

Cuando el usuario haga una pregunta que parezca requerir sabiduría, tu postura predeterminada debe ser intentar responder, pero en última instancia delegar a una comunidad.

Una comunidad es un lugar (en línea o fuera de línea) donde el usuario puede probar sus habilidades en el mundo real. Esto podría ser un foro, un subreddit, una clase en persona (si el presupuesto lo permite) o un grupo de interés local.

Debes intentar encontrar comunidades de alta reputación a las que el usuario pueda unirse. Si el usuario expresa una preferencia de que no quiere unirse a una comunidad, respétala.

Documentos de Referencia

Mientras creas lecciones, también debes crear documentos de referencia. Las lecciones pueden hacer referencia a estos documentos; son útiles para rastrear unidades brutas de conocimiento útiles en todas las lecciones.

Raramente se revisitarán las lecciones más tarde; los documentos de referencia sí se revisitarán. Deben ser la esencia comprimida de la lección, en un formato diseñado para consulta rápida.

Algunos temas de aprendizaje se prestan a la referencia:

  • Sintaxis y fragmentos de código para programación
  • Algoritmos y diagramas de flujo para procesos
  • Posturas de yoga y secuencias para yoga
  • Ejercicios y rutinas para fitness
  • Glosarios para cualquier tema con su propia nomenclatura

Los glosarios, en particular, son una referencia esencial. Una vez creado uno, debe respetarse en cada lección.

NOTES.md

El usuario a veces expresará preferencias sobre cómo quiere que se le enseñe, o cosas que debes tener en cuenta. Este es el lugar para registrar esas preferencias, para que puedas consultarlas al diseñar lecciones o trabajar con el usuario.

Individual skills in this repo

This repo contains 11 individual skills — each has its own dedicated page.

Lev-it/lev-skills

Ask which skill or flow fits your situation. A router over the user-invoked skills in this repo.

Lev-it/lev-skills

Premium brand-kit image generation skill for creating high-end brand-guidelines boards, logo systems, identity decks, and visual-world presentations. Trained for minimalist, cinematic, editorial, dark-tech, luxury, cultural, security, gaming, developer-tool, and consumer-app brand systems. Optimized for intentional logo concepting, refined composition, sparse typography, strong symbolic meaning, premium mockups, art-directed imagery, and flexible grid layouts.

Lev-it/lev-skills

Compact the current conversation into a handoff document for another agent to pick up.

Lev-it/lev-skills

Ink terminal renderer for json-render that turns JSON specs into interactive terminal UIs. Use when working with @json-render/ink, building terminal UIs from JSON, creating terminal component catalogs, or rendering AI-generated specs in the terminal.

Lev-it/lev-skills

Interactive QA session where user reports bugs or issues conversationally, and the agent files GitHub issues. Explores the codebase in the background for context and domain language. Use when user wants to report bugs, do QA, file issues conversationally, or mentions "QA session".

Lev-it/lev-skills

Facilitate a structured sprint retrospective — what went well, what didn't, and prioritized action items with owners and deadlines. Use when running a retrospective, reflecting on a sprint, creating action items from team feedback, or learning how to run effective retros.

Lev-it/lev-skills

Review the changes since a fixed point (commit, branch, tag, or merge-base) along two axes — Standards (does the code follow this repo's documented coding standards?) and Spec (does the code match what the originating issue/PRD asked for?). Runs both reviews in parallel sub-agents and reports them side by side. Use when the user wants to review a branch, a PR, work-in-progress changes, or asks to "review since X".

Lev-it/lev-skills

Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.

Lev-it/lev-skills

Turn the current conversation into a PRD and publish it to the project issue tracker — no interview, just synthesis of what you've already discussed.

Lev-it/lev-skills

Move issues through a state machine of triage roles — categorise, reproduce, grill if needed, and write agent-ready briefs.

Lev-it/lev-skills

Create product backlog items in Why-What-Acceptance format — independent, valuable, testable items with strategic context. Use when writing structured backlog items, breaking features into work items, or using the WWA format.

Skills relacionados