Agent Skills
Agent Skills es un estándar abierto para ampliar los agentes de programación con capacidades especializadas. Las skills reúnen conocimientos y flujos de trabajo específicos de cada dominio que los agentes de programación pueden usar para realizar tareas concretas.
¿Qué son los skills?
Un skill es un paquete portátil con control de versiones que enseña a los agentes de programación a realizar tareas específicas de un dominio. Los skills pueden incluir scripts, plantillas y referencias que los agentes de programación pueden usar con sus herramientas.
Portátil
Los skills funcionan con cualquier agente de programación compatible con el estándar Agent Skills.
Con control de versiones
Los skills se almacenan como archivos y se pueden rastrear en tu repositorio o instalar mediante enlaces a repositorios de GitHub.
Ejecutable
Los skills pueden incluir scripts, plantillas y referencias que los agentes de programación pueden usar con sus herramientas.
Progresivo
Los skills cargan recursos bajo demanda, lo que permite usar el contexto de forma eficiente.
Cómo funcionan las skills
Al iniciarse, Cursor detecta automáticamente las skills de los directorios de skills y las pone a disposición del agente. El agente recibe las skills disponibles y decide cuándo son relevantes según el contexto.
Tambi��n puedes invocar las skills manualmente escribiendo / en el chat del agente y buscando el nombre de la skill. Una skill invocada de esta manera se adjunta a un mensaje. Para usar una skill como Modo personalizado durante toda la sesión, usa Option+EnterAlt+Enter (Mac) o Alt+Enter (Windows). Consulta Modos personalizados.
Skills integradas de Cursor
Cursor incluye un pequeño conjunto de skills integradas para mejorar tus flujos de trabajo. Cursor administra estas skills, que aparecen junto a las que añades tú.
| Skill | Qué hace |
|---|---|
/automate | Crea automatizaciones de Cursor activadas por programaciones, mensajes de Slack, eventos de GitHub y otras fuentes. |
/autopilot | Supervisa una pull request y aborda comentarios, conflictos, comprobaciones fallidas y tareas de seguimiento. |
/canvas | Crea artefactos interactivos de React que se muestran junto a la conversación. |
/create-hook | Crea hooks de Cursor y actualiza hooks.json para eventos del ciclo de vida del agente. |
/create-rule | Crea reglas de Cursor con el alcance y las instrucciones adecuados. |
/create-skill | Crea Agent Skills, incluida su estructura y los archivos SKILL.md. |
/create-subagent | Crea subagentes personalizados con roles específicos e instrucciones de delegación. |
/cursor-blame | Investiga cambios creados por IA y las instrucciones que los generaron. |
/loop | Ejecuta una instrucción o skill repetidamente a un intervalo especificado. |
/migrate-to-skills | Convierte reglas dinámicas y comandos con barra aptos en Agent Skills. |
/review | Selecciona y ejecuta el agente de revisión de código adecuado. |
/review-bugbot | Revisa el código en busca de posibles errores y regresiones con Bugbot. |
/review-security | Revisa el código en busca de vulnerabilidades de seguridad con Revisión de seguridad. |
/sdk | Te ayuda a crear aplicaciones e integraciones con el SDK de Cursor. |
/shell | Ejecuta el texto proporcionado como un comando de shell literal. |
/split-to-prs | Divide cambios grandes en pull requests más pequeñas. |
/statusline | Configura la línea de estado de la CLI de Cursor. |
/update-cli-config | Actualiza los ajustes de la CLI de Cursor en ~/.cursor/cli-config.json. |
/update-cursor-settings | Busca y actualiza el ajuste adecuado de Cursor o VS Code. |
Puedes ejecutar cualquier skill integrada escribiendo / en el chat del agente y seleccionando su nombre. El agente también puede usar algunas skills integradas automáticamente cuando tu solicitud coincide claramente con su propósito.
Directorios de skills
Las skills se cargan automáticamente desde estas ubicaciones:
| Ubicación | Ámbito |
|---|---|
.agents/skills/ | A nivel de proyecto |
.cursor/skills/ | A nivel de proyecto |
~/.agents/skills/ | A nivel de usuario (global) en la máquina local |
~/.cursor/skills/ | A nivel de usuario (global) en la máquina local |
Cursor carga las skills de nivel de usuario desde la máquina donde se ejecuta el agente de programación. Cursor
no copia tus carpetas locales ~/.cursor/skills/ y ~/.agents/skills/
a los agentes en la nube, a las sesiones SSH remotas de la ventana de agente de programación ni a los workers en máquinas
que gestionas. En esos entornos,
usa skills de proyecto del repo o incluye las skills en la imagen del worker.
Por compatibilidad, Cursor también carga skills desde los directorios de Claude y Codex: .claude/skills/, .codex/skills/, ~/.claude/skills/ y ~/.codex/skills/.
Cada skill debe ser una carpeta que contenga un archivo SKILL.md:
.agents/└── skills/ └── my-skill/ └── SKILL.mdLos skills también pueden incluir directorios opcionales para scripts, referencias y recursos:
.agents/└── skills/ └── deploy-app/ ├── SKILL.md ├── scripts/ │ ├── deploy.sh │ └── validate.py ├── references/ │ └── REFERENCE.md └── assets/ └── config-template.jsonDirectorios de skills anidados
Los directorios de skills pueden organizarse en subdirectorios. Esto resulta útil para agrupar skills relacionados por categoría, equipo o dominio. Cursor recorre recursivamente el directorio raíz de skills y detecta cualquier archivo SKILL.md que encuentre:
.cursor/└── skills/ ├── shipping/ │ ├── land-it/ │ │ └── SKILL.md │ └── careful-merge-conflicts/ │ └── SKILL.md ├── debugging/ │ └── using-datadog-mcp/ │ └── SKILL.md └── workflow/ └── tdd/ └── SKILL.mdLa carpeta de categoría solo sirve para organizar. La identidad del skill proviene de la carpeta que contiene SKILL.md (en este caso, land-it, tdd, etc.), no de la categoría superior.
Cursor también detecta skills en subdirectorios anidados del proyecto. Se detecta cualquier carpeta .cursor/skills/ (o .agents/skills/) dentro del repositorio, por lo que los monorepos pueden ubicar los skills junto al paquete al que se aplican:
my-monorepo/├── .cursor/skills/ # skills de todo el repo│ └── land-it/SKILL.md└── apps/ └── web/ └── .cursor/skills/ # skills específicas de la aplicación └── deploy-web/SKILL.mdLos skills en directorios de proyecto anidados se aplican automáticamente a los archivos dentro de ese directorio. En el ejemplo anterior, deploy-web solo se muestra cuando el agente trabaja con archivos en apps/web/, mientras que los skills de .cursor/skills/ en todo el repo están disponibles en cualquier lugar. Esto es similar al campo de frontmatter paths: no es necesario establecer paths en un skill anidado para aplicarlo a su directorio.
Formato del archivo SKILL.md
Cada skill se define en un archivo SKILL.md con frontmatter YAML:
---name: my-skilldescription: Breve descripción de lo que hace esta skill y cuándo usarla.---# Mi skillInstrucciones detalladas para el agente.## Cuándo usarla- Usa esta skill cuando...- Esta skill resulta útil para...## Instrucciones- Guía paso a paso para el agente- Convenciones propias del dominio- Mejores prácticas y patrones- Usa la herramienta de preguntas si necesitas aclarar los requisitos con el usuarioCampos de frontmatter
| Campo | Obligatorio | Descripción |
|---|---|---|
name | Sí | Identificador de la skill. Solo letras minúsculas, números y guiones. Debe coincidir con el nombre de la carpeta superior. |
description | Sí | Describe qué hace la skill y cuándo usarla. El agente la usa para determinar su relevancia. |
paths | No | Patrones glob que restringen la skill a archivos coincidentes. Acepta una cadena separada por comas o una lista. Cuando se establece, la skill solo se muestra cuando el agente trabaja con archivos coincidentes. |
disable-model-invocation | No | Cuando se establece en true, la skill solo se incluye al invocarla explícitamente mediante /skill-name. El agente no la aplicará automáticamente según el contexto. |
icon | No | Icono mostrado en la insignia cuando la skill se usa como un Modo personalizado. El valor predeterminado es un icono de rayo. |
color | No | Color de la insignia cuando la skill se usa como un Modo personalizado. Uno de default, green, cyan, blue, purple, magenta, orange, yellow, red o brand. |
metadata | No | Asignación arbitraria de clave-valor para metadatos adicionales. |
Limitar una habilidad a archivos específicos
Usa el campo paths para limitar una habilidad a los archivos que coincidan con uno o más patrones glob. La habilidad solo se pone a disposición del agente cuando lee o edita archivos coincidentes. Así, las indicaciones específicas de cada archivo no ocupan contexto en tareas no relacionadas.
---name: react-component-patternsdescription: Conventions for writing React components in this codebase.paths: - "**/*.tsx" - "packages/ui/**/*.ts"---# React component patterns...También puedes pasar una sola cadena separada por comas:
---name: python-styledescription: Style rules for Python files.paths: "**/*.py, scripts/**/*.py"---Los patrones siguen la sintaxis glob estándar. Deja paths sin establecer para una skill que deba estar disponible independientemente de los archivos que estén abiertos.
El campo heredado globs sigue aceptándose como alternativa para skills antiguas, pero las nuevas deben usar paths.
Desactivar la invocación automática
De forma predeterminada, las skills se aplican automáticamente cuando el agente determina que son relevantes. Establece disable-model-invocation: true para que una skill se comporte como un comando con barra tradicional y solo se incluya en el contexto cuando escribas explícitamente /skill-name en el chat.
Usar una skill como modo personalizado
Cualquier skill con un bloque de frontmatter válido puede servir de base para un modo personalizado, lo que mantiene la skill en el contexto durante toda la sesión. Un modo activo muestra una insignia en el campo de entrada del chat. Personalízalo con los campos opcionales de frontmatter icon y color:
---name: tdddescription: Test-driven development playbook for this repo.icon: beakercolor: green---Los iconos proceden del conjunto de iconos de Cursor, con nombres como code, terminal, bug, git-branch, book-open, beaker, shield y rocket. Si no se reconoce un icono o color, se usa la insignia predeterminada: un icono de rayo.
Inclusión de scripts en skills
Las skills pueden incluir un directorio scripts/ con código ejecutable que los agentes de programación pueden ejecutar. Haz referencia a los scripts en tu SKILL.md mediante rutas relativas desde la raíz de la skill.
---name: deploy-appdescription: Implementa la aplicación en entornos de staging o producción. Úsalo al implementar código o cuando el usuario mencione implementaciones, versiones o entornos.---# Implementar la aplicaciónImplementa la aplicación con los scripts proporcionados.## UsoEjecuta el script de implementación: `scripts/deploy.sh <environment>`Donde `<environment>` puede ser `staging` o `production`.## Validación previa a la implementaciónAntes de implementar, ejecuta el script de validación: `python scripts/validate.py`El agente lee estas instrucciones y ejecuta los scripts a los que se hace referencia cuando se invoca la skill. Los scripts pueden escribirse en cualquier lenguaje: Bash, Python, JavaScript o cualquier otro formato ejecutable compatible con la implementación del agente.
Los scripts deben ser autosuficientes, incluir mensajes de error útiles y gestionar correctamente los casos límite.
Directorios opcionales
Las skills admiten estos directorios opcionales:
| Directorio | Finalidad |
|---|---|
scripts/ | Código ejecutable que los agentes de programación pueden ejecutar |
references/ | Documentación adicional que se carga bajo demanda |
assets/ | Recursos estáticos, como plantillas, imágenes o archivos de datos |
Mantén el contenido principal de SKILL.md conciso y traslada el material de referencia detallado a archivos independientes. Así se usa el contexto de forma eficiente, ya que los agentes de programación cargan los recursos progresivamente, solo cuando los necesitan.
Consultar skills
Para consultar las skills detectadas, abre Personalizar en la barra lateral y ve a Skills. Las skills instaladas desde plugins o desde tu proyecto aparecen junto con las reglas en la sección El agente decide.
Instalar skills desde GitHub
Puedes importar skills desde repositorios de GitHub:
- Abre Personalizar en la barra lateral
- Ve a Reglas y haz clic en Añadir regla
- Selecciona Regla remota (GitHub)
- Introduce la URL del repositorio de GitHub
Migrar reglas y comandos a skills
Cursor incluye una skill integrada, /migrate-to-skills, en la versión 2.4 que te ayuda a convertir reglas dinámicas y comandos con barra existentes en skills.
La skill de migración convierte:
- Reglas dinámicas: reglas que usan la configuración "Aplicar de forma inteligente", con
alwaysApply: false(o sin definir) y sin patronesglobsdefinidos. Se convierten en skills estándar. - Comandos con barra: tanto los comandos de nivel de usuario como los de nivel de espacio de trabajo se convierten en skills con
disable-model-invocation: true, conservando su comportamiento de invocación explícita.
Para migrar:
- Escribe
/migrate-to-skillsen el chat del agente - El agente identificará las reglas y los comandos aptos y los convertirá en skills
- Revisa las skills generadas en
.cursor/skills/
Las reglas con alwaysApply: true o patrones globs específicos no se migran, ya que tienen condiciones de activación explícitas distintas del comportamiento de las skills. Las reglas de usuario tampoco se migran porque no se almacenan en el sistema de archivos.
Más información
Agent Skills es un estándar abierto. Más información en agentskills.io.