feat: adiciona 12 plugins Descomplicar ao marketplace
Plugins: automacao, crm-ops, design-media, dev-tools, gestao, infraestrutura, marketing, negocio, perfex-dev, project-manager, wordpress + hello-plugin (existente). Totais: 83 skills, 44 agents, 12 datasets.json Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
305
crm-ops/skills/crm/SKILL.md
Normal file
305
crm-ops/skills/crm/SKILL.md
Normal file
@@ -0,0 +1,305 @@
|
||||
---
|
||||
name: crm
|
||||
description: >
|
||||
Operações CRM unificadas v2.0. Consolida crm-ops + crm-admin. Leads, customers, proposals, estimates, visão 360.
|
||||
Use when "crm", "lead", "cliente", "customer", "orçamento", "proposta", "estimate", "360".
|
||||
author: Descomplicar® Crescimento Digital
|
||||
version: 2.0.0
|
||||
quality_score: 85
|
||||
user_invocable: true
|
||||
category: business
|
||||
tags: [crm, leads, customers, proposals, estimates, 360, sales]
|
||||
desk_task: 1468
|
||||
desk_project: 65
|
||||
allowed-tools: Read, mcp__desk-crm-v3
|
||||
mcps: desk-crm-v3
|
||||
anti_patterns:
|
||||
- "NUNCA criar lead/customer sem verificar duplicados"
|
||||
- "NUNCA criar customer automaticamente para estimate"
|
||||
- "NUNCA fechar tarefa sem autorização"
|
||||
---
|
||||
|
||||
# /crm v2.0 - Operações CRM Unificadas
|
||||
|
||||
Consolida /crm-ops + /crm-admin numa única skill com subcomandos.
|
||||
|
||||
---
|
||||
|
||||
## Comandos
|
||||
|
||||
| Comando | Função |
|
||||
|---------|--------|
|
||||
| `/crm` | Resumo: leads recentes, clientes activos |
|
||||
| `/crm lead <nome>` | Pesquisar/criar lead |
|
||||
| `/crm customer <nome>` | Pesquisar/ver cliente |
|
||||
| `/crm convert <lead_id>` | Converter lead → customer |
|
||||
| `/crm proposal <lead_id>` | Criar proposta para lead |
|
||||
| `/crm estimate <client_id>` | Criar estimate para cliente |
|
||||
| `/crm 360 <cliente>` | Visão completa do cliente |
|
||||
|
||||
---
|
||||
|
||||
## Definições Críticas
|
||||
|
||||
### Lead vs Customer
|
||||
|
||||
| Aspecto | LEAD | CUSTOMER |
|
||||
|---------|------|----------|
|
||||
| O que é | Prospect | Cliente activo |
|
||||
| Tabela | tblleads | tblclients + tblcontacts |
|
||||
| Recebe | Proposals | Estimates, Invoices |
|
||||
| Conversão | → Customer | Já é cliente |
|
||||
|
||||
**Regra:** Novos contactos são SEMPRE leads primeiro.
|
||||
|
||||
### Proposal vs Estimate
|
||||
|
||||
| Aspecto | PROPOSAL | ESTIMATE |
|
||||
|---------|----------|----------|
|
||||
| Para quem | LEADS | CUSTOMERS |
|
||||
| Termo PT | Orçamento/Proposta | Estimativa formal |
|
||||
| Converte | Lead→Customer | → Invoice |
|
||||
|
||||
**Regra:** "Orçamento" para lead = PROPOSAL
|
||||
|
||||
---
|
||||
|
||||
## Protocolo
|
||||
|
||||
### /crm (Resumo)
|
||||
|
||||
```
|
||||
1. mcp__desk-crm-v3__get_leads({ limit: 5, sort: "-dateadded" })
|
||||
2. mcp__desk-crm-v3__get_tasks({ status: [1,4], limit: 5 })
|
||||
3. Mostrar resumo
|
||||
```
|
||||
|
||||
**Output:**
|
||||
|
||||
```markdown
|
||||
## 📊 CRM Resumo
|
||||
|
||||
### 🎯 Leads Recentes (5)
|
||||
| Nome | Empresa | Valor | Status |
|
||||
|------|---------|-------|--------|
|
||||
| João Silva | TechCorp | €5.000 | Novo |
|
||||
| Maria Costa | StartupX | €3.500 | Contactado |
|
||||
|
||||
### 📋 Tarefas Pendentes (3)
|
||||
- #1450 [Alta] Follow-up TechCorp
|
||||
- #1448 [Normal] Proposta StartupX
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### /crm lead <nome>
|
||||
|
||||
**Workflow Anti-Duplicados (OBRIGATÓRIO):**
|
||||
|
||||
```
|
||||
1. Pesquisar em leads:
|
||||
mcp__desk-crm-v3__get_leads({ search: nome })
|
||||
2. Pesquisar em customers:
|
||||
mcp__desk-crm-v3__search_customers({ query: nome })
|
||||
3. SE encontrar:
|
||||
- Mostrar resultados
|
||||
- "Encontrei X. É este ou criar novo?"
|
||||
4. SE não encontrar:
|
||||
- "Não encontrei [nome]. Criar lead?"
|
||||
- AGUARDAR confirmação
|
||||
5. SÓ após confirmação:
|
||||
mcp__desk-crm-v3__create_lead({
|
||||
name: nome,
|
||||
email: email,
|
||||
company: empresa,
|
||||
source: 1,
|
||||
assigned: 1
|
||||
})
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### /crm customer <nome>
|
||||
|
||||
```
|
||||
1. mcp__desk-crm-v3__search_customers({ query: nome })
|
||||
2. Se encontrar: Mostrar detalhes
|
||||
3. Se não encontrar: "Não encontrado. Existe lead para converter?"
|
||||
```
|
||||
|
||||
**Nunca criar customer automaticamente!**
|
||||
|
||||
---
|
||||
|
||||
### /crm convert <lead_id>
|
||||
|
||||
```
|
||||
1. mcp__desk-crm-v3__get_lead({ lead_id })
|
||||
2. Mostrar dados do lead
|
||||
3. "Converter lead #X para cliente?"
|
||||
4. Após confirmação:
|
||||
mcp__desk-crm-v3__convert_lead_to_customer({ lead_id })
|
||||
5. Retornar ID do novo cliente
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### /crm proposal <lead_id>
|
||||
|
||||
```
|
||||
1. Verificar que é lead (não customer)
|
||||
2. Perguntar detalhes:
|
||||
- Assunto
|
||||
- Itens (descrição, qtd, valor)
|
||||
3. mcp__desk-crm-v3__create_proposal({
|
||||
lead_id: lead_id,
|
||||
subject: assunto,
|
||||
status: 1
|
||||
})
|
||||
4. mcp__desk-crm-v3__add_proposal_items({
|
||||
proposal_id: id,
|
||||
items: [...]
|
||||
})
|
||||
5. "Proposta #X criada. Enviar? [Sim/Não]"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### /crm estimate <client_id>
|
||||
|
||||
```
|
||||
1. Verificar que é customer (não lead)
|
||||
2. mcp__desk-crm-v3__get_customer({ customer_id: client_id })
|
||||
3. Perguntar detalhes
|
||||
4. mcp__desk-crm-v3__create_estimate({
|
||||
client_id: client_id,
|
||||
items: [...],
|
||||
status: 1
|
||||
})
|
||||
5. "Estimate #X criado. Enviar? [Sim/Não]"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### /crm 360 <cliente>
|
||||
|
||||
```
|
||||
1. mcp__desk-crm-v3__search_customers({ query: cliente })
|
||||
2. mcp__desk-crm-v3__get_customer({ customer_id })
|
||||
3. mcp__desk-crm-v3__get_projects({ client_id })
|
||||
4. mcp__desk-crm-v3__get_invoices({ client_id })
|
||||
5. mcp__desk-crm-v3__get_tickets({ client_id })
|
||||
6. mcp__desk-crm-v3__get_customer_notes({ customer_id })
|
||||
7. Compilar visão 360
|
||||
```
|
||||
|
||||
**Output:**
|
||||
|
||||
```markdown
|
||||
## 👤 Cliente: XYZ Lda (#45)
|
||||
|
||||
### Dados
|
||||
- **Email:** contacto@xyz.pt
|
||||
- **Telefone:** +351 912 345 678
|
||||
- **NIF:** 123456789
|
||||
- **Desde:** Janeiro 2024
|
||||
|
||||
### 📁 Projectos (3)
|
||||
| Nome | Status | Progresso |
|
||||
|------|--------|-----------|
|
||||
| Website Corporativo | Em Curso | 75% |
|
||||
| Manutenção Anual | Rotina | - |
|
||||
| App Mobile | Concluído | 100% |
|
||||
|
||||
### 💰 Financeiro
|
||||
| Métrica | Valor |
|
||||
|---------|-------|
|
||||
| Total facturado | €15.000 |
|
||||
| Pagamentos | €12.000 |
|
||||
| Em aberto | €3.000 |
|
||||
|
||||
### 🎫 Suporte
|
||||
- Tickets abertos: 1
|
||||
- Tickets total (12m): 8
|
||||
- Tempo resposta médio: 4h
|
||||
|
||||
### 📝 Notas Recentes
|
||||
- [2026-02-01] Reunião marcada para dia 10
|
||||
- [2026-01-15] Preferem comunicação por email
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Status Codes
|
||||
|
||||
### Leads
|
||||
| ID | Status |
|
||||
|----|--------|
|
||||
| 1 | Novo |
|
||||
| 2 | Contactado |
|
||||
| 3 | Qualificado |
|
||||
| 4 | Proposta |
|
||||
| 5 | Ganho (→ Customer) |
|
||||
| 6 | Perdido |
|
||||
|
||||
### Estimates
|
||||
| ID | Status |
|
||||
|----|--------|
|
||||
| 1 | Rascunho |
|
||||
| 2 | Enviado |
|
||||
| 3 | Visto |
|
||||
| 4 | Aceite |
|
||||
| 5 | Recusado |
|
||||
|
||||
### Proposals
|
||||
| ID | Status |
|
||||
|----|--------|
|
||||
| 1 | Draft |
|
||||
| 2 | Sent |
|
||||
| 3 | Open |
|
||||
| 6 | Accepted |
|
||||
|
||||
---
|
||||
|
||||
## Staff IDs
|
||||
|
||||
| ID | Nome | Usar |
|
||||
|----|------|------|
|
||||
| 25 | AikTop | **Default** - automático |
|
||||
| 1 | Emanuel | Comunicação cliente |
|
||||
|
||||
---
|
||||
|
||||
## Anti-Patterns (NUNCA)
|
||||
|
||||
1. **NUNCA** criar lead sem verificar duplicados
|
||||
2. **NUNCA** criar customer sem confirmação explícita
|
||||
3. **NUNCA** criar customer automaticamente para estimate
|
||||
4. **NUNCA** usar estimate para leads (usar proposal)
|
||||
5. **NUNCA** converter estimate não-aceite para invoice
|
||||
|
||||
---
|
||||
|
||||
## Migração
|
||||
|
||||
Skills descontinuadas:
|
||||
- `/crm-ops` → migrar para `/crm`
|
||||
- `/crm-admin` → comandos admin em `/crm`
|
||||
|
||||
---
|
||||
|
||||
## Changelog
|
||||
|
||||
### v2.0.0 (2026-02-05)
|
||||
- Consolidar crm-ops + crm-admin
|
||||
- Novo comando /crm 360 para visão cliente
|
||||
- Todos os subcomandos unificados
|
||||
- Anti-duplicados reforçado
|
||||
|
||||
### v1.2.0 (crm-ops)
|
||||
- Distinção Lead vs Customer
|
||||
- Proposal vs Estimate
|
||||
|
||||
---
|
||||
|
||||
*Skill v2.0.0 | 2026-02-05 | Descomplicar®*
|
||||
Reference in New Issue
Block a user