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>
11 KiB
11 KiB
/today - Checkup Diário
Executa o checkup diário completo seguindo estes passos:
Passo 1: Verificar Última Execução
Usar mcp__memory-supabase__search_memories com query "today checkup YYYY-MM-DD"
Se já existe entrada de hoje → perguntar se quer executar novamente
Passo 2: Recolher Dados do DeskCRM
2.1 Tickets
mcp__desk-crm-v3__get_tickets:
- date_from: ontem (YYYY-MM-DD)
- status: 1 (Aberto) ou 2 (Em Progresso)
- limit: 50
Identificar:
- Tickets urgentes (priority: 3 ou 4)
- Tickets de clientes importantes
2.2 Tickets SPAM → FECHAR AUTOMATICAMENTE
⚡ ACÇÃO AUTOMÁTICA - Fechar SEM intervenção manual
Padrões de SPAM:
- "Guest Post", "SEO services", "backlinks", "partnership"
- "link building", "dofollow", "collaboration opportunity"
- "Boas Festas", "Season's Greetings", "Termos de Serviço"
- Remetentes: noreply@*, no-reply@* (se não for serviço conhecido)
Se SPAM detectado → FECHAR IMEDIATAMENTE:
mcp__desk-crm-v3__close_ticket:
- ticket_id: {ID}
- message: "Fechado automaticamente - SPAM"
Registar no relatório: "🗑️ SPAM fechado: #{ID} - {Assunto}"
2.3 Tickets para ELIMINAR (notificações sem valor)
Verificar se assunto contém:
- "Your Elastic Email Account was successfully re-charged"
- "Account re-charged"
- "Auto-recharge successful"
- "Credit added to your account"
- "[BOT] Ativação realizada com sucesso"
- "[BOT] Activation successful"
Se SIM → Eliminar:
mcp__desk-crm-v3__delete_ticket:
- ticket_id: {ID}
- confirm: true
- reason: "Notificação automática sem valor contabilístico"
2.3 Processamento Automático: Tickets de PAGAMENTOS
Para cada ticket aberto, verificar se assunto contém:
- "payment", "pagamento", "pago", "paid"
- "invoice", "factura", "fatura", "recibo"
- "successfully processed", "confirmado"
- "subscription", "renewed", "renewal"
- "account funded", "has been funded"
- "Envio de Fatura Eletrónica"
Se SIM → Verificar remetente:
A) Remetente CONHECIDO (lista abaixo):
⚡ ACÇÃO AUTOMÁTICA - Executar SEM intervenção manual:
1. Mover para Contabilidade:
mcp__desk-crm-v3__update_ticket({ ticket_id: ID, department_id: 3 })
2. FECHAR o ticket:
mcp__desk-crm-v3__close_ticket({ ticket_id: ID, message: "Fatura processada - Contabilidade" })
3. Registar: "💰 Contabilidade + Fechado: #{ID} - {Assunto}"
B) Remetente DESCONHECIDO:
→ Avaliar indicadores de spam/phishing
→ LISTAR no relatório para revisão manual
Indicadores de SPAM:
- Remetente pessoal (gmail/hotmail) + factura empresarial
- Erros ortográficos, MAIÚSCULAS, urgência exagerada
- Domínio suspeito (muitos números, extensões estranhas)
- Sem número de factura/referência
Output no relatório:
- [SPAM?] #ID - Assunto - remetente@suspeito.com
- [NOVO?] #ID - Assunto - remetente@empresa.com (possível novo serviço)
[!warning] NUNCA eliminar automaticamente remetentes desconhecidos Podem ser novos serviços. Sempre pedir confirmação manual.
Remetentes CONHECIDOS (whitelist):
Domínios confiáveis:
- @elasticemail.com
- @hetzner.com, @hetzner.de
- @centos-webpanel.com, @control-webpanel.com
- @canva.com
- @meo.pt, @altice.pt, @documentos.meoempresas.pt
- @cloudflare.com
- @github.com
- @google.com
- @microsoft.com
- @adobe.com
- @figma.com
- @notion.so
- @openai.com, @email.openai.com
- @anthropic.com
- @openrouter.zendesk.com
- @stripe.com
- @paypal.com
- @wise.com
- @revolut.com
- @bancobpi.pt
Ver lista completa de remetentes e indicadores: config/email-triage-rules.md
2.2 Projectos com Deadline
mcp__desk-crm-v3__get_projects:
- status: 2 (Em Progresso)
- Filtrar: deadline esta semana
2.3 Tarefas Pendentes (OBRIGATÓRIO - sempre incluir)
# Buscar TODAS as tarefas pendentes
mcp__desk-crm-v3__get_tasks({ status: 1, limit: 50 }) # Não iniciadas
mcp__desk-crm-v3__get_tasks({ status: 4, limit: 50 }) # Em curso
mcp__desk-crm-v3__get_tasks({ status: 2, limit: 50 }) # Aguarda feedback
mcp__desk-crm-v3__get_tasks({ overdue_only: true }) # Vencidas
# Organizar por:
# 1. Prioridade (4=Urgente, 3=Alta, 2=Normal, 1=Baixa)
# 2. Deadline (vencidas primeiro)
# 3. Projecto (agrupar)
# Formato output:
### 🔴 URGENTES (Prioridade 4)
| ID | Tarefa | Projecto | Deadline | Tempo Est. |
|----|--------|----------|----------|------------|
### 🟠 ALTA (Prioridade 3)
...
2.4 Verificar Estimativas de Tempo
Para cada tarefa importante, verificar se tem estimativa:
mcp__desk-crm-v3__get_task_time_estimates({ task_id: X })
Se não tem → sugerir definir:
mcp__desk-crm-v3__set_task_estimated_time({
task_id: X,
estimated_hours: Y,
estimated_minutes: Z,
notes: "Estimativa"
})
Passo 3: Gestão de Emails (MCP IMAP)
3.1 Listar contas disponíveis
imap_list_accounts
# Verificar que todas as 12 contas estão acessíveis
3.2 Para CADA conta, processar emails
Contas: emanuel, it, help, suporte, contabilidade, financeiro,
info, rh, mkt, design, news, aiktop
Para cada conta:
1. imap_list_emails(account, folder="INBOX", limit=50)
2. Classificar cada email:
SPAM (eliminar):
- Subject contém: "lottery", "winner", "urgent money"
- Remetente em blacklist conhecida
- Caracteres estranhos no subject
→ imap_delete_email(account, uid)
PROMOCIONAL (arquivar):
- Subject contém: "newsletter", "promo", "desconto", "oferta"
- Remetente: *@marketing.*, *@news.*, *@promo.*
- Headers: List-Unsubscribe presente
→ imap_move_email(account, uid, "Promotions")
FACTURA PAGA (reencaminhar):
- Subject contém: "factura", "invoice", "recibo", "pagamento"
- Subject contém: "pago", "paid", "confirmado"
- Anexos PDF com padrão de factura
→ Registar para reencaminhar para contabilidade@descomplicar.pt
PRIORITÁRIO (listar):
- Remetente: cliente conhecido (verificar DeskCRM)
- Subject contém: "urgente", "urgent", "problema", "erro"
- Resposta a thread existente
→ Incluir no relatório diário
3.3 Resumo de acções
Contabilizar:
- X emails eliminados (spam)
- Y emails arquivados (promocionais)
- Z facturas para contabilidade
- W emails prioritários pendentes
Passo 4: Calendário (opcional)
# Se MCP Google Calendar disponível:
# google_calendar_list_events(date=today)
# Por agora: Verificar agenda manualmente
Passo 5: Gerar Relatório
Formatar output seguindo template:
## 📅 Checkup Diário - YYYY-MM-DD (Dia da Semana)
### 🎫 Tickets (X abertos, Y urgentes)
[Lista de tickets urgentes com [!]]
[Lista de tickets abertos]
### 📧 Emails Prioritários
[Quando disponível]
### 📆 Agenda de Hoje
[Quando disponível]
### 🎯 Prioridades Sugeridas
1. [Baseado em urgência e deadlines]
2. [...]
3. [...]
### ⏰ Deadlines Esta Semana
[Lista de projectos/tarefas com deadline]
Passo 6: SEGUNDA-FEIRA - Planeamento Semanal
Verificar dia da semana
Se SEGUNDA-FEIRA:
1. RECOLHER TAREFAS DA SEMANA INTEIRA
- Todas as tarefas pendentes (status 1, 2, 4)
- Todas as tarefas vencidas
- Filtrar: deadline até domingo
- Incluir estimativas de tempo
2. RECOLHER CALENDÁRIO DA SEMANA
mcp__google-workspace__get_events({
user_google_email: "emanuelalmeidaa@gmail.com",
time_min: "YYYY-MM-DD" (hoje),
time_max: "YYYY-MM-DD" (domingo),
max_results: 50
})
3. VERIFICAR ESTIMATIVAS DE TEMPO
Para tarefas sem estimativa:
- Sugerir tempo baseado no tipo
- PERGUNTAR ao utilizador se correcto
- Definir via set_task_estimated_time
4. PEDIR INDICAÇÕES AO UTILIZADOR
Usar AskUserQuestion:
- Disponibilidade semanal (horas)
- Horários preferidos para foco
- Prioridades especiais
- Compromissos pessoais
- Tarefas para delegar
5. DISTRIBUIR TAREFAS PELA AGENDA
- Calcular capacidade vs carga
- Distribuir por dia/horário
- Criar eventos no calendário (opcional)
- Alertar se capacidade excedida
6. OUTPUT: Planeamento Semanal
- Tabela por dia com tarefas
- Total horas por dia
- Alertas de capacidade
- Lista de delegações
Passo 7: Manutenção WordPress (se Sexta-feira)
Verificar dia da semana
Se sexta-feira:
- Listar os 10 sites da rede
- Sugerir executar manutenção
- Oferecer checkup de segurança
Passo 8: Resumo de Pendentes (do CRM)
📊 RESUMO - Mostrar no relatório
Os pendentes são obtidos directamente do Desk CRM (já recolhidos no Passo 2).
NÃO há documento PENDENTES separado - os dados ficam no relatório diário.
### CATEGORIZAÇÃO
Com base nos dados já recolhidos:
- 🔴 Urgentes: priority = 4
- 🟠 Alta Prioridade: priority = 3
- 🟡 Vencidas: overdue_only = true
- 🟢 Esta Semana: deadline dentro de 7 dias
- 🎫 Tickets: status 1, 2
- 👤 Leads: status 7, 14 (Novos)
- 📝 Propostas: status 4 (Para Fazer)
### FORMATO NO RELATÓRIO
| Categoria | Qtd |
|----|----:|
| 🔴 Urgentes | X |
| 🟠 Alta Prioridade | X |
| 🟡 Vencidas | X |
| 🎫 Tickets Abertos | X |
| 👤 Leads Novos | X |
### LINKS CRM
| Tipo | Formato Link |
|------|--------------|
| Tarefa | [#ID](https://desk.descomplicar.pt/admin/tasks/view/ID) |
| Ticket | [#ID](https://desk.descomplicar.pt/admin/tickets/ticket/ID) |
| Lead | [LID](https://desk.descomplicar.pt/admin/leads/index/ID) |
Passo 9: Criar Nota Diária no Obsidian
Criar ficheiro no vault Planeamento:
- Path: /media/ealmeida/Dados/GDrive/Cloud/EAL/Planeamento/00-Inbox/
- Filename: YYYY-MM-DD-checkup.md
- Content: Relatório com dados recolhidos
Template:
---
title: Checkup YYYY-MM-DD
date: YYYY-MM-DD
type: checkup
status: active
---
## Checkup Diário - YYYY-MM-DD
[Conteúdo do relatório]
⚡ LINKS CRM: Todas as tarefas com link directo
- Formato: [#ID](https://desk.descomplicar.pt/admin/tasks/view/ID)
Se segunda-feira:
- Incluir secção "Planeamento Semanal"
- Tabela com distribuição de tarefas por dia
Passo 10: Guardar em Supabase
mcp__memory-supabase__save_memory:
- content: "Checkup diário executado - X tickets, Y tarefas, Z urgentes"
- tags: ["today", "checkup", "YYYY-MM-DD"]
- summary: "Checkup diário YYYY-MM-DD"
- metadata: {
tickets_count: X,
tasks_count: Y,
urgent_count: Z,
is_monday: true/false,
weekly_hours_planned: H
}
Passo 11: Resumo Final
Apresentar:
- Métricas do dia
- Top 3 prioridades recomendadas
- Alertas importantes
- Próximos passos sugeridos
Se segunda-feira, adicionar:
- Resumo do planeamento semanal
- Capacidade vs carga
- Tarefas delegadas
- Alertas de sobrecarga