Communitygithub.com

Redactor de PR de Astro

Redacta y actualiza solicitudes de extracción (PR) de Astro con títulos amigables para revisores y cuerpos de alto valor informativo. Actívalo cuando el usuario pida crear un PR, abrir un PR, crear un borrador de PR, actualizar el título/cuerpo del PR, o escribir notas/resumen/descripción del PR.

¿Qué es Redactor de PR de Astro?

Esta habilidad para agentes de IA (como Claude Code, Cursor, Codex) se especializa en redactar solicitudes de extracción (PR) de proyectos Astro con un enfoque en claridad y eficiencia para los revisores. Automatiza la escritura de títulos (evitando prefijos convencionales como 'fix:') y cuerpos de PR estructurados en tres secciones: 'Changes', 'Testing' y 'Docs'. La guía de brevedad asegura que el cuerpo del PR se pueda leer en menos de 30 segundos. También verifica la existencia de un archivo changeset obligatorio antes de publicar el PR, y recomienda usar la habilidad 'changeset' para crearlo si es necesario. Su objetivo es reducir la sobrecarga cognitiva del revisor y aumentar la calidad de las descripciones de los PR.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/reyalka/astro/tree/HEAD/.agents/skills/astro-pr-writer

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace Redactor de PR de Astro?

Redacta descripciones de solicitudes de extracción (PR) de Astro que ayuden a los revisores a entender rápidamente la intención, los cambios de comportamiento y la validación.

Usa esta habilidad siempre que el usuario solicite cualquier tarea de escritura de PR, incluyendo:

  • crear/abrir una solicitud de extracción
  • crear/abrir un borrador de solicitud de extracción
  • actualizar el título de un PR
  • actualizar el cuerpo/descripción de un PR
  • escribir notas/resumen de PR

Principio Fundamental

Describe el cambio, cómo funciona y por qué es importante.

  • Changes explica qué hace la corrección/nueva funcionalidad.
  • Testing enumera qué código de prueba se añadió o modificó.
  • Docs explica si se necesitan cambios en la documentación para el usuario.

No uses las secciones del PR como un registro de tareas.

Reglas para el Título del PR

Usa un título humano y amigable para el revisor.

  • Describe el resultado en lenguaje sencillo.
  • Mantenlo conciso y específico.
  • Prefiere una redacción que una persona escribiría naturalmente en una cola de revisión.

No uses:

  • prefijos de commit convencionales en los títulos de PR (fix:, feat:, docs:, etc.)
  • títulos con alcance estilo commit (fix(cloudflare): ...)

Reglas para el Cuerpo del PR

Usa esta estructura:

## Changes

- <Cambio de comportamiento y por qué es importante>
- <Detalle de implementación e impacto>

## Testing

- <Prueba nueva o modificada y qué cubre>
- <Por qué cambió una aserción existente>

## Docs

- <No se necesita actualización de documentación, porque ...>

Changes

Concéntrate en el comportamiento, el enfoque de implementación y el impacto.

Incluye:

  • qué funciona ahora que antes no funcionaba
  • cómo funciona la corrección/nueva funcionalidad (a un nivel útil para el revisor)
  • cambios de comportamiento en fiabilidad/compatibilidad/rendimiento visibles para el usuario

No incluyas:

  • "se añadió una prueba" o "se actualizó un fixture" (pertenecen a Testing)
  • "se añadió un changeset"
  • notas de proceso interno sin impacto en el comportamiento

Testing

Enumera qué código de prueba se añadió o modificó, y por qué. Los revisores leen esta sección para entender los cambios en la cobertura de pruebas, no para saber que ejecutaste un conjunto de pruebas.

Incluye:

  • archivos de prueba nuevos o casos de prueba añadidos, con una breve descripción de lo que cubren
  • pruebas existentes que se actualizaron, y por qué cambió la aserción

No incluyas:

  • que las pruebas pasan (CI lo muestra; es ruido)
  • qué comandos ejecutaste
  • cuántas pruebas pasaron

Docs

Explica el impacto en la documentación con claridad.

  • Si no se necesita documentación, di por qué en una oración.
  • Si se necesita documentación, enlaza el PR de documentación.

Guía de Brevedad

Por defecto, sé breve. 1-2 viñetas por sección es normal; añade más solo cuando el cambio sea realmente complejo. Un revisor que escanea una cola de PR debería poder leer el cuerpo completo en menos de 30 segundos para un parche típico.

Demasiado verboso:

  • Mueve .optional().prefault({}) fuera de z.preprocess() para la propiedad de configuración server tanto en base.ts como en relative.ts, coincidiendo con la corrección de integraciones de #16531. Zod 4.4.0 rechaza propiedades faltantes envueltas en z.preprocess() antes de que el preprocesador o los valores predeterminados internos puedan ejecutarse — mover .optional().prefault({}) fuera de la llamada a preprocess resuelve esto. Corrige el problema de la propiedad server reportado allí por @rururux.
  • Añade los manejadores invalid_key, invalid_element y options de unión discriminada a los mapas de error de Astro y DB para compatibilidad con Zod 4.4.0. Zod 4.4.0 expone fallos de refinamiento de clave de registro (por ejemplo, nombres de variables de esquema de entorno) como problemas estructurados invalid_key con errores anidados en lugar de un mensaje plano. Los manejadores extraen el mensaje de refinamiento real para errores claros para el usuario.
  • Todos los cambios son compatibles con versiones anteriores de Zod 4.3.x. Las nuevas ramas del mapa de error solo se activan en códigos de problema que 4.4.0 comienza a emitir.

Mejor:

  • Mueve .optional().prefault({}) fuera de z.preprocess() para la configuración server, coincidiendo con la corrección de integraciones de #16531. Corrige el problema reportado allí por @rururux.
  • Añade los manejadores invalid_key, invalid_element y options de unión discriminada a ambos mapas de error para compatibilidad con Zod 4.4.0.
  • Compatible con versiones anteriores de Zod 4.3.x.

Changesets

Cada PR que modifica un paquete requiere un changeset. Solo los cambios en examples/* están exentos.

Carga la habilidad changeset para crear el archivo de changeset y escribir el mensaje. Cubre la creación de archivos, el formato, los tipos de bump y las convenciones de mensajes.

Al escribir el cuerpo del PR:

  • Antes de publicar, verifica si existe un changeset. Si el PR modifica un paquete y no existe ninguno, críalo ahora usando la habilidad changeset — no publiques el PR sin uno.
  • No menciones "se añadió el changeset" en la sección Changes — es ruido de proceso, no un cambio de comportamiento

Autoverificación Antes de Publicar

  • El título es amigable para el revisor (no estilo commit)
  • Las viñetas de Changes describen comportamiento/implementación/impacto
  • Testing enumera el código de prueba añadido/modificado, no los resultados de la ejecución de pruebas
  • La decisión de Docs es explícita
  • El archivo de changeset existe en .changeset/ para cualquier PR que modifique paquetes — si falta, créalo antes de publicar

Individual skills in this repo

This repo contains 7 individual skills — each has its own dedicated page.

reyalka/astro

Analyze recent GitHub Actions workflow runs to identify patterns, mistakes, and improvements. Use when asked to "analyze workflow logs", "review action runs", or "analyze GitHub Actions".

reyalka/astro

Independently implement and validate an alternative solution for an Astro pull request. Use only for Factory's adversary blue team.

reyalka/astro

Qualify and compare red and blue solutions for an Astro pull request using Astro-specific merge and tie-break criteria. Use only for Factory's adversary purple team.

reyalka/astro

Perform a static, read-only code review of an Astro pull request or of a local branch, commit range, diff, patch, or working tree being prepared as a pull request. Determine whether the change satisfies its stated business requirements and is good enough to merge, using the PR description, linked requirement issues and roadmap items, and PR or issue discussions when available. Use this skill only for PR review or self-review, not issue triage or bug investigation. It reports only merge-relevant findings and never edits code or runs project code, tests, builds, checks, or scripts.

reyalka/astro

Comprehensive guide for developing in the Astro monorepo. Covers architecture, debugging, testing, and critical constraints. Use when working on features, fixes, tests, or understanding the codebase structure.

reyalka/astro

Handle main-to-next merge tasks including conflict resolution, changeset cleanup, and CI fix-ups. Use when merging main into next.

reyalka/astro

How to write JSDoc (/** */) and inline (//) comments in the Astro codebase, for contributors reading the source — not end users. Use whenever writing or editing comments in .ts/.js source, including comments added incidentally while fixing bugs or building features. Does not cover the @docs-generated config/error reference.

Skills relacionados