Agentes de IA

Claude Code

Claude Code — Skills

Las Agent Skills son capacidades reutilizables y combinables: un directorio con un archivo SKILL.md (frontmatter YAML más un cuerpo en markdown) y, opcionalmente, archivos de apoyo al lado (plantillas, ejemplos, scripts). Claude las descubre solo y las invoca cuando su descripción encaja con la tarea — o las invocas tú directamente con /<nombre>.

Los comandos slash personalizados se fusionaron con las Skills: tanto .claude/commands/review.md como .claude/skills/review/SKILL.md crean /review y se comportan igual. Si hay conflicto de nombres, gana la skill.

Ubicaciones y precedencia

UbicaciónÁmbito
Ajustes gestionados (empresa)Toda la organización
~/.claude/skills/<nombre>/SKILL.mdPersonal, todos tus proyectos
.claude/skills/<nombre>/SKILL.mdDel proyecto, se sube a git
<plugin>/skills/<nombre>/SKILL.mdIncluida en un plugin, con el espacio de nombres nombre-plugin:nombre-skill

Precedencia cuando coincide el nombre: empresa > personal > proyecto.

Extras del descubrimiento:

  • Monorepos: al editar archivos en packages/frontend/ también se cargan las skills de packages/frontend/.claude/skills/.
  • Las skills de los directorios añadidos con --add-dir se cargan y detectan cambios en vivo.

Estructura de SKILL.md

---
name: changelog
description: Redacta una entrada de changelog orientada al usuario a partir de los commits desde el último tag. Úsala al preparar una release.
argument-hint: "[versión]"
allowed-tools: Bash(git log *), Bash(git tag *)
---

Redacta la entrada de changelog para la versión $ARGUMENTS.

1. Ejecuta `git tag` para encontrar el último tag.
2. Ejecuta `git log <tag>..HEAD --oneline` para obtener los commits.
3. Agrúpalos en Añadido / Cambiado / Arreglado, escrito para usuarios, no para desarrolladores.

Estado actual de git, como contexto:
!`git status --short`

Mantén SKILL.md por debajo de las 500 líneas; el material de referencia largo va en archivos de apoyo al lado, enlazados desde el cuerpo.

Campos del frontmatter

Todos son opcionales, pero description es muy recomendable: es lo que dispara la invocación automática.

CampoPara qué sirve
namePor defecto, el nombre del directorio; minúsculas, números y guiones; máximo 64 caracteres
descriptionQué hace la skill y cuándo usarla
argument-hintLo que se muestra en el autocompletado de /
disable-model-invocationfalse por defecto; true = sólo la puede invocar la persona
user-invocabletrue por defecto; false = no aparece en el menú de /
allowed-toolsHerramientas que la skill puede usar
modelSobrescribe el modelo
context: forkEjecuta la skill en un subagente bifurcado
agentTipo de subagente para esa bifurcación (por ejemplo Explore)
hooksHooks propios de la skill

Cómo se invocan

  • Escribe /<nombre> — el autocompletado muestra todo lo disponible.
  • O deja que Claude la invoque solo a partir del description.
  • Encadena skills al principio de un mensaje (v2.1.199+): /skill-a /skill-b haz XYZ, hasta seis.

Sustitución de argumentos

MarcadorSe sustituye por
$ARGUMENTSTodo lo que va después del comando
$ARGUMENTS[N]El argumento N
$NForma corta de $ARGUMENTS[N]
${CLAUDE_SESSION_ID}El ID de la sesión actual

Si $ARGUMENTS no aparece en ninguna parte del cuerpo, los argumentos se añaden al final como ARGUMENTS: <valor>.

Inyección dinámica de contexto

Un marcador !`comando` ejecuta ese comando de shell antes de que el contenido de la skill llegue a Claude, y su salida sustituye al marcador. Incluir la palabra ultrathink en el cuerpo activa el razonamiento extendido.

Permisos y presupuesto

  • Reglas de permisos: Skill (deniega todas las skills), Skill(commit) (exacta), Skill(review-pr *) (por prefijo).
  • Las descripciones de las skills comparten un presupuesto del 2% de la ventana de contexto (16.000 caracteres de reserva); se sobrescribe con SLASH_COMMAND_TOOL_CHAR_BUDGET. Puedes ver cuánto consumen con /context.

Última verificación: 2026-09-07

Fuentes oficiales:

Las herramientas de IA para programar evolucionan rápido. Si encuentras información desactualizada, abre un issue o un pull request.