update-docs
vercel/next.js
Esta habilidad debe utilizarse cuando el usuario solicite «actualizar la documentación según mis cambios», «revisar la documentación de esta solicitud de incorporación de cambios», «qué documentación hay que actualizar», «sincronizar la documentación con el código», «crear una estructura básica de la documentación para esta funcionalidad», «documentar esta funcionalidad», «revisar si la documentación está completa», «añadir documentación para este cambio», «qué documentación se ve afectada», «repercusión en la documentación» o cuando se mencione «docs/», «docs/01-app», «docs/02-pages», «MDX», «actualización de la documentación», «referencia de la API» o «archivos .mdx». Proporciona un flujo de trabajo guiado para actualizar la documentación de Next.js en función de los cambios en el código.
...Expandir todoActualizador de la documentación de Next.js
Te guía a través del proceso de actualización de la documentación de Next.js en función de los cambios en el código de la rama activa. Diseñado para que los responsables del mantenimiento revisen las solicitudes de incorporación de cambios (PR) y comprueben que la documentación esté completa.
Inicio rápido
- Analizar cambios: ejecuta
git diff canary...HEAD --statpara ver qué archivos han cambiado - Identifica los documentos afectados: asigna los archivos fuente modificados a las rutas de la documentación
- Revisa cada documento: repasa las actualizaciones con la confirmación del usuario
- Validar: Ejecutar
pnpm lintpara comprobar el formato - Confirmar: Preparar los cambios en la documentación
Flujo de trabajo: Analizar los cambios en el código
Paso 1: Obtener las diferencias
# See all changed files on this branch
git diff canary...HEAD --stat# See changes in specific areas
git diff canary...HEAD -- packages/next/src/
Paso 2: Identificar los cambios relevantes para la documentación
Busca cambios en estas áreas:
Paso 3: Asignar a los archivos de documentación
Utiliza la correspondencia entre código y documentación en references/CODE-TO-DOCS-MAPPING.md para encontrar los archivos de documentación correspondientes.
Ejemplos de asignaciones:
src/client/components/image.tsx→docs/01-app/03-api-reference/02-components/image.mdxsrc/server/config-shared.ts→docs/01-app/03-api-reference/05-config/
Flujo de trabajo: Actualizar la documentación existente
Paso 1: Lee la documentación actual
Antes de realizar cambios, lee la documentación existente para comprender:
- La estructura y las secciones actuales
- Los campos de frontmatter que se utilizan
- Si utiliza
/para contenido específico del enrutador
Paso 2: Identificar qué hay que actualizar
Las actualizaciones habituales incluyen:
- Nuevas propiedades u opciones: añádelas a la tabla de propiedades y crea una sección que explique su uso
- Cambios en el comportamiento: Actualizar las descripciones y los ejemplos
- Funcionalidades obsoletas: añadir avisos de obsolescencia y orientación para la migración
- Nuevos ejemplos: añadir bloques de código siguiendo las convenciones
Paso 3: Aplicar las actualizaciones con confirmación
Para cada cambio:
- Mostrar al usuario lo que se va a cambiar
- Esperar a que el usuario confirme antes de editar
- Aplicar la modificación
- Pasa al siguiente cambio
Paso 4: Comprueba si hay contenido compartido
Si el documento utiliza el source patrón de campo (habitual en los documentos del enrutador de páginas), el archivo fuente es el que hay que editar. Ejemplo:
# docs/02-pages/... file with shared content
---
source: app/building-your-application/optimizing/images
---
Edita el código fuente del App Router, no el archivo del Pages Router.
Paso 5: Valida los cambios
pnpm lint # Check formatting
pnpm prettier-fix # Auto-fix formatting issues
Flujo de trabajo: Crear la estructura de la documentación de una nueva función
Utiliza este procedimiento cuando añadas documentación para funciones completamente nuevas.
Paso 1: Determina el tipo de documento
Paso 2: Crea el archivo con el nombre adecuado
- Utiliza el formato «kebab-case»:
my-new-feature.mdx - Añade un prefijo numérico si el orden es importante:
05-my-new-feature.mdx - Colócalo en el directorio correcto según el tipo de función
Paso 3: Utiliza la plantilla adecuada
Plantilla de referencia de la API:
---
title: Feature Name
description: Brief description of what this feature does.
---{/* The content of this doc is shared between the app and pages router. You can use the `Content ` component to add content that is specific to the Pages Router. Any shared content should not be wrapped in a component. */}Brief introduction to the feature.## Reference### Props| Prop | Example | Type | Status |
| ----------------------- | ------------------ | ------ | -------- |
| [`propName`](#propname) | `propName="value"` | String | Required |#### `propName`Description of the prop.\`\`\`tsx filename="app/example.tsx" switcher
// TypeScript example
\`\`\`\`\`\`jsx filename="app/example.js" switcher
// JavaScript example
\`\`\`
Plantilla de la guía:
---
title: How to do X in Next.js
nav_title: X
description: Learn how to implement X in your Next.js application.
---Introduction explaining why this guide is useful.## PrerequisitesWhat the reader needs to know before starting.## Step 1: First StepExplanation and code example.\`\`\`tsx filename="app/example.tsx" switcher
// Code example
\`\`\`## Step 2: Second StepContinue with more steps...## Next StepsRelated topics to explore.
Paso 4: Añade enlaces relacionados
Actualiza el frontmatter con la documentación relacionada:
related:
title: Next Steps
description: Learn more about related features.
links:
- app/api-reference/functions/related-function
- app/guides/related-guide
Convenciones de documentación
Consulta references/DOC-CONVENTIONS.md las reglas completas de formato.
Referencia rápida
Frontmatter (obligatorio):
---
title: Page Title (2-3 words)
description: One or two sentences describing the page.
---
Bloques de código:
\`\`\`tsx filename="app/page.tsx" switcher
// TypeScript first
\`\`\`\`\`\`jsx filename="app/page.js" switcher
// JavaScript second
\`\`\`
Contenido específico del enrutador:
Content only for App Router docs. Content only for Pages Router docs.
Notas:
> **Good to know**: Single line note.> **Good to know**:
>
> - Multi-line note point 1
> - Multi-line note point 2
Lista de comprobación de validación
Antes de confirmar los cambios en la documentación:
- El frontmatter tiene
titleydescription - Los bloques de código tienen
filenameel atributo - Los ejemplos de TypeScript utilizan
switchercon la variante JS - Las tablas de propiedades tienen el formato adecuado
- Los enlaces relacionados apuntan a rutas válidas
-
pnpm lintsupera las pruebas - Los cambios se muestran correctamente (si hay vista previa disponible)
Referencias
references/DOC-CONVENTIONS.md- Reglas completas de frontmatter y formatoreferences/CODE-TO-DOCS-MAPPING.md- Correspondencia entre el código fuente y la documentación
Next.js Documentation Updater
Guides you through updating Next.js documentation based on code changes on the active branch. Designed for maintainers reviewing PRs for documentation completeness.
Quick Start
- Analyze changes: Run
git diff canary...HEAD --statto see what files changed - Identify affected docs: Map changed source files to documentation paths
- Review each doc: Walk through updates with user confirmation
- Validate: Run
pnpm lintto check formatting - Commit: Stage documentation changes
Workflow: Analyze Code Changes
Step 1: Get the diff
# See all changed files on this branch
git diff canary...HEAD --stat# See changes in specific areas
git diff canary...HEAD -- packages/next/src/
Step 2: Identify documentation-relevant changes
Look for changes in these areas:
Step 3: Map to documentation files
Use the code-to-docs mapping in references/CODE-TO-DOCS-MAPPING.md to find corresponding documentation files.
Example mappings:
src/client/components/image.tsx→docs/01-app/03-api-reference/02-components/image.mdxsrc/server/config-shared.ts→docs/01-app/03-api-reference/05-config/
Workflow: Update Existing Documentation
Step 1: Read the current documentation
Before making changes, read the existing doc to understand:
- Current structure and sections
- Frontmatter fields in use
- Whether it uses
<AppOnly>/<PagesOnly>for router-specific content
Step 2: Identify what needs updating
Common updates include:
- New props/options: Add to the props table and create a section explaining usage
- Changed behavior: Update descriptions and examples
- Deprecated features: Add deprecation notices and migration guidance
- New examples: Add code blocks following conventions
Step 3: Apply updates with confirmation
For each change:
- Show the user what you plan to change
- Wait for confirmation before editing
- Apply the edit
- Move to the next change
Step 4: Check for shared content
If the doc uses the source field pattern (common for Pages Router docs), the source file is the one to edit. Example:
# docs/02-pages/... file with shared content
---
source: app/building-your-application/optimizing/images
---
Edit the App Router source, not the Pages Router file.
Step 5: Validate changes
pnpm lint # Check formatting
pnpm prettier-fix # Auto-fix formatting issues
Workflow: Scaffold New Feature Documentation
Use this when adding documentation for entirely new features.
Step 1: Determine the doc type
Step 2: Create the file with proper naming
- Use kebab-case:
my-new-feature.mdx - Add numeric prefix if ordering matters:
05-my-new-feature.mdx - Place in the correct directory based on feature type
Step 3: Use the appropriate template
API Reference Template:
---
title: Feature Name
description: Brief description of what this feature does.
---{/* The content of this doc is shared between the app and pages router. You can use the `<PagesOnly>Content</PagesOnly>` component to add content that is specific to the Pages Router. Any shared content should not be wrapped in a component. */}Brief introduction to the feature.## Reference### Props<div style={{ overflowX: 'auto', width: '100%' }}>| Prop | Example | Type | Status |
| ----------------------- | ------------------ | ------ | -------- |
| [`propName`](#propname) | `propName="value"` | String | Required |</div>#### `propName`Description of the prop.\`\`\`tsx filename="app/example.tsx" switcher
// TypeScript example
\`\`\`\`\`\`jsx filename="app/example.js" switcher
// JavaScript example
\`\`\`
Guide Template:
---
title: How to do X in Next.js
nav_title: X
description: Learn how to implement X in your Next.js application.
---Introduction explaining why this guide is useful.## PrerequisitesWhat the reader needs to know before starting.## Step 1: First StepExplanation and code example.\`\`\`tsx filename="app/example.tsx" switcher
// Code example
\`\`\`## Step 2: Second StepContinue with more steps...## Next StepsRelated topics to explore.
Step 4: Add related links
Update frontmatter with related documentation:
related:
title: Next Steps
description: Learn more about related features.
links:
- app/api-reference/functions/related-function
- app/guides/related-guide
Documentation Conventions
See references/DOC-CONVENTIONS.md for complete formatting rules.
Quick Reference
Frontmatter (required):
---
title: Page Title (2-3 words)
description: One or two sentences describing the page.
---
Code blocks:
\`\`\`tsx filename="app/page.tsx" switcher
// TypeScript first
\`\`\`\`\`\`jsx filename="app/page.js" switcher
// JavaScript second
\`\`\`
Router-specific content:
<AppOnly>Content only for App Router docs.</AppOnly><PagesOnly>Content only for Pages Router docs.</PagesOnly>
Notes:
> **Good to know**: Single line note.> **Good to know**:
>
> - Multi-line note point 1
> - Multi-line note point 2
Validation Checklist
Before committing documentation changes:
- Frontmatter has
titleanddescription - Code blocks have
filenameattribute - TypeScript examples use
switcherwith JS variant - Props tables are properly formatted
- Related links point to valid paths
-
pnpm lintpasses - Changes render correctly (if preview available)
References
references/DOC-CONVENTIONS.md- Complete frontmatter and formatting rulesreferences/CODE-TO-DOCS-MAPPING.md- Source code to documentation mapping
Todos los archivos
3 archivosInstalar update-docs
Descarga y descomprime los archivos de las habilidades en tu directorio .claude/skills/.
Descargar ZIPClona el repositorio y copia los archivos de la habilidad a tu proyecto.
git clone https://github.com/vercel/next.js/tree/canary/.agents/skills/update-docs # Copy the skill folder to .claude/skills/ or .codex/skills/
Copiar





Hogar
