<< All versions

Skill v1.0.0

currentAutomated scan100/100
wasabeef/claude-code-cookbook/pr-auto-update
──Details
PublishedOctober 27, 2026 at 07:57 AM
Content Hashsha256:019c2d67e9c836c6...
Git SHAd4a413b71311
──Files
Files (1 file, 7.6 KB)
SKILL.md7.6 KBactive
SKILL.md · 341 lines · 7.6 KB

description: 'Auto-actualizar descripción y etiquetas de PR. Se activa con "actualizar descripción del PR", "actualizar labels".' allowed-tools:

  • Bash(gh *)
  • Bash(git *)
  • Read
  • Grep
  • Glob

metadata: version: "1.0.0"


Auto-actualizar descripción y etiquetas de PR

Resumen

Un comando que actualiza automáticamente las descripciones y etiquetas de Pull Request. Analiza los cambios de Git para generar y establecer descripciones y etiquetas apropiadas.

Uso

bash
/pr-auto-update [opciones] [número de PR]

Opciones

  • --pr <número>: Especificar número de PR objetivo (se detecta automáticamente desde la rama actual si se omite)
  • --description-only: Actualizar solo la descripción (mantener etiquetas sin cambios)
  • --labels-only: Actualizar solo etiquetas (mantener descripción sin cambios)
  • --dry-run: Mostrar contenido generado sin realizar actualizaciones reales
  • --lang <idioma>: Especificar idioma (es, en)

Ejemplos Básicos

bash
# Auto-actualizar PR para rama actual
/pr-auto-update
# Actualizar PR específico
/pr-auto-update --pr 1234
# Actualizar solo descripción
/pr-auto-update --description-only
# Verificar con dry-run
/pr-auto-update --dry-run

Detalles de Características

1. Auto Detección de PR

Detecta automáticamente el PR correspondiente desde la rama actual:

  • Busca PR abierto relacionado con la rama actual
  • Obtiene información del PR usando GitHub CLI
  • Soporta tanto GitHub.com como GitHub Enterprise

2. Generación de Descripción

Genera automáticamente descripción del PR analizando:

  • Análisis de Commits: Resumen de mensajes de commit
  • Detección de Cambios: Cambios principales en archivos
  • Extracción de Propósito: Identificación del objetivo del cambio
  • Referencias de Issues: Detección automática de #123 mentions

3. Sugerencia de Etiquetas

Sugiere etiquetas apropiadas basadas en:

  • Tipo de Cambio: enhancement, bug, documentation
  • Área de Impacto: frontend, backend, database
  • Prioridad: high priority, low priority
  • Estado: work in progress, ready for review

4. Análisis de Impacto

Analiza el impacto de los cambios:

  • Archivos Modificados: Lista de archivos y estadísticas
  • Dependencias: Cambios en package.json, Gemfile, etc.
  • Breaking Changes: Detección de cambios incompatibles
  • Cobertura de Tests: Verificación de tests agregados

Formato de Descripción Generada

Estructura Estándar

markdown
## 📋 Resumen
[Descripción breve del propósito del PR]
## 🎯 Objetivo
-[Problema que resuelve]
-[Beneficio que aporta]
## 📝 Cambios Realizados
-[Cambio principal 1]
-[Cambio principal 2]
-[Cambio principal 3]
## 🧪 Testing
-[ ] Tests unitarios agregados/actualizados
-[ ] Tests de integración pasando
-[ ] Probado manualmente
## 📊 Impacto
-**Archivos modificados**: X archivos
-**Líneas agregadas**: +XXX
-**Líneas eliminadas**: -XXX
## 📌 Issues Relacionados
-Resuelve #123
-Relacionado con #456
## 📸 Capturas de Pantalla
[Si aplica, capturas de UI/resultado]
## ⚠️ Notas para Revisores
[Puntos específicos que necesitan atención]

Personalización por Tipo

Para Features:

  • Enfoque en funcionalidad nueva
  • Documentación de uso
  • Ejemplos de implementación

Para Bugfixes:

  • Descripción del bug original
  • Causa raíz identificada
  • Solución implementada

Para Refactoring:

  • Justificación del cambio
  • Mejoras de rendimiento/mantenibilidad
  • Compatibilidad hacia atrás

Integración con CI/CD

GitHub Actions

yaml
name: Auto Update PR
on:
pull_request:
types: [opened, synchronize]
jobs:
update-pr:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Update PR Description
run: |
/pr-auto-update --pr ${{ github.event.pull_request.number }}

Pre-commit Hook

bash
#!/bin/bash
# .git/hooks/pre-push
if [ -n "$(git status --porcelain)" ]; then
echo "Actualizando PR antes de push..."
/pr-auto-update --dry-run
fi

Configuración

Archivo .pr-auto-update.yml

yaml
# Configuración personalizada
language: es # Idioma por defecto
labels:
enabled: true
custom:
- "needs-review"
- "urgent"
description:
template: "custom" # usar template personalizado
include_stats: true
include_screenshots: false

Variables de Entorno

bash
export PR_AUTO_UPDATE_LANG=es
export PR_AUTO_UPDATE_TEMPLATE=detailed
export GITHUB_TOKEN=ghp_xxxxx

Solución de Problemas

Error: "No se encontró PR asociado"

bash
# Verificar rama actual
git branch --show-current
# Listar PRs abiertos
gh pr list
# Crear PR si no existe
gh pr create

Error: "Permisos insuficientes"

bash
# Verificar autenticación
gh auth status
# Re-autenticar si necesario
gh auth login

Descripción no se actualiza

bash
# Forzar actualización
/pr-auto-update --pr 1234 --force
# Verificar cambios locales
git status
git diff main...HEAD

Patrones Comunes

Proyecto Flutter

markdown
Implementado {nombre_funcionalidad} para resolver {problema_usuario}.
-**Implementación UI**: Creada nueva pantalla {nombre_pantalla}
-**Gestión de Estado**: Agregados providers de Riverpod
-**Integración API**: Implementadas queries y mutaciones GraphQL
-**Tests**: Agregados tests de widgets y tests unitarios
-**Arquitectura**: {patrón_utilizado}
-**Dependencias**: {paquetes_agregados}
-**Rendimiento**: {optimizaciones_realizadas}

Proyecto Node.js

markdown
Implementado endpoint {nombre_API} para {caso_uso}.
-**Implementación API**: Creado nuevo endpoint {ruta_endpoint}
-**Validación**: Agregada lógica de validación de requests
-**Base de Datos**: Implementadas operaciones en tabla {nombre_tabla}
-**Tests**: Agregados tests de integración y unitarios
-**Autenticación**: Validación de tokens JWT
-**Autorización**: Control de acceso basado en roles
-**Validación de Entrada**: Protección contra inyección SQL

Mejora CI/CD

markdown
Mejorado workflow de GitHub Actions para {efecto_logrado}.
-**Rendimiento**: Reducido tiempo de build en {tiempo}
-**Confiabilidad**: Reforzado manejo de errores
-**Seguridad**: Mejorada gestión de secretos
-**Paralelización**: Ejecución paralela de {nombre_jobs}
-**Caché**: Optimizada estrategia de caché para {objetivo_cache}
-**Monitoreo**: Agregado monitoreo de {métricas}

Mejores Prácticas

  1. Ejecutar antes de solicitar revisión: Asegura descripciones actualizadas
  2. Usar `--dry-run` primero: Revisa cambios antes de aplicar
  3. Mantener commits limpios: Facilita generación de descripción
  4. Configurar templates: Consistencia en equipo
  5. Integrar con CI: Automatización completa

Casos de Uso Avanzados

Monorepo con Múltiples Packages

bash
# Detectar cambios por package
git diff main...HEAD --name-only | grep "^packages/"
/pr-auto-update
"Genera descripción separada para cada package modificado"

PR con Múltiples Colaboradores

bash
# Incluir co-autores
git log --format="%an <%ae>" | sort -u
/pr-auto-update
"Incluye sección de colaboradores en la descripción"

Release PR

bash
# Para PRs de release
git log v1.0.0...HEAD --oneline
/pr-auto-update --labels-only
"Agrega etiquetas de release y changelog"

Limitaciones

  • Requiere GitHub CLI instalado y configurado
  • No modifica PRs ya mergeados
  • Límite de 65,536 caracteres en descripción
  • No puede cambiar título del PR (usar gh pr edit para eso)

Ver También

  • /pr-create - Crear nuevo PR
  • /pr-review - Generar revisión de PR
  • /commit-message - Generar mensajes de commit
  • gh pr - GitHub CLI para PRs
All versions