CommunityProgramación y desarrollogithub.com

fswp-maintainer

Gestiona cambios en código WordPress existente en Full-Stack WP Developer. Actualiza, corrige, refactoriza y mejora plugins y temas sin romperlos, y construye complementos para productos que no posees usando hooks en lugar de ediciones directas.

¿Qué es fswp-maintainer?

Este skill está diseñado para desarrolladores que trabajan con WordPress y necesitan modificar código existente de forma segura y profesional. FSWP Maintainer se enfoca en dos modos principales: actualizar o corregir un plugin o tema ya existente, y crear complementos (add-ons) para productos de terceros, como extensiones de WooCommerce o elementos de constructores de páginas, sin tocar los archivos originales. El skill garantiza que los cambios sean mínimos, respeten las convenciones del proyecto, protejan la superficie pública (hooks, funciones, opciones) y sigan un camino de actualización que no rompa versiones anteriores. Además, incorpora prácticas de seguridad, compatibilidad con versiones de PHP y WordPress, y entrega el resultado como parche o zip. Está diseñado para ser invocado por fswp-developer tras la aprobación de un brief de cambio, y se apoya en otros skills como fswp-security-engineer y fswp-qa-engineer para completar el flujo de trabajo.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/syncwin/fswp-developer/tree/main/skills/fswp-maintainer

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

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

Documentación

FSWP Maintainer

Fundamental (siempre aplicado): fswp-developer/references/lean-coding.md (escribe menos, reutiliza primero), fswp-developer/references/coding-standards.md (estándares de codificación, documentación, i18n, accesibilidad), y fswp-security-engineer (entrada, salida, autorización).

El código existente es la especificación. Ejecuta un brief de cambio aprobado por fswp-architect (que ya ejecutó detect_wp_project.py). Sigue las convenciones propias del proyecto a menos que no sean seguras; las plantillas internas son para proyectos nuevos, no para reescribir el estilo de otra persona.

Modo A: Actualizar un plugin o tema existente

  1. Lee primero. Lee los archivos que toca el cambio, sus invocadores y sus pruebas. Anota el prefijo, la nomenclatura, el estilo de manejo de errores, y cómo se almacenan los ajustes y los datos.
  2. Reproduce. Para un error, anota los pasos y el resultado observado; confirma el fallo antes de cambiar nada. Para una funcionalidad, indica la verificación de aceptación.
  3. El cambio más pequeño que funciona. Corrige la causa en el código compartido, no en un solo sitio de llamada. No reformatees código no tocado; los diffs ruidosos ocultan cambios reales y rompen el seguimiento (blame).
  4. Protege la superficie pública. Los nombres de hooks, funciones y clases, las claves de opciones y meta, las rutas y formas REST, los atributos de shortcodes y las sobrescrituras de plantillas son contratos. Para cambiar uno, primero desaproba: mantén el antiguo funcionando, llama a _deprecated_function() / _deprecated_hook() (o _deprecated_argument()), documenta el reemplazo, y no lo elimines hasta una versión mayor posterior.
  5. Ruta de actualización. Si los datos o el esquema cambian: incrementa una opción de versión almacenada, ejecuta una migración al cargar (no solo al activar), hazla idempotente, y prueba la actualización desde los datos de la versión anterior sin reactivar.
  6. Compatibilidad. Respeta los valores declarados Requires at least y Requires PHP; protege las funciones más nuevas con function_exists()/comprobaciones de versión, o aumenta el mínimo deliberadamente y menciónalo.
  7. Revisión de seguridad sobre el código tocado (fswp-security-engineer): una corrección de errores no debe agregar un nuevo punto de entrada sin autorización, nonce, saneamiento y escape.
  8. Versión y registro de cambios. Corrección = parche, funcionalidad = menor, cambio disruptivo = mayor. Actualiza la versión del plugin/tema, la constante, la etiqueta Stable tag en readme.txt y el registro de cambios de forma conjunta.
  9. Entrega como un parche o diff para el repositorio en el que trabaja el usuario, o un zip cuando desplieguen archivos. Incluye el resultado de la lista de verificación de paridad.

Temas: prefiere un tema hijo o cambios en theme.json/variaciones de estilo en lugar de editar un tema padre que recibe actualizaciones. Las ediciones directas a un tema padre, y las ediciones a archivos de plugins de terceros, se pierden en la siguiente actualización.

Modo B: Complemento para un producto que no posees

Un complemento es un plugin separado (o una pequeña capa de tema) que extiende un anfitrión. Estructúralo con fswp-plugin-developer (pasos 1-3 y 8), luego aplica estas reglas:

  1. Extiende a través de la API pública del anfitrión. Usa acciones, filtros, registros y rutas REST documentados. Nunca edites archivos del anfitrión y evita llamar a elementos internos marcados como privados o no documentados; si es necesario, aísla la llamada en una clase adaptadora y protégela.
  2. Declara la dependencia. Agrega Requires Plugins: host-slug al encabezado cuando el anfitrión esté en WordPress.org (WordPress 6.5 y posteriores lo exige). También detecta en tiempo de ejecución: verifica una clase, función o constante, o una constante de versión, no la ruta del archivo del plugin.
  3. Carga en el momento adecuado. Inicializa en plugins_loaded (o en el hook propio de preparación del anfitrión) después de confirmar que el anfitrión existe; regístrate en los hooks de registro del anfitrión, no antes.
  4. Falla de forma silenciosa y clara. Si el anfitrión falta o es demasiado antiguo: no hagas nada más, muestra un aviso de administración explicando lo que se necesita, y nunca causes un error fatal.
  5. Rango de versiones. Indica las versiones compatibles del anfitrión en el readme y en el plan. Prueba la más baja y la más nueva compatible.
  6. Declaraciones de compatibilidad. Algunos anfitriones requieren que declares soporte de funcionalidades. Ejemplo: WooCommerce espera que las extensiones declaren compatibilidad con High-Performance Order Storage y el carrito y pago basados en bloques. Lee la documentación del desarrollador del anfitrión para las llamadas de declaración actuales.
  7. Propiedad de los datos. Almacena tus datos bajo tu propio prefijo; no escribas en las tablas u opciones del anfitrión. La desinstalación elimina solo tus datos.
  8. Licencias y nombres. Sigue las reglas de marca y nombre comercial del anfitrión para los nombres; usa un estilo descriptivo "para X" en lugar de sugerir que es oficial.

Verificar

Entrega a fswp-qa-engineer con la lista de paridad del brief de cambio y la tabla de compatibilidad como fuente del escenario. references/safe-change-checklist.md es la lista rápida previa a la entrega.

Individual skills in this repo

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

fswp-api-developer

Domain skill for WordPress REST API and Abilities API work in Full-Stack WP Developer. Covers registering routes with schemas, argument validation and sanitization, permission callbacks, controller classes, exposing post types and meta, authentication (cookie nonce, application passwords), pagination and errors, and registering abilities with input and output schemas and safety annotations. Use for any custom endpoint or machine-readable capability in a plugin or theme.

fswp-architect

Planning stage of Full-Stack WP Developer. Classifies the work (new plugin, new theme, update to an existing plugin or theme, add-on for another product, or WordPress Core patch), triages existing code with a bundled detection script, asks one round of essential questions, does competitive research, and produces one reviewable PRD or change brief with a single approval gate. Also covers Migration mode and multi-session handoff docs. Invoked by fswp-developer before any code is written; consult directly for PRD, change-brief, or handoff-doc questions.

fswp-block-developer

Domain skill for WordPress block editor work in Full-Stack WP Developer. Covers building custom Gutenberg blocks (block.json, static and dynamic rendering, attributes, supports, InnerBlocks, variations, deprecations, block bindings), block patterns, and the Interactivity API (data-wp directives, stores, server-side state), with the @wordpress/scripts build workflow. Use for any custom block, pattern, or front-end interactivity in a plugin or theme.

fswp-core-contributor

WordPress Core contribution stage of Full-Stack WP Developer. Guides a contributor through finding or filing a Trac ticket, setting up the wordpress-develop checkout and test environment, writing a patch or GitHub pull request that follows Core coding standards, inline documentation, backward compatibility and tests, and preparing the ticket comment; also routes block-editor changes to the Gutenberg repository and security reports to the private process. Invoked by fswp-developer for Core patches; consult directly for Core workflow questions.

fswp-devops-engineer

Domain skill for WordPress development tooling in Full-Stack WP Developer. Covers local environments (wp-env with Docker, WordPress Playground and Blueprints), command-line site operations (plugin and theme management, database export, search-replace, cron, scaffolding), coding standards and static analysis (PHPCS with WordPress standards, PHPStan with WordPress stubs), PHP and JS testing setup, and the @wordpress/scripts toolchain. Use when setting up, running, or automating a WordPress dev or test environment.

fswp-qa-engineer

Verification stage of Full-Stack WP Developer. Runs the mechanical gate for plugins and themes (house-rule scripts, PHP lint, PHPCS with WordPress standards, PHP compatibility, PHPStan with WordPress stubs), the manual checklist, PRD or change-brief scenario tests, and the pre-release check. Reports PASS, FAIL, or NOT RUN and never implies a skipped check passed. Invoked by fswp-developer after a build and again before delivery; consult directly to audit any plugin or theme folder.

fswp-reviewer

Independent review stage of Full-Stack WP Developer. Reviews a finished WordPress plugin, theme, add-on, or Core patch through a security lens (WordPress-specific vulnerabilities, REST and AJAX authorization with an API risk map, AI-generated-code risks), a quality lens (error handling, data and upgrade safety, performance, i18n, accessibility, comment accuracy, test gaps, class and type design, scope), and an optional lean lens for trimming over-engineering, reporting only high-confidence findings in a fixed format. Invoked by fswp-developer after the verify gate, normally through the fswp-code-reviewer agent; consult directly to review or optimize any WordPress code.

fswp-theme-developer

Theme build stage of Full-Stack WP Developer. Builds custom WordPress themes - block themes (theme.json, templates, template parts, patterns, style variations), classic themes (template hierarchy, functions.php, theme supports), hybrids, and child themes - with accessibility, escaping, and directory readiness built in, plus a scaffold script. Invoked by fswp-developer after an approved PRD for a new theme; consult directly for a specific theme pattern. For changes to an existing theme use fswp-maintainer.

syncwin/fswp-plugin-developer

Plugin build stage of Full-Stack WP Developer. House standards and code templates for real WordPress plugins (not shortcode snippets) - folder anatomy, activation/uninstall lifecycle, custom post types and tables, admin UI tiers, front-end output on the Atomic Framework, REST and cron, i18n, distribution, and the Tier 3 React admin stack - plus a scaffold script. Also the base structure for add-ons. Invoked by fswp-developer after an approved PRD; consult directly for a specific plugin build pattern.

Skills relacionados