--- name: plugin-config description: > Gestao inteligente de plugins por contexto v3.0. Avalia regras aditivas — activa cada plugin que fizer sentido para o contexto actual (directorio, ficheiros, conversa). Sem profiles rigidos. Use when "plugins", "plugin-config", "activar plugin", "desactivar plugin", "contexto plugins", "prompt too long". author: Descomplicar version: 3.1.0 user_invocable: true category: system tags: [plugins, context, optimization, registry] desk_project: 65 desk_task: 1754 allowed-tools: Read, Bash, Glob --- # /plugin-config v3.0 - Gestao Inteligente de Plugins Cada plugin tem regras de activacao. O sistema avalia todas e activa o que fizer sentido. Sem profiles — aditivo, contextual, automatico. --- ## Comandos | Comando | Funcao | |---------|--------| | `/plugin-config status` | Plugins activos/inactivos e porquê | | `/plugin-config apply` | Avalia regras e aplica alteracoes ao settings.json | | `/plugin-config enable ` | Forca activacao de um plugin | | `/plugin-config disable ` | Forca desactivacao de um plugin | | `/plugin-config reset` | Activa todos os plugins | --- ## Como funciona ### Registry (profiles.json v3.0) Cada plugin tem regras `activate_when`: - **directories** — $PWD comeca com este path - **files** — ficheiro existe no projecto (ate 2 niveis acima) - **keywords** — palavra aparece no contexto da conversa - **ssh_context** — quando trabalho via SSH envolve estes termos - **content_match** — conteudo especifico dentro de um ficheiro Regras sao **aditivas**: se qualquer regra de um plugin faz match, esse plugin activa. Multiplos plugins podem activar simultaneamente. ### Always-on (4 plugins) Nunca desactivados, independentemente do contexto: - gestao, crm-ops, core-tools, superpowers ### Contextuais (19 plugins) | Plugin | Activa quando | |--------|---------------| | **project-manager** | SPEC.md, SPRINT.md, .desk-project, Dev/ ou Hub/ directory | | **wordpress** | wp-config.php, wordpress, elementor, woocommerce | | **dev-tools** | package.json, composer.json, react, typescript, refactor | | **infraestrutura** | docker-compose.yml, servidor, cwp, easypanel, ssl, deploy | | **marketing** | seo, campanha, google ads, social media, copywriting | | **design-media** | design, ui, ux, apresentacao, video, figma | | **metabase** | metabase, dashboard bi, kpi, query sql | | **automacao** | n8n, workflow, moloni, webhook, mcp server | | **perfex-dev** | init.php + register_module, perfex | | **negocio** | estrategia negocio, saas, e-commerce, pricing, swot | | **plugin-dev** | .claude-plugin, SKILL.md, criar skill/agent/hook | | **feature-dev** | package.json, implementar feature, nova feature | | **frontend-design** | tailwind.config, css, frontend design, layout | | **frontend-excellence** | next.config.*, react avancado, nextjs, state management | | **cache-components** | next.config.*, cache component, ppr | | **pr-review-toolkit** | .git, review, pull request, code review | | **context7** | package.json, docs, documentacao biblioteca | | **ralph-loop** | ralph, loop autonomo | | **playground** | playground, html interactivo | --- ## Protocolo: /plugin-config apply ``` 1. Ler profiles.json (registry) 2. Para CADA plugin contextual: a. Avaliar activate_when.directories vs $PWD b. Avaliar activate_when.files vs ficheiros no projecto c. Avaliar activate_when.keywords vs contexto da conversa d. Se qualquer regra match → marcar para activar e. Se nenhuma regra match → marcar para desactivar 3. Construir mapa enabledPlugins: - always_on → sempre true - matched → true - nao matched → false 4. Aplicar via jq em ~/.claude/settings.json 5. Output: lista de alteracoes 6. Informar: "Alteracoes aplicadas. Restart sessao para efeito." ``` ## Protocolo: /plugin-config status ``` 1. Ler ~/.claude/settings.json → enabledPlugins 2. Ler profiles.json → registry 3. Para cada plugin: - Estado actual (activo/inactivo) - Tipo (always_on / contextual) - Regras que fazem match no contexto actual 4. Mostrar tabela organizada ``` ## Protocolo: /plugin-config enable ``` 1. Activar plugin via jq em settings.json 2. Informar: "Plugin activado. Restart sessao para efeito." ``` ## Protocolo: /plugin-config disable ``` 1. Verificar que nao esta em always_on 2. Desactivar via jq em settings.json 3. Informar: "Plugin desactivado. Restart sessao para efeito." ``` ## Protocolo: /plugin-config reset ``` 1. Activar TODOS os plugins (contextual + always_on) em settings.json 2. Informar: "Todos os plugins activados." ``` --- ## Hook automatico `~/.claude/hooks/plugin-context-detector.sh` corre no inicio de cada sessao (UserPromptSubmit). Avalia todas as regras e sugere `/plugin-config apply` se detectar alteracoes necessarias. --- ## Anti-Patterns - NUNCA desactivar plugins always_on - NUNCA editar settings.json sem jq (Regra #40) - NUNCA prometer efeito imediato — restart e necessario - NUNCA ignorar sugestao do hook — executar /plugin-config apply --- *Skill v3.0.0 | 04-03-2026 | Descomplicar*