iachat/config/agents/tools.yml
Rodribm10 cfffea9c16 feat(captain): semantic memory fixes + roleta + reclamações + analytics
Consolida o trabalho desta branch de abril/2026 em um bloco pronto pra
testar em staging antes do merge pra main.

## Correções de memória semântica
- ExtractionService: Princípio Zero + Regra de Ouro (ação consumada vs intenção).
- Cenário Daniela_Reservas: Passo 0 de classificação (consulta/intenção/fora).

## Roleta da Sorte (end-to-end)
- Schema Supabase + 7 RPCs atômicas (server-side, idempotentes).
- Services: Offer, Redeem, WeeklyReport.
- Jobs: OfferRouletteJob (hook em ConfirmationService após Pix pago),
  NotifyRevealed + Scheduler de fallback.
- Tool manual GenerateRoletaLinkTool + endpoint público /roleta/notify.
- Dashboard /captain/roleta com Resgate + Relatório + anomaly detection.

## Cenário Reclamacoes_Ouvidoria
- Triagem P1-P4, framework LAST, Three-level listening, Self-check.
- Sem compensação material, detecção de cliente frustrado eleva prioridade.

## Analytics
- Funil de conversão /captain/funnel: 5 etapas via regex, zero LLM.
- Detector de churn via ChurnOutreach* (cron dias úteis 10h-17h BRT).

## Trabalho pré-existente incluído
- Captain Executive Reports (ceo_digest, mattermost_delivery).
- get_reserva_preco_tool, Lifecycle ajustes, Reservations UI polimentos.

## Outros
- .gitignore: patterns pra credenciais.
- Migrations de scenarios idempotentes.
- i18n completa pt_BR+en pra roleta/funnel.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 15:36:25 -03:00

72 lines
2.4 KiB
YAML

###### Captain Agent Tools Configuration #######
# id: Tool identifier used to resolve the class (Captain::Tools::{PascalCase(id)}Tool)
# title: Human-readable tool name for frontend display
# description: Brief description of what the tool does
# icon: Icon name for frontend display (frontend icon system)
#######################################################
- id: add_contact_note
title: 'Add Contact Note'
description: 'Add a note to a contact profile'
icon: 'note-add'
- id: add_private_note
title: 'Add Private Note'
description: 'Add a private note to a conversation (internal only)'
icon: 'eye-off'
- id: update_priority
title: 'Update Priority'
description: 'Update conversation priority level'
icon: 'exclamation-triangle'
- id: add_label_to_conversation
title: 'Add Label to Conversation'
description: 'Add a label to a conversation'
icon: 'tag'
- id: faq_lookup
title: 'FAQ Lookup'
description: 'Search FAQ responses using semantic similarity'
icon: 'search'
- id: handoff
title: 'Handoff to Human'
description: 'Hand off the conversation to a human agent'
icon: 'user-switch'
- id: generate_pix
title: 'Gerar Pix'
description: 'Gera uma cobrança Pix via Banco Inter para a reserva ativa da conversa'
icon: 'payment'
- id: check_pix_payment
title: 'Verificar Pagamento Pix'
description: 'Consulta no Banco Inter se a cobrança Pix já foi paga'
icon: 'check-circle'
- id: send_suite_images
title: 'Enviar Fotos de Suíte'
description: 'Envia fotos da galeria da unidade para o cliente, com filtros por categoria/suíte'
icon: 'image'
- id: create_reservation_intent
title: 'Criar Reserva'
description: 'Cria uma reserva draft quando o cliente confirmar suíte, preço e horário de chegada'
icon: 'calendar-add'
- id: generate_reservation_link
title: 'Gerar Link de Reserva'
description: 'Gera um link da pagina publica de reserva ja pre-preenchida, pronto para o cliente revisar e pagar'
icon: 'link'
- id: get_reserva_preco
title: 'Consultar Preco da Reserva'
description: 'Consulta o preco oficial de uma suite no banco de reservas (categoria + permanencia + periodo da semana)'
icon: 'currency-dollar'
- id: generate_roleta_link
title: 'Oferecer Roleta da Sorte'
description: 'Oferece ao cliente uma roleta de brindes apos a reserva ser fechada. Envia a mensagem de agradecimento + link automaticamente.'
icon: 'gift'