---
name: agent-context-injector
description: Injecção dinâmica de contexto específico para cada agente — MCPs disponíveis, skills relevantes e datasets Dify.
user-invocable: false
allowed-tools: Read, Glob, Grep, ToolSearch
---

# Agent Context Injector

Injecção dinâmica de contexto específico para cada agente.

## Triggers

Esta skill é activada automaticamente via hook `SubagentStart` quando:
- Um subagente é iniciado via Task tool
- Contexto precisa ser enriquecido com recursos do agente

## Capabilities

### 1. Context Building
- Consultar mapeamento agente → recursos na BD
- Gerar lista de MCPs disponíveis para o agente
- Gerar lista de skills relevantes
- Incluir datasets Dify para consulta automática

### 2. Token Optimization
- Calcular tokens do contexto gerado
- Priorizar recursos por relevância
- Truncar se exceder limite (~800 tokens)
- Cache de contextos frequentes

### 3. Dynamic Injection
- Adicionar contexto ao prompt do agente
- Incluir instruções de uso dos recursos
- Configurar auto-consult para datasets

## Template de Contexto

```markdown
## Recursos Disponíveis

### MCPs Activos
$MCP_LIST
- Usar proactivamente para operações relevantes

### Skills Recomendadas
$SKILLS_LIST
- Invocar quando tarefa corresponder

### Knowledge Base (Dify)
$DATASETS_LIST
- AUTO-CONSULT: Consultar ANTES de responder
- Query template: "$QUERY_TEMPLATE"

### Plugins
$PLUGINS_LIST
- Comandos disponíveis: $PLUGIN_COMMANDS
```

## Workflow

```
SUBAGENT START → QUERY BD → BUILD CONTEXT → INJECT → EXECUTE
```

1. **Hook SubagentStart** dispara
2. **Identificar agente** pelo `subagent_type`
3. **Query MySQL**:
   ```sql
   SELECT r.resource_type, r.resource_id, r.priority
   FROM cr_agent_resources r
   JOIN cr_agents a ON r.agent_id = a.id
   WHERE a.slug = '{agent_slug}'
   AND r.auto_inject = TRUE
   ORDER BY r.priority ASC;
   ```
4. **Consultar agent-knowledge-config.json** para datasets
5. **Gerar contexto** com template
6. **Calcular tokens** e optimizar se necessário
7. **Injectar** no prompt do agente

## Métricas Target

| Métrica | Target |
|---------|--------|
| Tempo de injecção | < 2s |
| Tokens médios | ~772 |
| Cache hit rate | > 60% |
| Erro rate | < 1% |

## Exemplo de Output

Para `wordpress-plugin-developer`:

```markdown
## Recursos Disponíveis

### MCPs Activos
- `cwp` - Gestão servidor CentOS WebPanel
- `ssh-unified` - Acesso SSH a servidores
- `filesystem` - Operações de ficheiros

### Skills Recomendadas
- `/wp-dev` - Desenvolvimento WordPress
- `/wp-performance` - Optimização performance
- `/elementor` - Desenvolvimento Elementor

### Knowledge Base (Dify)
- `wordpress-development` - Docs WP, hooks, filters
- `woocommerce-api` - API WooCommerce
- AUTO-CONSULT: Consultar ANTES de implementar

### Plugins
- `superpowers` - TDD obrigatório
- `code-review` - Review automático
```

## Configuração

Ficheiro `agent-knowledge-config.json`:
```json
{
  "wordpress-plugin-developer": {
    "datasets": ["wordpress-development", "woocommerce-api"],
    "auto_consult": true,
    "query_template": "WordPress {topic} best practices 2026",
    "priority_datasets": ["wordpress-development"]
  }
}
```

## Integração com Scripts Existentes

Este skill complementa (não substitui) os scripts Python existentes:
- `inject-mcp-context.py` - Continua activo
- `inject-skills-context.py` - Continua activo

A skill adiciona:
- Datasets Dify dinâmicos
- Plugins activos
- Contexto mais rico e actualizado

## Limites

- Máximo ~800 tokens de contexto injectado (para preservar espaço)
- Não modifica comportamento do agente, apenas enriquece contexto
- Depende de mapeamentos correctos em `cr_agent_resources`
- Cache de 5 minutos pode mostrar dados desactualizados
- Não funciona para agentes não registados na BD
