New plugins: core-tools New skills: auto-expense, ticket-triage, design, security-check, aiktop-tasks, daily-digest, imap-triage, index-update, mindmap, notebooklm, proc-creator, tasks-overview, validate-component, perfex-module, report, calendar-manager New agents: design-critic, design-generator, design-lead, design-prompt-architect, design-researcher, compliance-auditor, metabase-analyst, gitea-integration-specialist Updated: all plugin configs, knowledge datasets, existing skills Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
11 KiB
11 KiB
name, description, author, version, quality_score, user_invocable, category, tags, desk_task, desk_project, allowed-tools, mcps, datasets, dependencies, triggers, quality_gate, performance
| name | description | author | version | quality_score | user_invocable | category | tags | desk_task | desk_project | allowed-tools | mcps | datasets | dependencies | triggers | quality_gate | performance | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| wp-dev | Desenvolvimento WordPress especializado com Quality Gate 70+. Cria/modifica plugins seguindo WordPress Coding Standards, desenvolve temas child, integra WooCommerce, resolve problemas WordPress. Consulta obrigatória de datasets Dify (Wordpress, Elementor, Crocoblock). Use when developing WordPress plugins, creating themes, integrating WooCommerce, solving WordPress issues, or when user mentions "wordpress", "plugin", "woocommerce", "elementor", "crocoblock", "jetengine". | Descomplicar® Crescimento Digital | 1.1.0 | 100 | true | dev |
|
1488 | 65 | Read, Write, Edit, Bash, mcp__dify-kb, mcp__memory-supabase, mcp__wikijs | dify-kb, memory-supabase, wikijs |
|
|
|
|
|
WordPress Plugin Developer
Skill para desenvolvimento WordPress profissional seguindo padrões Descomplicar®.
Quando Usar
- Criar ou modificar plugins WordPress
- Desenvolver temas ou child themes
- Integrar funcionalidades WooCommerce
- Resolver problemas específicos WordPress
- Criar custom post types, taxonomias, widgets
Quando NÃO Usar
- Para operações CRM (usar /crm-ops)
- Para operações servidor/SSH genéricas (usar agente especializado)
- Para manutenção rotineira WP (usar /today às segundas)
Protocolo Obrigatório
1. Pesquisa Inicial (MCP)
Antes de desenvolver, SEMPRE executar:
mcp__memory-supabase__search_memories "[keywords wordpress]"
mcp__wikijs__search_pages "[plugin/funcionalidade]"
2. Quality Gate 70+
Todo código WordPress deve atingir score mínimo 70/100:
- WordPress Coding Standards (WPCS)
- Funções documentadas com PHPDoc
- Hooks e filters bem estruturados
- Sem warnings/notices PHP
- Segurança: nonces, sanitização, escaping
3. Assinatura Obrigatória
Todo ficheiro PHP deve incluir:
<?php
/**
* [Nome do Plugin/Ficheiro]
*
* @author Descomplicar® Crescimento Digital
* @link https://descomplicar.pt
* @copyright 2025 Descomplicar®
*/
Segurança WordPress (OBRIGATÓRIO)
- Sanitizar inputs:
sanitize_text_field(),sanitize_email(),absint() - Escapar outputs:
esc_html(),esc_attr(),esc_url() - Nonces para forms:
wp_nonce_field(),wp_verify_nonce() - AJAX nonces:
check_ajax_referer() - Capability checks:
current_user_can()antes de acções admin - Prepared statements:
$wpdb->prepare()para queries
Performance
- Enqueueing correcto:
wp_enqueue_script(),wp_enqueue_style() - Hooks no momento certo:
init,admin_init,wp_enqueue_scripts - Evitar queries em loops
- Usar transients para cache:
get_transient(),set_transient()
Estrutura Plugin Standard
plugin-name/
├── plugin-name.php # Ficheiro principal
├── includes/
│ ├── class-plugin-name.php
│ └── class-plugin-name-admin.php
├── assets/
│ ├── css/
│ └── js/
├── templates/
├── languages/
└── readme.txt
Template Plugin Principal
<?php
/**
* Plugin Name
*
* @package PluginName
* @author Descomplicar® Crescimento Digital
* @copyright 2025 Descomplicar®
* @license GPL-2.0-or-later
*
* @wordpress-plugin
* Plugin Name: Plugin Name
* Plugin URI: https://descomplicar.pt/plugin-name
* Description: Descrição do plugin.
* Version: 1.0.0
* Requires at least: 6.0
* Requires PHP: 8.0
* Author: Descomplicar®
* Author URI: https://descomplicar.pt
* Text Domain: plugin-name
* License: GPL v2 or later
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
defined('ABSPATH') || exit;
define('PLUGIN_NAME_VERSION', '1.0.0');
define('PLUGIN_NAME_PATH', plugin_dir_path(__FILE__));
define('PLUGIN_NAME_URL', plugin_dir_url(__FILE__));
// Autoloader ou includes
require_once PLUGIN_NAME_PATH . 'includes/class-plugin-name.php';
// Inicialização
function plugin_name_init() {
load_plugin_textdomain('plugin-name', false, dirname(plugin_basename(__FILE__)) . '/languages/');
}
add_action('plugins_loaded', 'plugin_name_init');
// Activação
register_activation_hook(__FILE__, 'plugin_name_activate');
function plugin_name_activate() {
// Criar tabelas, opções, etc.
}
// Desactivação
register_deactivation_hook(__FILE__, 'plugin_name_deactivate');
function plugin_name_deactivate() {
// Limpeza
}
Checklist Antes de Entregar
- Assinatura Descomplicar® em todos os ficheiros
- Segurança: nonces, sanitização, escaping
- WordPress Coding Standards
- Sem erros PHP (php -l)
- Textdomain para traduções
- Uninstall hook para limpeza
- Testado em versão WP recente
Hooks WordPress Essenciais
Actions (fazer algo)
// Init - inicializar plugin
add_action('init', 'register_custom_post_type');
// Enqueue scripts/styles
add_action('wp_enqueue_scripts', 'enqueue_assets');
add_action('admin_enqueue_scripts', 'enqueue_admin_assets');
// Save post
add_action('save_post', 'save_custom_meta', 10, 3);
// Admin menu
add_action('admin_menu', 'register_admin_page');
// AJAX
add_action('wp_ajax_my_action', 'handle_ajax');
add_action('wp_ajax_nopriv_my_action', 'handle_ajax_public');
// WooCommerce
add_action('woocommerce_before_cart', 'add_notice');
add_action('woocommerce_checkout_order_processed', 'process_order', 10, 3);
Filters (modificar dados)
// Modificar título
add_filter('the_title', 'custom_title', 10, 2);
// Modificar conteúdo
add_filter('the_content', 'add_content_suffix');
// Query
add_filter('pre_get_posts', 'modify_query');
// WooCommerce
add_filter('woocommerce_cart_item_price', 'custom_price', 10, 2);
add_filter('woocommerce_checkout_fields', 'custom_checkout_fields');
Erros Comuns e Soluções
1. White Screen of Death (WSOD)
# Activar WP_DEBUG
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
# Ver erro
tail -f wp-content/debug.log
2. Plugin Conflict
# Desactivar todos os plugins via BD
UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';
# Reactivar um a um para identificar conflito
3. Memory Limit
// wp-config.php
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');
4. Permissões
# Padrão seguro
find /path -type d -exec chmod 755 {} \;
find /path -type f -exec chmod 644 {} \;
chmod 600 wp-config.php
Datasets Dify (Consulta Obrigatória)
Em caso de dúvidas ou para aprofundar conhecimento, consultar os seguintes datasets via MCP:
| Dataset | ID | Prioridade |
|---|---|---|
| Wordpress | 9da0b2b9-5051-4b99-b9f6-20bf35067092 |
1 |
| Elementor | 9c77d3e2-4d88-4a43-abff-d4e681267cc7 |
1 |
| Crocooblock | 139cdf67-afce-46ec-9ccd-2a06040e5b9d |
1 |
| Crocoblock | bdf85c26-1824-4021-92d1-be20501b35ac |
1 |
| Kivicare | 2e9b7c48-c630-457a-83a0-db8e77f76eae |
2 |
| Desenvolvimento de WebSites | c8489151-de94-42b2-8cee-c0b961cfac6d |
2 |
Como Consultar
// Desenvolvimento de plugins WordPress
mcp__notebooklm__notebook_query, mcp__dify-kb__dify_kb_retrieve_segments({
dataset_id: "9da0b2b9-5051-4b99-b9f6-20bf35067092",
query: "plugin development hooks filters"
})
// Widgets e extensões Elementor
mcp__dify-kb__dify_kb_retrieve_segments({
dataset_id: "9c77d3e2-4d88-4a43-abff-d4e681267cc7",
query: "custom widget dynamic tags"
})
// JetEngine e Crocoblock
mcp__dify-kb__dify_kb_retrieve_segments({
dataset_id: "139cdf67-afce-46ec-9ccd-2a06040e5b9d",
query: "jetengine custom post type relations"
})
// WooCommerce e e-commerce
mcp__dify-kb__dify_kb_retrieve_segments({
dataset_id: "9da0b2b9-5051-4b99-b9f6-20bf35067092",
query: "woocommerce hooks checkout cart"
})
Quando Consultar
- Desenvolver plugins WordPress
- Criar widgets Elementor customizados
- Configurar JetEngine/Crocoblock
- Integrar WooCommerce
- Implementar custom post types
Exemplos
Exemplo 1: Criar plugin simples
User: /wp-dev criar plugin de custom post type "Serviços"
→ Pesquisa memória e KB Dify
→ Gera estrutura de plugin
→ Implementa CPT com ACF integration
→ Testes de segurança e WPCS
→ Score 75/100 ✅
Exemplo 2: Widget Elementor
User: /wp-dev widget elementor para mostrar últimos serviços
→ Consulta dataset Elementor
→ Implementa widget com controls
→ Renderiza output com template
→ Testa em diferentes layouts
Exemplo 3: Integração WooCommerce
User: /wp-dev adicionar campo personalizado no checkout
→ Consulta dataset Wordpress (WooCommerce)
→ Usa hooks woocommerce_checkout_fields
→ Implementa validação e save
→ Testa fluxo completo
Instrumentação Automática
Esta skill grava métricas automaticamente para análise PDCA.
Baseline
| Métrica | Valor |
|---|---|
| Tempo baseline | 4 horas |
| Tempo target | 2 horas |
| Melhoria esperada | -50% |
Query para Gravar (executar no final)
INSERT INTO tblskill_agent_metrics (
type, name, duration_ms, status, staff_id,
kb_consulted, kb_cache_hit, tool_calls, project_id
) VALUES (
'skill', '/wp-dev', {DURACAO_MS}, '{STATUS}', 25,
{KB_CONSULTADO}, {CACHE_HIT}, {TOOL_CALLS}, {PROJECT_ID}
);
Ver Métricas
/metrics /wp-dev
Versão: 1.1.0 | Data: 2026-02-03 | Instrumentação: Activa