Cuando trabajas con un asistente de programación, es común repetir instrucciones: cómo revisar un pull request, qué estándares seguir o qué validaciones ejecutar antes de entregar un cambio. Esas instrucciones suelen terminar desperdigadas entre conversaciones y documentos. Los AI Skills ofrecen una forma de convertir procedimientos útiles en recursos reutilizables.
Este artículo explica cinco conceptos esenciales y termina con un ejemplo de Skill para revisar código .NET. El término Skill no es idéntico en todos los productos: aquí nos referimos principalmente a paquetes de instrucciones y recursos que un agente compatible puede descubrir y utilizar.
1. Qué es un Skill
Un Skill es un conjunto organizado de indicaciones, criterios, ejemplos y, en algunos casos, archivos o scripts auxiliares para realizar una clase de tareas. No es una garantía de comportamiento: es una guía que el agente debe interpretar y aplicar.
Por ejemplo, un Skill de revisión de código puede indicar al agente que revise cambios por corrección funcional, seguridad, cobertura de pruebas y claridad, y que reporte hallazgos con referencias a los archivos afectados.
2. Un Skill no es un agente
La distinción evita muchos malentendidos:
- Modelo: produce razonamiento y respuestas a partir del contexto proporcionado.
- Agente: persigue un objetivo mediante instrucciones y herramientas disponibles.
- Skill: proporciona conocimiento y un procedimiento reutilizable para determinadas tareas.
- Harness: ofrece mecanismos de ejecución y control alrededor del agente.
Un Skill no trabaja de manera independiente. Necesita un agente o entorno que sepa descubrirlo, cargarlo y utilizarlo.
3. Especialización con propósito
Un buen Skill resuelve un problema concreto. Algunos ejemplos de ingeniería:
- Revisar endpoints ASP.NET Core y señalar riesgos comprobables.
- Preparar pruebas unitarias respetando las convenciones del repositorio.
- Documentar decisiones de arquitectura con una plantilla compartida.
- Validar migraciones de base de datos antes de desplegarlas.
Es preferible un Skill pequeño, claro y evaluable que uno que pretenda cubrir todo el ciclo de desarrollo. Cuantas más responsabilidades mezclas, más difícil resulta saber por qué falla una instrucción.
4. Reutilización y mantenimiento
Un Skill bien definido reduce la necesidad de repetir instrucciones y ayuda a mantener criterios comunes entre tareas. Pero también requiere mantenimiento: cambian las bibliotecas, los estándares internos y los requisitos de seguridad.
Antes de reutilizar un Skill, revisa su origen, sus scripts, las herramientas que solicita y su compatibilidad con tu entorno. No instales indiscriminadamente recursos de terceros ni concedas permisos amplios solo porque el Skill parece útil.
5. Estructura y carga de contexto
En implementaciones compatibles con el formato de Agent Skills, el archivo principal suele llamarse SKILL.md. Contiene metadatos y las instrucciones necesarias; puede acompañarse de ejemplos, referencias o scripts. La forma exacta de descubrir y cargar el Skill depende de cada herramienta.
skills/
└── dotnet-code-review/
├── SKILL.md
└── references/
└── review-checklist.md
Ejemplo mínimo ilustrativo:
---
name: dotnet-code-review
description: Revisa cambios de C# y ASP.NET Core con foco en corrección, seguridad y pruebas.
---
# Revisión de código .NET
1. Lee primero el diff y los archivos relacionados.
2. Prioriza defectos reproducibles sobre preferencias de estilo.
3. Verifica manejo de errores, validaciones y uso de secretos.
4. Identifica pruebas faltantes sin afirmar que se ejecutaron.
5. Reporta cada hallazgo con archivo, impacto y propuesta de corrección.
Este ejemplo ilustra la idea; la compatibilidad de metadatos, rutas y activación se debe verificar para el agente concreto que utilices.
Diagrama: cómo participa un Skill
Es un modelo conceptual: no todos los sistemas cargan Skills de forma automática ni emplean el mismo mecanismo de selección.
Ejercicio práctico: revisar un pull request
- Crea el directorio del Skill en la ubicación reconocida por tu herramienta.
- Añade
SKILL.mdcon las instrucciones anteriores. - Prepara un cambio pequeño de C# con una validación ausente y una prueba incompleta.
- Solicita al agente una revisión usando ese Skill y pide hallazgos ordenados por impacto.
- Comprueba manualmente los hallazgos; corrige el procedimiento si genera falsos positivos.
- Repite con otro cambio para comprobar si la guía aporta consistencia.
Criterio de éxito: el agente identifica problemas concretos y documenta evidencia; no basta con que produzca un listado extenso. Si un control no fue ejecutado, debe decirlo.
Beneficios y límites
| Beneficio | Límite o costo |
|---|---|
| Instrucciones reutilizables | Requieren versionado y mantenimiento |
| Criterios consistentes | Un modelo puede interpretarlos mal |
| Menos instrucciones repetidas | Un Skill extenso puede agregar contexto innecesario |
| Conocimiento compartido | Riesgo de scripts o indicaciones no confiables |
Errores comunes
Instalar demasiados Skills. No mejora automáticamente al agente; puede dificultar la selección y el mantenimiento.
Confundir instrucciones con capacidades. Escribir «ejecuta pruebas» no concede acceso a una terminal ni garantiza que las pruebas se hayan ejecutado.
Usar un Skill genérico para todo. En tareas críticas, utiliza criterios específicos y verificables.
Dar por válida cualquier revisión. El resultado del agente sigue necesitando validación humana y pruebas independientes.
Conclusión
Los Skills hacen reutilizable el conocimiento operativo: explican cómo abordar una tarea, mientras el agente decide y actúa dentro de sus capacidades y permisos. Empieza con uno que resuelva un problema frecuente, pruébalo con casos reales y mantenlo pequeño.
En el próximo episodio veremos cómo los AI Workflows organizan diferentes tareas, agentes y decisiones para completar un proceso.
