Communitygithub.com

syncwin/fswp-plugin-developer

Etapa de construcción de plugins para el desarrollador Full-Stack WP. Estándares internos y plantillas de código para plugins reales de WordPress (no fragmentos de shortcode): anatomía de carpetas, ciclo de vida de activación/desinstalación, tipos de contenido personalizados y tablas, niveles de UI de administración, salida front-end en Atomic Framework, REST y cron, i18n, distribución y la pila de administración React Tier 3, además de un script de andamiaje. También la estructura base para complementos. Invocado por fswp-developer después de un PRD aprobado; consulte directamente para un patrón de construcción de plugin específico.

¿Qué es fswp-plugin-developer?

FSWP Plugin Developer es un skill especializado que define el proceso de construcción de plugins reales de WordPress dentro del ecosistema Full-Stack WP. Se activa después de que fswp-architect ha aprobado un PRD y establece estándares estrictos de codificación, seguridad y estructura. Cubre ocho capas progresivas: desde el bootstrap inicial y el ciclo de vida del plugin, pasando por el dominio (CPTs, tablas, REST, cron), hasta interfaces de administración y front-end con soporte para React, Alpine y Atomic Framework. Incluye un script de andamiaje (scaffold_plugin.py) que genera la estructura completa del plugin con placeholders, y referencia skills complementarios como fswp-security-engineer y fswp-qa-engineer para garantizar calidad y seguridad. Es esencial para desarrolladores que necesitan crear plugins WordPress modulares, seguros y listos para distribución, con soporte para i18n, readme estándar y empaquetado en ZIP.

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

Preguntar en tu IA favorita

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

Documentación

Desarrollador de Plugins FSWP

Fundacional (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).

Ejecuta un PRD aprobado (fswp-architect). El prefijo, el objetivo de distribución, la superficie de funcionalidades y el nivel de JS ya están decididos; no vuelva a preguntar. Para cada paso, cargue el skill de dominio para el procedimiento general y la referencia de este skill para la profundidad interna, plantillas y reglas más estrictas. Precedencia: fswp-developer/references/precedencia.md.

Para cambios en un plugin existente, use fswp-maintainer; este vuelve aquí solo para patrones de estructura.

Capas

1  BOOTSTRAP   plugin-slug.php, uninstall.php, includes/class-plugin.php (sin lógica de negocio)
2  CICLO DE VIDA   Activador / Desactivador (hook de activación, dbDelta, comprobación de actualización)
3  DOMINIO      CPTs, tablas, rutas REST, cron: solo lo que enumera el PRD
4a UI ADMIN    wp-admin nativo por defecto; @wordpress/components para una pantalla React;
               React SPA + Tailwind + TanStack Query + Zustand solo para admin tipo aplicación
4b UI PÚBLICO   Atomic Framework (proporcionado por el usuario), vanilla JS por defecto, Alpine opt-in

El admin nunca usa clases de Atomic Framework o Alpine. Nunca genere clases de funcionalidades no utilizadas.

Flujo de trabajo

PasoHacerReferencia internaSkill de dominio
1 AndamiajeDerivar slug, prefijo, nombres de clase, dominio de texto; ejecutar scripts/scaffold_plugin.py --help primero. Pasar --plugin-uri y --author-uri solo si son reales (la línea se omite si no, nunca un dominio placeholder). Ejecute fswp-qa-engineer/scripts/run_gate.sh <dir> <min-php> --fix justo después del andamiaje: las plantillas llevan placeholders {{...}} que el formateador no puede reordenar de forma segura antes de la sustitución.architecture.mdninguno
2 Bootstrap + ciclo de vidaBootstrap declara el encabezado, la autocarga y pasa el control a la clase principalarchitecture.mdninguno
3 SeguridadLínea base completa en cada archivo, en cada tamaño de pluginfswp-security-engineerfswp-security-engineer
4 DominioCPTs, tablas (dbDelta, versiones de esquema), REST, crondata-cpt.md, rest-cron.mdfswp-api-developer; fswp-performance-engineer cuando el PRD lo requiera
5 Bloques (si están en el PRD)Bloques personalizados, patrones, interactividadningunofswp-block-developer
6 UI AdminSettings API, WP_List_Table, Dashicons; escalar solo según la lista de verificaciónadmin-ui.md, modern-app-stack.mdninguno
7 Salida públicaPreguntar al usuario primero por los archivos actuales de Atomic Framework; encolado condicional dentro del callbackfrontend-output.mdninguno
8 i18n + distribuciónCada cadena PHP y JS; readme; licencia; versionadoi18n-distribution.mdfswp-release-manager para WordPress.org

Deténgase al final del paso 8 y pase a fswp-qa-engineer.

Estructura de complementos

Cuando fswp-maintainer se ejecuta en modo complemento, reutiliza los pasos 1-3 y 8 aquí. Las reglas adicionales para complementos (detección del anfitrión, Requiere Plugins, orden de carga, ausencia elegante) residen en fswp-maintainer.

Estándares (cada construcción, cada iteración)

references/standards.md rige la disciplina de versionado/registro de cambios, la decisión de la pila tecnológica, los metadatos requeridos del proyecto (nunca inventar un valor faltante), la documentación por funcionalidad en docs/, el nivel de calidad del código y la disciplina de código mínimo (orden de decidir antes de escribir, correcciones de causa raíz, marcadores shortcut:). Léalo antes de la primera construcción y antes de cada iteración en un plugin existente; no es un paso de configuración único.

Postura de seguridad

Nunca se reduce para plugins pequeños: comprobaciones de capacidad en cada acción privilegiada, nonces en cada cambio de estado, sanitizar entrada y escapar salida, $wpdb->prepare() en cada consulta, un permission_callback real en cada ruta REST, ciclo de vida seguro, sin secretos en texto plano. Reglas completas: fswp-security-engineer.

Nivel Alpine

Nunca inferido. Seleccionado solo por la lista de verificación de 5 puntos en references/frontend-output.md, y solo después de que el usuario confirme explícitamente haber visto qué verificación lo activó y cómo es la alternativa vanilla.

Atomic Framework (proporcionado por el usuario, no incluido)

Es un producto mantenido por separado; una copia incluida se desviaría. Siempre que la construcción incluya frontend, solicite los archivos actuales afw-tokens.css, afw-components.css, afw-foundation-logics.js (más alpine.min.js, alpine-loader.js, alpine-components.js solo si se confirmó el nivel Alpine). El andamiaje los copia a través de --foundation-dir y se detiene con un recordatorio si falta.

Dependencias

Todo excepto Atomic Framework (Tier 2 @wordpress/*, pila Tier 3) se resuelve en latest desde su registro oficial en el momento del andamiaje, luego se fija: confirme el archivo de bloqueo y registre las versiones resueltas en el README. Latest-at-scaffold más un archivo de bloqueo confirmado satisface la regla de fuente reproducible de WordPress.org. Excepción: un techo de compatibilidad indicado por el usuario. Detalles: references/modern-app-stack.md.

Entregar

{plugin-slug}.zip instalable (carpeta del plugin en la raíz del zip) más readme.txt y/o README.md privado con pasos de instalación reales, y un breve resumen: decisiones de prefijo y funcionalidades, pasos manuales aún pendientes (claves API, intervalo de cron, configuración inicial). La salida compilada se envía con su fuente (references/modern-app-stack.md).

Incluido

  • scripts/scaffold_plugin.py: --features cpt,db,rest,cron,admin,frontend (cualquier subconjunto), --js-tier vanilla|alpine, --admin-tier native|react|app, --distribution wporg|private|both, --plugin-uri, --author-uri, --foundation-dir, --zip.
  • assets/templates/: esqueleto del plugin con placeholders {{PREFIX}}, {{Prefix}}, {{prefix}}, {{PLUGIN_NAME}}, {{plugin-slug}}.

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-maintainer

Change stage for existing WordPress code in Full-Stack WP Developer. Updates, fixes, refactors, and upgrades existing plugins and themes without breaking them, and builds add-ons for products you do not own (WooCommerce extensions, page-builder elements, extensions of other plugins) using hooks instead of edits to third-party files. Covers reading before changing, parity lists, deprecation, host compatibility, upgrade paths, and patch delivery. Invoked by fswp-developer after an approved change brief; consult directly for safe-change or add-on questions.

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.

Skills relacionados