boilerplate-update

Boilerplate Update Skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "boilerplate-update" with this command: npx skills add juvojustin/wordpress-plugin-boilerplate/juvojustin-wordpress-plugin-boilerplate-boilerplate-update

Boilerplate Update Skill

Update WordPress plugins to the latest plugin-boilerplate features.

User Confirmation Rules

ASK for confirmation before:

  • Replacing or significantly restructuring files (Loader.php, main plugin class)

  • Changing build tools or asset pipeline

  • Modifying CI/CD workflows

  • Adding new architectural patterns (Abilities API, Blocks)

  • Deleting resources belonging to plugin features

Proceed without confirmation for:

  • Updating dependency versions

  • Adding/renaming scripts with equivalent functionality

  • Syncing QA config files

  • Copying .opencode commands and .agents/skills

Identity Replacement Script

Use scripts/boilerplate-replace.php (bundled with this skill) for deterministic placeholder replacement. This avoids manual AI search-and-replace across copied upstream files.

Determine the target plugin identity

Before running the script, read these sources from the target plugin to determine the three required parameters:

  • plugin-name — Plugin Name: header in the main plugin PHP file (the root .php file containing @wordpress-plugin headers)

  • plugin-text-domain — Text Domain: header in the same file

  • plugin-namespace — the PSR-4 namespace mapped to src/ in composer.json (autoload.psr-4 ), or the namespace declaration in src/*.php files

Apply replacements on the cloned boilerplate

Run the script against the cloned boilerplate directory so every file in the reference copy already carries the target plugin's identity before you compare or copy anything:

php tmp/boilerplate-ref/.agents/skills/boilerplate-update/scripts/boilerplate-replace.php
--path tmp/boilerplate-ref
--plugin-name "My Awesome Plugin"
--plugin-namespace "My_Awesome_Plugin"
--plugin-text-domain "my-awesome-plugin"
--cleanup-setup

This does three things in one pass:

  • Replaces all boilerplate placeholders (demo-plugin , Demo_Plugin , etc.)

  • Strips all BOILERPLATE-DOCS marker sections

  • Removes setup-only artifacts (setup.php , src/Cli/Setup.php , composer autoload/hook entries)

After this step every diff between tmp/boilerplate-ref/ and the target plugin shows only real upstream changes -- no placeholder noise and no setup-only files.

Workflow

  • Clone fresh boilerplate for comparison: git clone --depth 1 https://github.com/JUVOJustin/wordpress-plugin-boilerplate.git ./tmp/boilerplate-ref

  • Determine target plugin identity (see above).

  • Run the replacement script on tmp/boilerplate-ref with --cleanup-setup (see above).

  • Use one subtask/subagent per key area. Delegate comparison using diff against tmp/boilerplate-ref/ .

  • Present findings to user, categorized by confirmation requirement.

  • Apply changes incrementally.

  • Cleanup: rm -rf tmp/boilerplate-ref

Documentation Reference

The boilerplate includes detailed docs at tmp/boilerplate-ref/docs/ :

File Covers

abilities.mdx

Abilities API interfaces, category/ability creation, Loader registration

bundeling.mdx

wp-scripts bundling, entry points, asset enqueueing, localization

i18n.mdx

Translation workflow, extract/compile scripts, JSON translations, caveats

create-blocks.mdx

Block scaffolding, auto-registration via manifest, editor style sharing

wp-env.mdx

Docker-based dev environment, script structure, CI/CD usage

acf-json-sync.mdx

ACF field group JSON storage patterns

work-with-ai.mdx

AI integration: commands, skills, AGENTS.md, WordPress agent skills

documentation.mdx

Documentation structure, front matter metadata, heading rules

Read these docs for implementation details. This skill only provides high-level guidance.

Key Areas to Compare

  1. PHP (composer.json & QA)

Compare: diff composer.json tmp/boilerplate-ref/composer.json

See docs for details: i18n.mdx , bundeling.mdx

Key items:

  • wp-cli/i18n-command

  • Translation extraction/compilation

  • Scripts: i18n:extract , i18n:compile , phpstan , phpcs , phpcbf

  • Strauss config in extra.strauss for namespace prefixing

  • QA config files: phpcs.xml , phpstan.neon

  1. JS & Bundling (package.json, webpack.config.js)

Compare:

  • diff package.json tmp/boilerplate-ref/package.json

  • diff webpack.config.js tmp/boilerplate-ref/webpack.config.js

See docs for details: bundeling.mdx , wp-env.mdx , create-blocks.mdx

Key items:

  • @wordpress/scripts

  • Bundling, linting, formatting

  • @wordpress/env

  • Containerized WordPress for dev/CI

  • Scripts: start , build (with --blocks-manifest ), lint:* , format , create-block , env:*

  • QA config: .eslintrc

  1. GitHub Actions (.github/workflows/)

Compare: diff -r .github/workflows tmp/boilerplate-ref/.github/workflows

  • setup.yml

  • Reusable workflow with dependency caching

  • test-analyse.yml

  • PHPStan, PHPCS, JS linting on push

  • deploy.yml

  • Release automation, translation compilation via wp-env

  1. Loader.php

Compare: diff src/Loader.php tmp/boilerplate-ref/src/Loader.php

New methods:

  • add_shortcode($tag, $component, $callback)

  • add_cli($name, $instance, $args)

  • add_ability($ability_class)

  • Categories auto-register

  1. Main Plugin Class

Compare: diff src/*.php tmp/boilerplate-ref/src/Demo_Plugin.php

New patterns:

  • enqueue_entrypoint($entry)

  • See tmp/boilerplate-ref/docs/bundeling.mdx

  • register_blocks()

  • See tmp/boilerplate-ref/docs/create-blocks.mdx

  1. i18n Workflow

Scripts: i18n:extract (creates .pot, updates .po) and i18n:compile (generates .mo, .json, .php)

See tmp/boilerplate-ref/docs/i18n.mdx for workflow, caveats, and AI command.

  1. Abilities API (WordPress 6.9+)

See tmp/boilerplate-ref/docs/abilities.mdx for interface reference and examples.

Key pattern: $this->loader->add_ability(Abilities\My_Ability::class)

  1. Agent Configuration

Compare:

  • diff -r .opencode/command tmp/boilerplate-ref/.opencode/command

  • diff -r .agents/skills tmp/boilerplate-ref/.agents/skills

See tmp/boilerplate-ref/docs/work-with-ai.mdx for AI integration details.

Sync strategy:

  • Add new items from upstream

  • Update existing (ask user if diff is significant)

  • Ask user before removing local-only items

  • Adapt text domain and paths after copying

  • Remove redundant skills/commands if upstream now includes them or they are possibly renamed

  1. File Control files

Compare:

  • diff .distignore tmp/boilerplate-ref/.distignore

  • diff .gitignore tmp/boilerplate-ref/.gitignore

Verification

  • Ran composer install && npm install after changes

  • Ran npm run build after changes

  • Ran composer phpstan && composer phpcs after changes

  • Ran npm run lint:js && npm run lint:style after changes

  • Test plugin functionality

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

plugin-translations-update

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

ddev

No summary provided by upstream source.

Repository SourceNeeds Review
General

image-gen

Generate AI images from text prompts. Triggers on: "生成图片", "画一张", "AI图", "generate image", "配图", "create picture", "draw", "visualize", "generate an image".

Archived SourceRecently Updated
General

explainer

Create explainer videos with narration and AI-generated visuals. Triggers on: "解说视频", "explainer video", "explain this as a video", "tutorial video", "introduce X (video)", "解释一下XX(视频形式)".

Archived SourceRecently Updated