feat: migrar commands a skills

Migra todos los comandos de .claude/commands/ a .claude/skills/ siguiendo
la estructura oficial de Claude Code.

Skills migrados (21 total):
- Configuración: init, init-jupyter, nochanges, create-skill
- Git: git-branch, git-push, git-recovery
- Workspace: sync-repos, list-repos, cleanup-worktrees, import-repo, create-repo
- Issues: create-issue, fix-issue, auto-fix, auto-create, quick-issue,
  issues-status, parallel-issues, execute-parallel, sort-issues

Cada skill tiene:
- Carpeta propia en .claude/skills/<nombre>/
- Archivo SKILL.md con frontmatter avanzado
- disable-model-invocation: true (solo usuario invoca)

Incluye README.md con documentación completa de todos los skills.
This commit is contained in:
2026-03-21 20:29:01 +01:00
parent 42a2563f54
commit d36231d3dc
22 changed files with 2028 additions and 0 deletions
+105
View File
@@ -0,0 +1,105 @@
---
name: git-recovery
description: Recupera el repositorio de estados inconsistentes (worktrees huérfanos, branches bloqueados)
argument-hint: [--aggressive]
disable-model-invocation: true
user-invocable: true
allowed-tools: Bash, Read
---
# git-recovery
Recupera el repositorio de estados inconsistentes causados por worktrees huérfanos, branches bloqueados o conflictos git.
## Sintaxis
```bash
/git-recovery # Recuperación estándar
/git-recovery --aggressive # Limpieza agresiva
```
## Cuándo usar
- Errores "exit status 128" al crear worktrees
- Git reporta "worktree already exists"
- Branches que no se pueden eliminar
- Worktrees huérfanos en `git worktree list`
## Flujo
### 1. Diagnóstico inicial
```bash
git branch --show-current
git status --porcelain
```
### 2. Análisis de problemas
```bash
git worktree list
git branch --list
git remote -v
```
### 3. Limpieza de worktrees huérfanos
```bash
git worktree prune -v
```
Si existe directorio `worktrees/`:
- Verificar cada worktree contra `git worktree list`
- Eliminar directorios huérfanos
### 4. Verificar branches bloqueados
Para cada branch issue/* o quick/*:
- Si está mergeada: `git branch -d <branch>`
- Si NO está mergeada: advertir
### 5. Sincronizar con remoto
```bash
git checkout master
git fetch origin
git pull --rebase origin master
```
### 6. Modo agresivo (solo con --aggressive)
```bash
git remote prune origin -v
git fsck --full
git gc --prune=now
rm -f .git/index.lock # si existe
```
### 7. Verificación final
```bash
git status
git worktree list
git branch --list
```
## Patrones de error que activan recovery
- `exit status 128`
- `worktree .* already exists`
- `reference is not a tree`
- `cannot lock ref`
- `index.lock`
## Convenciones
- No destructivo por defecto
- Modo agresivo solo con flag explícito
- Siempre sincroniza con remoto
- Preserva cambios locales
## Reglas
- NUNCA git reset --hard sin --aggressive
- NUNCA eliminar branches no mergeadas automáticamente
- SIEMPRE sincronizar con remoto después de limpieza