Mapa de configuração dos agentes

Mapa de Configuração — Todos os Agentes Luana (PROD)

Guia mestre pra configurar os 5 AI Agents no Respond.io. Use como checklist: cada coluna = um campo do form do agent.


1. Visão geral dos 5 agentes

Agent Instâncias Trigger (Workflow) Modelo KBs Tools
Recepcionista 1 só (multi-canal via kb-instrucoes) Mensagem nova SEM agendamento ativo GPT-4o-mini Dinâmica por canal (10+ KBs) 6 tools
Pré-Consulta 1 Tag id:agendamento-pendente GPT-4o-mini 6 KBs 2 tools
Pós-Consulta NPS 1 Tag id:avaliacao-pos-consulta GPT-4o-mini 0 KBs 0 tools
Financeiro 1 Keyword "NF/nota" OU id:dados-pendentes-nf GPT-4o-mini 4 KBs 1 tool
Laudo 1 Keyword "laudo/resultado" OU id:laudo-disponivel GPT-4o-mini 3 KBs 1 tool

Total: 5 agents, não 1 por estado. A Recepcionista se adapta automaticamente porque o kb-instrucoes recebe o channel_id (Minas=489695, SP=480178, Campinas, Sorocaba, JF, ES, Recife, Salvador, Maceió, Maringá) e devolve prompt + saudação + KBs específicas daquela cidade.


2. Recepcionista — diferenças por canal (estado)

A Recepcionista é 1 agente no Respond.io. O que muda é a edge function kb-instrucoes que injeta dinamicamente:

Bloco do prompt Origem
Saudação inicial unidades.cidade.nome + cidades_vinculadas (banco)
Lista de unidades atendidas unidades filtrado por channel_id
Cidades próximas (raio 60km) cidades_proximas_unidade (SP/MG)
Endereço, telefone, estacionamento, sábado respond-io-contexto-unidade (tool)
KBs anexadas Sempre todas: anti-padroes, fluxos-novos, fluxos-casos, fora-escopo, fechamento-cadencia, preparos, reagendamento, tags-saida + a regional (MG ou SP_INTERIOR)
KB regional KB_MINAS_GERAIS para canal Minas, KB_SAO_PAULO_INTERIOR para SP/Campinas/Sorocaba/JF/ES/Recife/Salvador/Maceió/Maringá

Conclusão: você NÃO precisa criar 9 agentes. Cria 1 Recepcionista e o backend faz o trabalho pesado.

⚠️ Falta documentar: as KBs específicas de ES, Recife, Salvador, Maceió, Maringá ainda não existem como .md separadas — elas herdam SP_INTERIOR. Se houver regras locais (endereços, horários especiais), me avisa pra criar KB_ESPIRITO_SANTO.md etc.


3. Mapa de KBs (URLs canônicas)

Base: https://dsubsrhcpbegrkmobbya.supabase.co/functions/v1/kb-respondio-html/<slug>

Slug Conteúdo Usado por
minas-gerais Unidades + serviços + regras MG Recepcionista (canal MG)
sao-paulo-interior Unidades + regras SP/Campinas/etc Recepcionista (canais SP+)
anti-padroes O que NÃO fazer Todos
fluxos-novos Cadência operacional Recepcionista, Pré
fluxos-casos Cenários edge Recepcionista
fora-escopo Quando recusar Todos
fechamento-cadencia Quando fechar conversa Todos
tags-saida Catálogo oficial de tags Todos
preparos Preparo por exame Recepcionista, Pré
reagendamento Política reagendar Pré, Recepcionista
laudos Política laudos Laudo, Pré
nota-fiscal Política NF Financeiro
reembolso Política reembolso Financeiro
enmg-1-membro Caso especial Recepcionista
excecoes-operacionais Exceções por unidade Recepcionista

Ver lista completa em runtime: abra https://dsubsrhcpbegrkmobbya.supabase.co/functions/v1/kb-respondio-html/ (página índice).


4. Mapa de Tools HTTP

Base: https://dsubsrhcpbegrkmobbya.supabase.co/functions/v1/<nome>

Tool Método Body Usado por Status
respond-io-contexto-unidade POST {unidade_id} Recepcionista ✅ existe
respond-io-horarios POST {unidade_id, servico_nome, data} Recepcionista ✅ existe
respond-io-criar-agendamento POST {...} Recepcionista ✅ existe
respond-io-buscar-paciente POST {telefone} Todos ✅ existe
respond-io-consultar-meu-agendamento POST {telefone} Pré ✅ existe
respond-io-confirmar-agendamento POST {agendamento_id} Pré ✅ existe
respond-io-consultar-nf POST {telefone} ou {cpf} Financeiro falta criar
respond-io-consultar-laudo POST {telefone} ou {cpf} Laudo falta criar

Headers padrão em todas:

Content-Type: application/json
apikey: <SUPABASE_ANON_KEY>

5. Catálogo oficial de TAGS

Tags com prefixo id: (disparam workflow)

Tag Quando Quem dispara
id:agendamento-pendente 24h antes da consulta Cron
id:agendamento-confirmado-respond Após confirmação na API Tool Pré
id:avaliacao-pos-consulta 2h após status=compareceu Cron
id:dados-pendentes-nf Paciente pagou sem NF Sistema/Financeiro
id:laudo-disponivel Laudo liberado no portal Sistema
id:cobranca-pendente Pagamento em atraso Cron

Tags de status (informativas)

Confirmado, Cancelado, SemResposta, JaConfirmado, NpsEnviado, NfEntregue, LaudoEntregue, LaudoEmAnalise

Tags de handoff (encaminhamento)

PedidoHumano, AgendamentoParaHumano, Financeiro, Medico, Laudo, Reembolso, Reclamacao

Tags de mídia

AudioRecebido, AnexoRecebido

Tag especial Respond.io

!Finalizarconversa → força status CLOSED imediato


6. Critérios de fechamento padrão (todos agents)

Fechar (!Finalizarconversa) quando:

  1. Objetivo do agent cumprido (confirmou, mandou link, etc.)
  2. 90 min sem resposta do paciente
  3. Paciente envia mensagem de despedida ("obrigado", "tchau", "valeu")
  4. Erro irrecuperável → encaminhou pra humano

NÃO fechar (deixar PENDING para humano) quando:

  1. Tag PedidoHumano adicionada sem !Finalizarconversa
  2. Paciente pediu reagendar/falar com alguém
  3. Áudio/anexo recebido

7. Critérios de mudança de ciclo de vida

NEW → OPEN: bot ou humano assume
OPEN → PENDING: tag PedidoHumano (sem !Finalizarconversa)
OPEN → CLOSED: !Finalizarconversa
PENDING → OPEN: humano responde
PENDING → CLOSED: humano marca resolvido
CLOSED → NEW: paciente envia nova mensagem (reabertura)

Janela de reabertura: 24h (configurável no Respond.io Settings → Conversations).


8. Critérios de encaminhamento (handoff matrix)

Situação Tag(s) Vai pra
Quer reagendar AgendamentoParaHumano Time agendamento
Pergunta sobre laudo (no recep/pré) PedidoHumano + Laudo Equipe laudos
Pergunta sobre NF (no recep/pré) PedidoHumano + Financeiro Financeiro
Reembolso PedidoHumano + Reembolso Financeiro
Pergunta clínica PedidoHumano + Medico Médico/enfermagem
Reclamação PedidoHumano + Reclamacao Supervisão
Áudio AudioRecebido + PedidoHumano Atendente geral
Palavra "humano" PedidoHumano Atendente geral

No Workflow do Respond.io, configure route by tag para mandar pra time certo.


9. Modelo de Workflow no Respond.io (visual)

[ Trigger: Nova mensagem ]
        ↓
[ Condição: tem agendamento ativo? ]
   ├── Sim → [ AI Agent: Pré-Consulta ]
   └── Não → [ Condição: keyword? ]
              ├── "laudo/resultado" → [ AI Agent: Laudo ]
              ├── "NF/nota/boleto" → [ AI Agent: Financeiro ]
              └── outro → [ AI Agent: Recepcionista ]

[ Trigger: Tag id:avaliacao-pos-consulta ]
        ↓
[ AI Agent: Pós-Consulta NPS ]

10. Checklist de configuração no Respond.io

Pra cada um dos 5 agentes, preencha:

Depois, no Workflow Builder:


11. O que ainda falta implementar (do meu lado)

  1. ❌ Edge function respond-io-consultar-nf (Financeiro depende)
  2. ❌ Edge function respond-io-consultar-laudo (Laudo depende)
  3. ❌ Cron que adiciona id:avaliacao-pos-consulta 2h após compareceu (se ainda não existe)
  4. ❌ Cron que adiciona id:agendamento-pendente 24h antes (validar se já roda)
  5. ❌ KBs regionais separadas para ES, Recife, Salvador, Maceió, Maringá (se houver regras locais)

Me confirma quais quer que eu implemente primeiro.