Files
agent_contas/config/routing.yaml

395 lines
13 KiB
YAML

router:
mode: router
fallback_agent: faturas_agent
confidence_threshold: 0.7
allow_handoff: true
transaction_confirmation:
# Explicit yes/no stays deterministic. Only inconclusive replies use this LLM fallback.
semantic_fallback:
enabled: true
allowed_values: [SIM, NAO, CONTINUAR]
confirm_values: [SIM]
reject_values: [NAO]
continue_values: [CONTINUAR]
include_relevant_context: true
profile_name: router
prompt: |
Você classifica a resposta do cliente a uma confirmação transacional pendente.
Considere a pergunta pendente, somente o histórico recente relacionado ao mesmo tema e a fala atual.
Não execute a ação e não invente fatos.
Classes permitidas: {{ allowed_values }}
- SIM: confirmação/aceite inequívoco, inclusive equivalentes como "isso mesmo", "pode confirmar", "é isso" quando o contexto tornar o aceite claro.
- NAO: recusa/cancelamento inequívoco da ação pendente.
- CONTINUAR: qualquer resposta que não confirme nem rejeite inequivocamente, incluindo pergunta adicional, correção, novo dado, ambiguidade ou possível mudança de assunto.
Pergunta pendente:
{{ pending_prompt }}
Histórico relevante:
{{ relevant_conversation_context }}
Resposta atual do cliente:
{{ user_input }}
state_policies:
- state: WAITING_FATURAS_CONFIRMATION
agent: faturas_agent
- state: WAITING_VAS_CONFIRMATION
agent: vas_agent
- state: WAITING_CONTESTACAO_CONFIRMATION
agent: contestacao_agent
- state: WAITING_SUPORTE_CONTAS_CONFIRMATION
agent: suporte_contas_agent
- state: COLLECTING_FATURAS_PARAMETERS
agent: faturas_agent
- state: COLLECTING_VAS_PARAMETERS
agent: vas_agent
- state: COLLECTING_CONTESTACAO_PARAMETERS
agent: contestacao_agent
- state: COLLECTING_SUPORTE_CONTAS_PARAMETERS
agent: suporte_contas_agent
intents:
- name: contas_no_match
domain: telecom_contas
agent: suporte_contas_agent
priority: 200
description: Fala realmente incompreensível, sem conteúdo semântico recuperável ou transcrição corrompida. Use somente quando não for possível entender nenhuma solicitação. Não use para assunto fora de escopo, reclamação, pedido de humano, jurídico/Anatel/Procon ou frase compreensível que apenas não corresponda a outra intent.
mcp_tools: []
keywords: []
examples:
- "asdkj qweoi zxcm"
- "hã trrr blá qx"
- "[fala sem conteúdo inteligível]"
- name: contas_plan_information
domain: telecom_contas
agent: faturas_agent
priority: 142
description: Consulta do plano principal ou dos planos efetivamente contratados na linha, incluindo nome, identificação, valor e dados contratuais do plano atual. Use somente quando a pergunta exigir dados do cliente. Não use para perguntas gerais sobre funcionamento, tarifação, regras, condições ou características de um plano/produto, ainda que o usuário cite o nome de um plano específico.
mcp_tools:
- consultar_plano
keywords:
- qual é meu plano
- qual e meu plano
- qual é o meu plano
- qual e o meu plano
- meu plano contratado
- plano contratado
- nome do meu plano
- que plano eu tenho
- quais são meus planos
- quais sao meus planos
examples:
- Qual é meu plano?
- Qual é o meu plano contratado?
- Que plano eu tenho?
- Qual o nome do meu plano?
- Quais são os planos da minha linha?
- Quanto custa o meu plano atual?
- name: contas_invoice_query
domain: telecom_contas
agent: faturas_agent
priority: 140
description: Consulta, visualização, obtenção ou segunda via de fatura/conta sem
pedido de explicação de cobrança.
mcp_tools:
- consultar_faturas
keywords:
- quero minha fatura
- ver minha fatura
- consultar fatura
- consultar minha fatura
- mostrar minha fatura
- me mostra minha fatura
- segunda via
- segunda via da fatura
- obter fatura
- baixar fatura
- minhas faturas
- fatura atual
- última fatura
- ultima fatura
- fatura em aberto
- conta em aberto
examples:
- Quero minha fatura
- Quero ver a minha conta
- Pode consultar minha fatura atual?
- Preciso da segunda via da fatura
- Tenho alguma fatura em aberto?
- name: contas_invoice_explanation
domain: telecom_contas
agent: faturas_agent
priority: 150
description: Explicação, composição, diferença, aumento, variação, dúvida ou não reconhecimento informativo de valores/itens de uma fatura já conhecida. Use esta intent quando o cliente estiver tentando entender uma cobrança ou disser que não reconhece itens/valores, mas ainda não pedir explicitamente contestação, cancelamento, estorno, ajuste ou retirada.
mcp_tools:
- invoice_explanation
keywords:
- explicar fatura
- explique minha fatura
- entender minha fatura
- entender minha conta
- fatura veio alta
- conta veio alta
- veio mais cara
- conta subiu
- minha conta subiu
- fatura subiu
- minha fatura subiu
- conta aumentou
- minha conta aumentou
- fatura aumentou
- minha fatura aumentou
- valor aumentou
- diferença de valor
- divergência na fatura
- divergencia na fatura
- não entendi a cobrança
- nao entendi a cobranca
- por que cobraram
- por que veio esse valor
- composição da fatura
- composicao da fatura
- detalhar cobrança
- detalhar cobranca
- não estou reconhecendo
- nao estou reconhecendo
- não reconheço esses itens
- nao reconheco esses itens
- itens que não reconheço
- itens que nao reconheco
- cobranças que não reconheço
- cobrancas que nao reconheco
examples:
- Contratamos um plano, mas eu não estou reconhecendo esses itens eventuais.
- Tem cobranças que eu não reconheço e quero entender de onde vieram.
- Minha fatura veio mais alta e quero entender o que mudou.
- Quero entender minha conta
- Por que esse valor mudou?
- Explique essas cobranças da minha fatura
- Por que minha conta aumentou este mês?
- name: contas_contestation
domain: telecom_contas
agent: contestacao_agent
priority: 120
description: Pedido transacional de contestação, estorno, ajuste, retirada ou correção de uma cobrança. Na primeira fala de não reconhecimento sem alvo concreto, use contas_invoice_explanation. Porém, numa reentrada contextual após a explicação, se o pedido original era não reconhecimento e o cliente identificar inequivocamente a cobrança/item/valor que continua questionando, trate a solicitação como contestação daquele alvo; a execução continua sujeita a validação e confirmação transacional.
mcp_tools:
- consultar_faturas
- invoice_explanation
- contestar_cobranca
keywords:
- quero contestar
- quero contestação
- quero contestacao
- contestar essa cobrança
- contestar essa cobranca
- abrir contestação
- abrir contestacao
- quero estorno
- pedir estorno
- quero ajuste na fatura
- ajustar essa cobrança
- ajustar essa cobranca
- retirar essa cobrança
- retirar essa cobranca
- tirar essa cobrança
- tirar essa cobranca
examples:
- "Contexto anterior: cliente não reconhece uma cobrança; após a explicação identifica 'é a de quatorze e noventa e nove'."
- "Após a explicação da fatura, o cliente identifica pelo nome ou valor qual cobrança continua não reconhecendo."
- Quero contestar essa cobrança
- Quero abrir uma contestação para esse valor
- Quero um estorno dessa cobrança
- Não reconheço essa cobrança e quero contestar
- Esse valor está errado e quero um ajuste na fatura
- name: contas_vas_cancel
domain: telecom_contas
agent: contestacao_agent
priority: 145
description: Cancelamento ou retirada explicitamente solicitada de serviço/VAS. Não use para simples alegação de contratação ou cobrança não reconhecida sem pedido de ação; nesses casos use contas_invoice_explanation.
mcp_tools:
- consultar_vas
- cancelar_vas_avulso
keywords:
- cancelar serviço
- cancelar servico
- cancelar assinatura
- retirar serviço
- retirar servico
- desativar serviço
- desativar servico
- tirar esse vas
examples:
- Quero cancelar esse serviço
- Quero retirar essa assinatura
- name: contas_vas_strategic
domain: telecom_contas
agent: contestacao_agent
priority: 125
description: Tratamento de serviço estratégico, parceiro ou benefício incluso com
fluxo específico.
mcp_tools:
- consultar_vas
- tratar_vas_estrategico
keywords:
- apple music
- deezer
- disney
- disney+
- netflix
- youtube premium
- globoplay
- amazon prime
- prime video
- serviço estratégico
- servico estrategico
- benefício incluso
- beneficio incluso
examples:
- Não reconheço o Netflix
- Quero tratar esse serviço estratégico
- Meu plano inclui Deezer?
- name: contas_vas_information
domain: telecom_contas
agent: vas_agent
priority: 110
description: Consulta ou explicação de VAS, serviço adicional, assinatura, aplicativo,
parceiro, bundle ou benefício adicional. Não use esta intent para perguntas sobre
nome, identificação ou valor do plano principal/plano contratado da linha.
mcp_tools:
- consultar_vas
# - buscar_informacao
keywords:
- vas
- serviço adicional
- servico adicional
- aplicativo
- assinatura
- serviços ativos
- servicos ativos
- quais são meus serviços
- quais sao meus servicos
- meus serviços
- meus servicos
- benefício
- beneficio
- incluso no plano
- pacote digital
- parceiro
examples:
- O que é esse serviço?
- Quais VAS estão ativos?
- Esse aplicativo está incluso?
- Quais serviços adicionais eu tenho?
- name: contas_vas_history
domain: telecom_contas
agent: vas_agent
priority: 105
description: Consulta de histórico de VAS/serviços que já estiveram ativos ou sofreram
alterações.
mcp_tools:
- consultar_historico_vas
keywords:
- histórico de vas
- historico de vas
- histórico de serviços
- historico de servicos
- serviços anteriores
- servicos anteriores
- já tive esse serviço
- ja tive esse servico
examples:
- Quero ver meu histórico de serviços
- Eu já tive esse VAS antes?
- name: contas_knowledge
domain: telecom_contas
agent: suporte_contas_agent
priority: 120
description: Perguntas gerais, conceituais, explicativas ou de procedimento sobre funcionamento, tarifação, regras, condições e características de planos, produtos, faturas e serviços que não exigem consultar dados específicos do cliente. Use esta intent quando o usuário perguntar como um plano/produto funciona, mesmo citando seu nome. Não use para descobrir qual plano está contratado na linha nem para consultar valor/dados contratuais do plano atual.
mcp_tools: []
keywords:
- o que é
- o que significa
- como funciona
- como é a tarifação
- como funciona a tarifação
- tarifação do plano
- tarifacao do plano
- qual a regra
- quais são as regras
- quais sao as regras
- como faço
- onde encontro
- informação sobre
- informacao sobre
examples:
- Como funciona o Infinity Pós?
- Como funciona a tarifação do Infinity Pós?
- Quais são as regras do Infinity Pós?
- O que significa cobrança proporcional?
- Como funciona o vencimento da fatura?
- name: contas_service_status
domain: telecom_contas
agent: suporte_contas_agent
priority: 90
description: Consulta de status, andamento, protocolo ou acompanhamento de solicitação
já aberta.
mcp_tools:
- consultar_status_solicitacao
keywords:
- protocolo
- status da solicitação
- status da solicitacao
- andamento
- acompanhamento
- acompanhar solicitação
- acompanhar solicitacao
- pedido em andamento
examples:
- Qual o status da minha solicitação?
- Quero acompanhar o protocolo
- name: contas_pro_rata
domain: telecom_contas
agent: faturas_agent
priority: 128
description: Cobrança proporcional/pró-rata decorrente de troca de plano.
mcp_tools:
- pro_rata
keywords:
- pró-rata
- pro rata
- pro-rata
- cobrança proporcional
- cobranca proporcional
- troca de plano
examples:
- Por que veio cobrança proporcional?
- Troquei de plano e vieram duas cobranças
- name: contas_termino_desconto
domain: telecom_contas
agent: faturas_agent
priority: 127
description: Término de desconto ou promoção refletido na fatura.
mcp_tools:
- termino_desconto
keywords:
- término de desconto
- termino de desconto
- desconto acabou
- fim do desconto
examples:
- Meu desconto acabou?
- name: contas_valor_divergente
domain: telecom_contas
agent: faturas_agent
priority: 126
description: Capability de valor divergente.
mcp_tools:
- valor_divergente
keywords:
- valor divergente
- divergência de valor
- divergencia de valor
examples:
- Tem um valor divergente na minha conta