Files
claude-plugins/crm-ops/skills/ticket-manage/SKILL.md
T

5.0 KiB
Raw Blame History

name, description, disable-model-invocation, layer
name description disable-model-invocation layer
ticket-manage Gestão completa do ciclo de vida de tickets D2 Suporte: criar com campos correctos, atribuir por prioridade e SLA, escalar quando SLA em risco, fechar com checklist obrigatória. Baseado em PROC-D2-SUP-001 (Atendimento), SUP-002 (Ticketing Workflow) e SUP-003 (SLA Management). Usar para: gestão ticket, SLA check, escalar suporte, fechar ticket, atribuir prioridade. true wiki

/ticket-manage v1.0 — Gestão Integrada de Suporte D2

Workflow completo de gestão de tickets segundo os PROCs D2 Suporte (SUP-001/002/003). Complementa /ticket (operações básicas) com gestão de SLA, checklist e escalação automática.


Comandos

Comando Função
/ticket-manage Dashboard SLA + tickets em risco
/ticket-manage new Criar ticket com campos correctos
/ticket-manage assign <id> Atribuir por prioridade e SLA
/ticket-manage sla Ver estado SLA todos os tickets abertos
/ticket-manage escalate <id> Escalar com protocolo SUP-001
/ticket-manage close <id> Fechar com checklist obrigatória
/ticket-manage report Relatório semanal SLA (SUP-003)

Prioridades e SLAs (SUP-003)

Prioridade Código Primeira Resposta Resolução Escalação
Crítico P1 <1h <4h Imediata D7
Funcional P2 <2h <24h Após 12h sem resolução
Dúvida P3 <4h <48h Após 24h sem resolução
Melhoria P4 <24h Próximo sprint N/A

Mapping Desk CRM:

Desk Priority ID Correspondência
4 — Urgente P1 Crítico
3 — Alta P2 Funcional
2 — Normal P3 Dúvida
1 — Baixa P4 Melhoria

/ticket-manage — Dashboard SLA

1. mcp__desk-crm-v3__get_tickets({ status: [1,2,3] })
2. Para cada ticket:
   a. Calcular tempo decorrido desde criação/última resposta
   b. Comparar com SLA da prioridade
   c. Classificar: OK / EM RISCO (<25% SLA restante) / VIOLADO (SLA excedido)
3. Mostrar dashboard agrupado por estado SLA

Output:

## 🎫 Dashboard Suporte — [DATA]

### 🔴 SLA Violado (N)
| # | Prioridade | Cliente | Assunto | Há | SLA |
|---|-----------|---------|---------|-----|-----|
| #234 | P1 Crítico | ClienteA | Downtime servidor | 6h | <4h ❌ |

### 🟠 Em Risco (<25% restante)
| # | Prioridade | Cliente | Assunto | Há | Restante |
|---|-----------|---------|---------|-----|---------|
| #236 | P2 Funcional | ClienteB | Erro login | 20h | 4h ⚠️ |

### 🟢 Dentro do SLA
| # | Prioridade | Cliente | Assunto | Há |
|---|-----------|---------|---------|-----|
| #238 | P3 Dúvida | ClienteC | Como configurar X | 2h |

---
**Resumo:** X violados | Y em risco | Z OK | Total: W tickets abertos

/ticket-manage new — Criar Ticket Correcto

1. Recolher campos obrigatórios:
   - Cliente: pesquisar mcp__desk-crm-v3__get_customers({ search: nome }) OU perguntar ID
   - Assunto: descrever o problema
   - Descrição completa
   - Prioridade: perguntar (P1/P2/P3/P4) ou sugerir baseado no assunto
   - Departamento: 1=Suporte Técnico, 2=Vendas, 3=Facturação, 4=Geral
   - Origem: Desk CRM, email, WhatsApp

2. Confirmar antes de criar:
   "Criar ticket P[X] para [Cliente] — [Assunto]? [Sim/Cancelar]"

3. mcp__desk-crm-v3__create_ticket({
     client_id: id,
     department_id: dept_id,
     priority: priority_id,  // 4=Urgente, 3=Alta, 2=Normal, 1=Baixa
     subject: assunto,
     message: "<p>[descrição detalhada]</p><p><strong>Origem:</strong> [origem]</p>"
   })

4. Enviar confirmação de recepção ao cliente (se externo):
   - P1/P2: "Prioridade máxima. Analisando agora. Actualização em 30min/2h."
   - P3: "Recebemos. Resposta em 4h."
   - P4: "Registado para próximo sprint."

5. Output: "Ticket #X criado [P1-Crítico] | SLA: 1h resposta / 4h resolução"

/ticket-manage assign <id> — Atribuir por Prioridade

1. mcp__desk-crm-v3__get_ticket({ ticket_id: id })
2. Determinar responsável baseado em categoria:
   - Técnico (WP, servidor, código) → D7 Tecnologia
   - Billing, factura → D3 / Emanuel
   - Comercial, proposta → D1
   - Geral → Support Specialist (staff_id: 25)
3. Se P1: notificar imediatamente (comentário interno + /task urgente)
4. Registar atribuição como comentário interno:
   mcp__desk-crm-v3__reply_ticket({
     ticket_id: id,
     message: "<p>Atribuído: [Responsável] | SLA: [prazo] | Prioridade: [P1-P4]</p>",
     internal: true
   })
5. Output: "Ticket #X atribuído a [Responsável] | SLA expira: [data/hora]"

/ticket-manage sla — Estado SLA Completo

1. Recolher todos tickets abertos (status 1, 2, 3)
2. Para cada ticket calcular:
   - tempo_decorrido = agora - created_at
   - sla_limite = por prioridade (1h/2h/4h/24h para primeira resposta)
   - percentagem_usada = tempo_decorrido / sla_limite × 100
3. Agrupar: VIOLADO (>100%), EM RISCO (75-100%), OK (<75%)
4. Highlight P1 e P2 c