# /today v11.0 - Checkup Diario (Orquestrador)

Executa o checkup diario lendo logs locais dos agentes + recolhe dados frescos.

> NOTA CRITICA: CT 102 abatido em 20-04-2026. Os agentes cron correm como systemd user timers
> no desktop. NUNCA usar ssh_execute(server="dev"). Ler logs locais via tail/journalctl.

## Passo 1: Verificar data e ultima execucao

```
mcp__mcp-time__current_time → data, dia da semana
mcp__memory-supabase__search_memories("today checkup YYYY-MM-DD")
Se ja existe hoje → perguntar se quer re-executar
```

## Passo 2: Fase 1 - Ler logs locais dos agentes (silencioso)

Base: /media/ealmeida/Dados/Dev/claude_automations_dev/

```bash
# IMAP Triage
tail -20 /media/ealmeida/Dados/Dev/claude_automations_dev/imap-triage/imap-triage.log
cat ~/.claude-work/today-imap-$(date +%d-%m-%Y).json 2>/dev/null

# Ticket Triage
tail -30 /media/ealmeida/Dados/Dev/claude_automations_dev/ticket-triage/ticket-triage.log 2>/dev/null

# Auto-Expense
tail -20 /media/ealmeida/Dados/Dev/claude_automations_dev/auto-expense/auto-expense.log 2>/dev/null

# Infra Check
tail -30 /media/ealmeida/Dados/Dev/claude_automations_dev/infra-check/infra-check.log 2>/dev/null

# AikTop Tasks
tail -20 /media/ealmeida/Dados/Dev/claude_automations_dev/aiktop-tasks/aiktop-tasks.log 2>/dev/null

# WP Update (apenas se segunda-feira)
tail -50 /media/ealmeida/Dados/Dev/claude_automations_dev/wp-update/wp-update.log 2>/dev/null

# Intelligence pipeline (status)
tail -15 /media/ealmeida/Dados/Dev/claude_automations_dev/daily-selector/daily-selector.log 2>/dev/null
tail -10 /media/ealmeida/Dados/Dev/claude_automations_dev/intelligence-publisher/intelligence-publisher.log 2>/dev/null
```

Verificar estado systemd para confirmar ultima execucao:
```bash
journalctl --user -u imap-triage.service -u ticket-triage.service -u auto-expense.service \
  -u infra-check.service -u aiktop-tasks.service --since "8 hours ago" \
  --no-pager -n 5 --output=short-precise
```

Para cada agente: verificar se correu nas ultimas 8h (infra: 24h), detectar erros.
Adicionar alertas criticos a "Requer Atencao Urgente".

## Passo 3: Fase 2 - Recolha de dados frescos (silencioso)

Invocar em paralelo:
1. `/daily-digest` → timer, tickets, facturas, leads, propostas, agenda
2. `/tasks-overview` → tarefas overdue/pendentes/em curso + workflows sugeridos

Verificar `~/Transferencias` — se >10 ficheiros, invocar `/cleanup-downloads`.

## Passo 4: Fase 2b - Specs e Sprints activos (silencioso)

```bash
find /media/ealmeida/Dados/Dev -name "SPEC.md" -maxdepth 4 2>/dev/null
find /media/ealmeida/Dados/Dev -name "SPRINT.md" -maxdepth 4 2>/dev/null
```

Para cada encontrado: ler frontmatter (primeiras 15 linhas), filtrar status != "completed"/"archived".
Extrair: titulo, status, progresso done/total.

## Passo 5: Rotinas especiais por dia

- Segunda: planeamento semanal (tarefas + capacidade)
- Sexta: sugerir manutencao semanal

## Passo 6: Dashboard final + guardar

Agregar todos os resultados e mostrar dashboard (formato no SKILL.md).

Criar nota Obsidian:
- Path: `/media/ealmeida/Dados/Hub/00-Inbox/DD-MM-YYYY-checkup.md` (formato DD-MM-YYYY)
- Frontmatter: title, date, type: checkup, status: active

Guardar em Supabase:
```
mcp__memory-supabase__save_memory({
  content: "Checkup diario DD-MM-YYYY - X tickets, Y tarefas, cron OK/FALHA",
  tags: ["today", "checkup", "DD-MM-YYYY"]
})
```
