Files
repo_Claude/.claude/skills/create-skill/SKILL.md
T
egutierrez 2f83d0b746 refactor: mover templates dentro de sus skills
Mueve templates a las carpetas de skills que los usan:

- templates/issue.md → skills/create-issue/issue.md
- templates/skill.md → skills/create-skill/skill.md

Actualiza install.sh: solo enlaza skills y agents.

Estructura final de .claude/:
- CLAUDE.md
- settings.local.json
- agents/
- skills/
2026-03-21 20:43:15 +01:00

3.2 KiB

name, description, argument-hint, disable-model-invocation, user-invocable, allowed-tools
name description argument-hint disable-model-invocation user-invocable allowed-tools
create-skill Crea un nuevo skill en .claude/skills/ siguiendo la estructura oficial de Claude Code
nombre
true true Bash, Read, Write, Edit

create-skill

Crea un nuevo skill en .claude/skills/ con archivo SKILL.md obligatorio.

Sintaxis

/create-skill [nombre]
/create-skill code-review
/create-skill deploy

Precondiciones

  • Carpeta .claude/skills/ existe
  • No existe skill con el mismo nombre
  • Nombre cumple convenciones (minúsculas, guiones)

Flujo

1. Validar nombre

  • Solo minúsculas, números y guiones
  • No nombres reservados (help, clear, exit)
  • Máximo 64 caracteres
ls -d .claude/skills/*/ 2>/dev/null | xargs -n1 basename | grep -E "^${nombre}$"

Si existe, STOP.

2. Solicitar inputs

  • nombre: minúsculas y guiones
  • descripcion: qué hace y cuándo usarlo (1-2 frases)
  • tipo_invocacion:
    • ambos (default): usuario y Claude pueden invocar
    • solo_usuario: solo /nombre (disable-model-invocation: true)
    • solo_claude: solo Claude (user-invocable: false)
  • argument_hint (opcional): ej: [archivo] [formato]
  • allowed_tools (opcional): herramientas sin confirmación
  • instrucciones: contenido del skill

3. Crear carpeta

mkdir -p .claude/skills/${nombre}

4. Determinar frontmatter

Tipo disable-model-invocation user-invocable
ambos (omitir) (omitir)
solo_usuario true (omitir)
solo_claude (omitir) false

5. Generar SKILL.md

Usar template en ${CLAUDE_SKILL_DIR}/skill.md como referencia:

---
name: ${nombre}
description: ${descripcion}
argument-hint: ${argument_hint}
disable-model-invocation: true  # solo si tipo = solo_usuario
allowed-tools: ${allowed_tools}
---

# ${nombre}

${instrucciones}

6. Mostrar y confirmar

Skill creado: ${nombre}
Ubicación: .claude/skills/${nombre}/SKILL.md

¿Te parece bien?
- Si correcto: commit y push automáticamente
- Si ajustes: edita manualmente antes

7. Ejecutar /git-push

Si confirma, crear rama quick/create-skill-${nombre} e integrar.

8. Verificar disponibilidad

Skill /${nombre} creado e integrado

Para usar:
  /${nombre} [argumentos]

Tipo: ${tipo_invocacion}

Campos del frontmatter

Campo Descripción
name Nombre del skill
description Qué hace y cuándo usarlo
argument-hint Pista de argumentos
disable-model-invocation true = solo usuario invoca
user-invocable false = solo Claude invoca
allowed-tools Tools sin pedir permiso
context fork = ejecutar en subagente
agent Tipo subagente: Explore, Plan

Variables dinámicas

Variable Descripción
$ARGUMENTS Todos los argumentos
$0, $1, $2 Argumentos posicionales
${CLAUDE_SKILL_DIR} Ruta del skill

Convenciones

  • Nombres descriptivos con guiones
  • Descripciones claras para invocación automática
  • Un skill por tarea

Reglas

  • Validar nombre antes de crear
  • SKILL.md es obligatorio
  • Confirmación antes de integrar