Manages WordPress development workflow for themes, plugins, WooCommerce stores, performance tuning, security hardening, and 7.0 features like AI connectors, RTC, DataViews.
From antigravity-awesome-skillsnpx claudepluginhub sickn33/antigravity-awesome-skills --plugin antigravity-awesome-skillsThis skill uses the workspace's default tool permissions.
Designs and optimizes AI agent action spaces, tool definitions, observation formats, error recovery, and context for higher task completion rates.
Enables AI agents to execute x402 payments with per-task budgets, spending controls, and non-custodial wallets via MCP tools. Use when agents pay for APIs, services, or other agents.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Comprehensive WordPress development workflow covering theme development, plugin creation, WooCommerce integration, performance optimization, and security. This bundle orchestrates skills for building production-ready WordPress sites and applications.
WordPress 7.0 (April 9, 2026) introduces significant features while maintaining backward compatibility:
WP_COLLABORATION_MAX_USERS)sync.providers filterwp_ai_client_prompt())/wp-json/abilities/v1/manifestwatch() replaces effect from @preact/signalsdisableContentOnlyForUnsyncedPatterns settingUse this workflow when:
app-builder - Project scaffoldingenvironment-setup-guide - Development environment// wp-config.php - Collaboration settings
define('WP_COLLABORATION_MAX_USERS', 5);
// AI Connector is enabled by installing a provider plugin
// (e.g., OpenAI, Anthropic Claude, or Google Gemini connector)
// No constant needed - configure via Settings > Connectors in admin
Use @app-builder to scaffold a new WordPress project with modern tooling
frontend-developer - Component developmentfrontend-design - UI implementationtailwind-patterns - Stylingweb-performance-optimization - Performancetheme-name/
├── style.css
├── functions.php
├── index.php
├── header.php
├── footer.php
├── sidebar.php
├── single.php
├── page.php
├── archive.php
├── search.php
├── 404.php
├── template-parts/
├── inc/
├── assets/
│ ├── css/
│ ├── js/
│ └── images/
└── languages/
Use @frontend-developer to create a custom WordPress theme with React components
Use @tailwind-patterns to style WordPress theme with modern CSS
backend-dev-guidelines - Backend standardsapi-design-principles - API designauth-implementation-patterns - Authenticationshow_in_rest => truewp_ai_client_prompt() for AI featuresregister_post_meta('post', 'custom_field', [
'type' => 'string',
'single' => true,
'show_in_rest' => true, // Required for RTC
'sanitize_callback' => 'sanitize_text_field',
]);
// Using WordPress 7.0 AI Connector
// Note: Requires an AI provider plugin (OpenAI, Claude, or Gemini) to be installed and configured
// Basic text generation
$response = wp_ai_client_prompt('Summarize this content.')
->generate_text();
// With temperature for deterministic output
$response = wp_ai_client_prompt('Summarize this content.')
->using_temperature(0.2)
->generate_text();
// With model preference (tries first available in list)
$response = wp_ai_client_prompt('Summarize this content.')
->using_model_preference('gpt-4', 'claude-3-opus', 'gemini-2-pro')
->generate_text();
// For JSON structured output
$schema = [
'type' => 'object',
'properties' => [
'summary' => ['type' => 'string'],
'keywords' => ['type' => 'array', 'items' => ['type' => 'string']]
],
'required' => ['summary']
];
$response = wp_ai_client_prompt('Analyze this content and return JSON.')
->using_system_instruction('You are a content analyzer.')
->as_json_response($schema)
->generate_text();
plugin-name/
├── plugin-name.php
├── includes/
│ ├── class-plugin-activator.php
│ ├── class-plugin-deactivator.php
│ ├── class-plugin-loader.php
│ └── class-plugin.php
├── admin/
│ ├── class-plugin-admin.php
│ ├── css/
│ └── js/
├── public/
│ ├── class-plugin-public.php
│ ├── css/
│ └── js/
└── languages/
Use @backend-dev-guidelines to create a WordPress plugin with proper architecture
payment-integration - Payment processingstripe-integration - Stripe paymentsbilling-automation - Billing workflowsUse @payment-integration to set up WooCommerce with Stripe
Use @billing-automation to create subscription products in WooCommerce
web-performance-optimization - Performance optimizationdatabase-optimizer - Database optimizationUse @web-performance-optimization to audit and improve WordPress performance
security-auditor - Security auditwordpress-penetration-testing - WordPress security testingsast-configuration - Static analysisUse @wordpress-penetration-testing to audit WordPress security
Use @security-auditor to perform comprehensive security review
test-automator - Test automationplaywright-skill - E2E testingwebapp-testing - Web app testingUse @playwright-skill to create E2E tests for WordPress site
deployment-engineer - Deploymentcicd-automation-workflow-automate - CI/CDgithub-actions-templates - GitHub ActionsUse @deployment-engineer to set up WordPress deployment pipeline
register_post_type('book', [
'labels' => [...],
'public' => true,
'has_archive' => true,
'supports' => ['title', 'editor', 'thumbnail', 'excerpt'],
'menu_icon' => 'dashicons-book',
'show_in_rest' => true, // Enable for RTC
]);
// Register meta with REST API for collaboration
register_post_meta('book', 'isbn', [
'type' => 'string',
'single' => true,
'show_in_rest' => true,
'sanitize_callback' => 'sanitize_text_field',
]);
add_action('rest_api_init', function() {
register_rest_route('myplugin/v1', '/books', [
'methods' => 'GET',
'callback' => 'get_books',
'permission_callback' => '__return_true',
]);
});
// Auto-generate post excerpt with AI
add_action('save_post', function($post_id, $post) {
if (wp_is_post_autosave($post_id) || wp_is_post_revision($post_id)) {
return;
}
// Skip if excerpt already exists
if (!empty($post->post_excerpt)) {
return;
}
$content = strip_tags($post->post_content);
if (empty($content)) {
return;
}
// Check if AI client is available
if (!function_exists('wp_ai_client_prompt')) {
return;
}
// Build prompt with input
$result = wp_ai_client_prompt(
'Create a brief 2-sentence summary of this content: ' . substr($content, 0, 1000)
);
if (is_wp_error($result)) {
return; // Silently fail - don't block post saving
}
// Use temperature for consistent output
$result->using_temperature(0.3);
$summary = $result->generate_text();
if ($summary && !is_wp_error($summary)) {
wp_update_post([
'ID' => $post_id,
'post_excerpt' => sanitize_textarea_field($summary)
]);
}
}, 10, 2);
// Register block entirely in PHP
register_block_type('my-plugin/hello-world', [
'render_callback' => function($attributes, $content) {
return '<p class="hello-world">Hello, World!</p>';
},
'attributes' => [
'message' => ['type' => 'string', 'default' => 'Hello!']
],
]);
// Register ability category on correct hook
add_action('wp_abilities_api_categories_init', function() {
wp_register_ability_category('content-creation', [
'label' => __('Content Creation', 'my-plugin'),
'description' => __('Abilities for generating and managing content', 'my-plugin'),
]);
});
// Register abilities on correct hook
add_action('wp_abilities_api_init', function() {
wp_register_ability('my-plugin/generate-summary', [
'label' => __('Generate Post Summary', 'my-plugin'),
'description' => __('Creates an AI-powered summary of a post', 'my-plugin'),
'category' => 'content-creation',
'input_schema' => [
'type' => 'object',
'properties' => [
'post_id' => ['type' => 'integer', 'description' => 'The post ID to summarize']
],
'required' => ['post_id']
],
'output_schema' => [
'type' => 'object',
'properties' => [
'summary' => ['type' => 'string', 'description' => 'The generated summary']
]
],
'execute_callback' => 'my_plugin_generate_summary_handler',
'permission_callback' => function() {
return current_user_can('edit_posts');
}
]);
});
// Handler function for the ability
function my_plugin_generate_summary_handler($input) {
$post_id = isset($input['post_id']) ? absint($input['post_id']) : 0;
$post = get_post($post_id);
if (!$post) {
return new WP_Error('invalid_post', 'Post not found');
}
$content = strip_tags($post->post_content);
if (empty($content)) {
return ['summary' => ''];
}
if (!function_exists('wp_ai_client_prompt')) {
return new WP_Error('ai_unavailable', 'AI client not available');
}
$result = wp_ai_client_prompt('Summarize in 2 sentences: ' . substr($content, 0, 1000))
->using_temperature(0.3)
->generate_text();
if (is_wp_error($result)) {
return $result;
}
return ['summary' => sanitize_textarea_field($result)];
}
add_action('init', function() {
class WC_Product_Custom extends WC_Product {
// Custom product implementation
}
});
Before moving to next phase, verify:
development - General web developmentsecurity-audit - Security testingtesting-qa - Testing workflowecommerce - E-commerce development(End of file - total 440 lines)