blueprint
Use when the deliverable is WordPress Playground Blueprint JSON or a Blueprint bundle, including creating, editing, reviewing,…
Use when building or debugging WordPress Interactivity API features (data-wp-* directives, @wordpress/interactivity store/state/actions, block viewScriptModule integration, wp_interactivity_*()) including performance, hydration, and directive behavior.
Claude Code
$ npx -y skills add WordPress/agent-skills --skill wp-interactivity-api --agent claude-code
Codex
$ npx skills add WordPress/agent-skills --skill wp-interactivity-api -a codex -y
Cursor
$ npx skills add WordPress/agent-skills --skill wp-interactivity-api -a cursor -y
Gemini CLI
$ npx skills add WordPress/agent-skills --skill wp-interactivity-api -a gemini-cli -y
GitHub Copilot
$ npx skills add WordPress/agent-skills --skill wp-interactivity-api -a github-copilot -y
OpenCode
$ npx skills add WordPress/agent-skills --skill wp-interactivity-api -a opencode -y
Windsurf
$ npx skills add WordPress/agent-skills --skill wp-interactivity-api -a windsurf -y
name: wp-interactivity-api description: "Use when building or debugging WordPress Interactivity API features (data-wp-* directives, @wordpress/interactivity store/state/actions, block viewScriptModule integration, wp_interactivity_*()) including performance, hydration, and directive behavior." compatibility: "Targets WordPress 7.0+ (PHP 7.4.0+). Filesystem-based agent with bash + node. Some workflows require WP-CLI."
Use this skill when the user mentions:
Search for:
Decide:
If you’re creating a new interactive block (not just debugging), prefer the official scaffold template:
Locate store definitions and confirm:
**Pre-render HTML on the server** before outputting to ensure:
For components using `block.json`, add `supports.interactivity`:
{
"supports": {
"interactivity": true
}
}For themes/plugins without `block.json`, use `wp_interactivity_process_directives()` to process directives.
Use `wp_interactivity_state()` to define initial global state:
wp_interactivity_state( 'myPlugin', array( 'items' => array( 'Apple', 'Banana', 'Cherry' ), 'hasItems' => true, ));
For local context, use `wp_interactivity_data_wp_context()`:
<?php $context = array( 'isOpen' => false ); ?> <div <?php echo wp_interactivity_data_wp_context( $context ); ?>> ... </div>
When derived state affects initial HTML rendering, replicate the logic in PHP:
wp_interactivity_state( 'myPlugin', array(
'items' => array( 'Apple', 'Banana' ),
'hasItems' => function() {
$state = wp_interactivity_state();
return count( $state['items'] ) > 0;
}
));This ensures directives like `data-wp-bind--hidden="!state.hasItems"` render correctly on first load.
For detailed examples and patterns, see `references/server-side-rendering.md`.
When touching markup directives:
**WordPress 6.9 changes:**
For quick directive reminders, see `references/directives-quickref.md`.
Verify the repo supports the required module build path:
If “nothing happens” on interaction:
See `references/debugging.md`.
Teach AI coding assistants how to build WordPress the right way. Agent Skills are portable bundles of instructions, checklists, and scripts that help AI assistants (Claude, Copilot, Codex, Cursor, etc.)
Use when the deliverable is WordPress Playground Blueprint JSON or a Blueprint bundle, including creating, editing, reviewing,…
Use when the user asks about WordPress codebases (plugins, themes, block themes, Gutenberg blocks, WP core checkouts) and you…
Use when working with the WordPress Abilities API (wp_register_ability, wp_register_ability_category, /wp-json/wp-abilities/v1/*,…
Audit a WordPress plugin's REST surface and produce a standardized audit document proposing Abilities API registrations. Produces…
Verify a WordPress plugin's Abilities API registrations: enumerate abilities, check that callback behavior matches each…
Use when developing WordPress (Gutenberg) blocks: block.json metadata, register_block_type(_from_metadata),…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.