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
