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>
6.3 KiB
6.3 KiB
name, description, author, version, desk_task, allowed-tools
| name | description | author | version | desk_task | allowed-tools |
|---|---|---|---|---|---|
| relationship-manager | Gestão inteligente de relacionamentos entre componentes do sistema. Use when "relacionamentos", "mapeamento", "colaborações", "dependências", "agent-mcp", "agent-skill", "sdk", "impacto", "inconsistências". | Descomplicar® | 1.0.0 | 1441 | Read, Glob, Grep, ToolSearch |
Relationship Manager
Gestão inteligente de relacionamentos entre componentes do sistema.
Triggers
Esta skill deve ser activada quando:
- Utilizador pede para configurar relacionamentos
- Novo componente é adicionado e precisa de mapeamentos
- Inconsistências detectadas em relacionamentos
- Análise de impacto de mudanças
Schema de Relacionamentos
Hierarquia
TaskForce (Plugin)
├── cr_plugin_agents → Agentes do Plugin
├── cr_plugin_skills → Skills do Plugin
└── cr_plugin_mcps → MCPs do Plugin
Agent
├── cr_agent_mcps → MCPs do Agente (primary/recommended/available)
├── cr_agent_skills → Skills do Agente
└── cr_agent_collaborations → Colaborações com outros Agentes
Skill
└── cr_skill_mcps → MCPs necessários para a Skill
Decision Tree
└── Referencia um Agent para selecção automática
Tipos de Relacionamento
cr_agent_mcps.relationship_type:
primary- MCPs essenciais, sempre disponíveisrecommended- MCPs recomendados, usar quando relevanteavailable- MCPs opcionais, disponíveis se necessário
cr_agent_collaborations.collaboration_type:
technical- Colaboração técnica (mesmo domínio)cross-domain- Colaboração entre domínios diferentessequential- Um passa trabalho para outroparallel- Trabalham em paralelo
Capabilities
1. Análise de Relacionamentos
Ver todos os relacionamentos de um componente:
-- Para um Agente
SELECT 'MCP' as type, m.slug, am.relationship_type
FROM cr_agent_mcps am
JOIN cr_mcps m ON am.mcp_id = m.id
WHERE am.agent_id = (SELECT id FROM cr_agents WHERE slug = ?)
UNION ALL
SELECT 'Skill', s.slug, 'uses'
FROM cr_agent_skills ags
JOIN cr_skills s ON ags.skill_id = s.id
WHERE ags.agent_id = (SELECT id FROM cr_agents WHERE slug = ?)
UNION ALL
SELECT 'TaskForce', p.slug, 'member'
FROM cr_plugin_agents pa
JOIN cr_plugins p ON pa.plugin_id = p.id
WHERE pa.agent_id = (SELECT id FROM cr_agents WHERE slug = ?)
UNION ALL
SELECT 'Collaborator', a2.slug, ac.collaboration_type
FROM cr_agent_collaborations ac
JOIN cr_agents a2 ON ac.collaborator_id = a2.id
WHERE ac.agent_id = (SELECT id FROM cr_agents WHERE slug = ?);
2. Sugestão de Relacionamentos
Baseado em padrões existentes:
-- MCPs usados por agentes similares (mesma categoria)
SELECT
m.slug,
COUNT(*) as usage_count,
GROUP_CONCAT(DISTINCT a.slug) as used_by
FROM cr_agent_mcps am
JOIN cr_mcps m ON am.mcp_id = m.id
JOIN cr_agents a ON am.agent_id = a.id
WHERE a.category = (SELECT category FROM cr_agents WHERE slug = ?)
AND am.agent_id != (SELECT id FROM cr_agents WHERE slug = ?)
AND m.id NOT IN (
SELECT mcp_id FROM cr_agent_mcps
WHERE agent_id = (SELECT id FROM cr_agents WHERE slug = ?)
)
GROUP BY m.id
ORDER BY usage_count DESC
LIMIT 5;
3. Validação de Consistência
-- Verificar órfãos em todas as tabelas
SELECT 'cr_agent_mcps (agent)' as issue,
COUNT(*) as orphans
FROM cr_agent_mcps am
LEFT JOIN cr_agents a ON am.agent_id = a.id
WHERE a.id IS NULL
UNION ALL
SELECT 'cr_agent_mcps (mcp)',
COUNT(*)
FROM cr_agent_mcps am
LEFT JOIN cr_mcps m ON am.mcp_id = m.id
WHERE m.id IS NULL
-- ... continuar para todas as tabelas
4. Propagação de Mudanças
Quando um componente é removido/desactivado:
-- Marcar relacionamentos como inactivos (não deletar)
UPDATE cr_agent_mcps
SET status = 'inactive', updated_at = NOW()
WHERE agent_id = (SELECT id FROM cr_agents WHERE slug = ?);
-- Ou limpar (se preferido)
DELETE FROM cr_agent_mcps
WHERE agent_id = (SELECT id FROM cr_agents WHERE slug = ?);
5. Análise de Impacto
Antes de remover um componente, verificar dependências:
-- Impacto de remover um MCP
SELECT
'Agents afectados' as impact,
COUNT(DISTINCT am.agent_id) as count,
GROUP_CONCAT(DISTINCT a.slug) as list
FROM cr_agent_mcps am
JOIN cr_agents a ON am.agent_id = a.id
WHERE am.mcp_id = (SELECT id FROM cr_mcps WHERE slug = ?)
AND am.relationship_type = 'primary'
UNION ALL
SELECT
'Skills afectadas',
COUNT(DISTINCT sm.skill_id),
GROUP_CONCAT(DISTINCT s.slug)
FROM cr_skill_mcps sm
JOIN cr_skills s ON sm.skill_id = s.id
WHERE sm.mcp_id = (SELECT id FROM cr_mcps WHERE slug = ?);
Workflows
Adicionar Novo Agente
- Inserir em
cr_agents - Mapear MCPs em
cr_agent_mcps:- Identificar MCPs primários (essenciais)
- Identificar MCPs recomendados (úteis)
- Listar MCPs disponíveis (opcionais)
- Mapear Skills em
cr_agent_skills - Associar a TaskForces em
cr_plugin_agents - Definir colaborações em
cr_agent_collaborations - Criar decision tree se necessário
Remover Componente
- Verificar impacto com análise de dependências
- Confirmar com utilizador
- Remover relacionamentos (ou marcar inactive)
- Actualizar decision trees
- Log em telemetria
Métricas
| Métrica | Descrição |
|---|---|
| Densidade | Média de relacionamentos por componente |
| Cobertura | % de componentes com relacionamentos |
| Consistência | % de relacionamentos válidos |
| Conectividade | Componentes isolados vs conectados |
Exemplo de Uso
User: Configura o novo agente video-editor com os MCPs necessários
Relationship Manager:
1. [Analisa agentes similares na categoria 'content']
2. [Identifica MCPs comuns: filesystem, google-workspace, elevenlabs]
3. [Sugere relacionamentos:]
- PRIMARY: filesystem, elevenlabs
- RECOMMENDED: google-workspace, pexels, pixabay
- AVAILABLE: vimeo, youtube-uploader
4. [Cria mapeamentos em cr_agent_mcps]
5. [Sugere colaborações: content-manager, copywriter]
6. [Reporta: "Agente video-editor configurado com 7 MCPs e 2 colaborações"]
Limites
- Não cria componentes novos (apenas relacionamentos)
- Sugestões baseadas em padrões podem não ser 100% precisas
- Análise de impacto limitada a relacionamentos directos
- Não propaga alterações automaticamente (requer confirmação)
- Depende de consistência das tabelas cr_* na BD