---
name: plugin-config
description: Gestão inteligente de plugins por contexto. Avalia regras aditivas e activa cada plugin relevante para o contexto actual (directório, ficheiros, conversa).
user-invocable: false
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 <plugin>` | Forca activacao de um plugin |
| `/plugin-config disable <plugin>` | 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 <plugin>

```
1. Activar plugin via jq em settings.json
2. Informar: "Plugin activado. Restart sessao para efeito."
```

## Protocolo: /plugin-config disable <plugin>

```
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*

---

## Healing Log

Registo de erros conhecidos e como evitá-los. Lido automaticamente antes de executar.

```jsonl
{"date":"","issue":"","fix":"","source":"user|auto"}
```

*Adicionar nova linha após cada erro corrigido.*
