1. Propósito e Escopo
Este documento define todos os prompts, configurações de memória, transição entre estados, ferramentas como chamadas a sistemas externos e demais requisitos funcionais para o Agente de IA de Gestão de Calendário de Estágios. Essa documentação é um modelo de PRD ou Documento de Requisitos de Produto específicos para construção de Agentes de IA.
O objetivo principal é automatizar a organização e atualização do calendário de estágios, garantindo que todos os envolvidos estejam cientes de prazos e eventos importantes, reduzindo drasticamente o trabalho manual e evitando conflitos de agendamento.
2. Contexto e Problema
Cenário Atual
A gestão de calendários de estágio enfrenta desafios significativos, tais como:
- Dificuldade em gerenciar e manter atualizado um calendário de estágios com todos os eventos e prazos relevantes.
- Garantir que todos os envolvidos estejam cientes de prazos e eventos importantes.
Atualmente, o processo de atualização do calendário é manual, o que resulta em atrasos, conflitos de agendamento e falta de comunicação eficaz entre os envolvidos.
Problemas Identificados
- Consumo de tempo: A atualização manual do calendário consome tempo valioso que poderia ser usado em atividades mais estratégicas.
- Falta de comunicação: A ausência de notificações automáticas leva à falta de conhecimento sobre prazos e eventos importantes.
- Conflitos de agendamento: A falta de integração com outras ferramentas de calendário pode resultar em sobreposição de eventos.
3. Impactos Esperados
A implementação deste agente de IA visa alcançar os seguintes resultados:
- Automatizar a organização e atualização do calendário de estágios, economizando tempo e recursos.
- Garantir comunicação eficaz entre todos os envolvidos por meio de notificações automáticas.
- Reduzir conflitos de agendamento através da integração com ferramentas de calendário externas.
4. Visão Geral da Solução
O agente de IA para gestão de calendário de estágios automatiza a organização e atualização de eventos, enviando notificações e lembretes automáticos para todos os envolvidos e integrando-se com outras ferramentas de calendário para sincronizar eventos e prazos. A seguir são detalhadas todas as regras de negócio e especificações funcionais necessárias para que esse agente atue como um assistente útil e autônomo na gestão de calendários de estágios.
A solução consiste em um fluxo de automação composto por 3 agentes de IA. O processo inicia com a normalização e planejamento do calendário e termina com a geração de notificações e lembretes para todos os envolvidos.
A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.
| Agentes | Função Principal |
|---|---|
Agente de Normalização e Planejamento do Calendário de Estágios (RF 1)
| Validar e normalizar os dados de eventos/prazos de estágio, planejar ações de sincronização e definir lembretes e notificações. |
Agente de Execução de Chamada à API (RF 2)
| Realizar chamada à API do Sistema Google Calendar para obter e sincronizar eventos de estágio. |
Agente de Geração de Notificações e Lembretes (RF 3)
| Produzir o pacote final de notificações e lembretes para todos os envolvidos com base no resultado da sincronização. |
5. Protótipos
Para proporcionar uma visão clara e tangível da solução proposta, criamos protótipos interativos que demonstram tanto o fluxo de trabalho dos agentes quanto o resultado final que o cliente receberá. Explore os links abaixo para entender melhor a solução em ação.
6. Requisitos Funcionais
RF 1. Agente de Normalização e Planejamento do Calendário de Estágios
1.1 Tarefa do Agente
Validar e normalizar os dados de eventos/prazos de estágio, planejar ações de sincronização e definir lembretes e notificações.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um JSON com a lista de eventos de estágio e preferências de sincronização.
# 2. Objetivo
Validar e normalizar os dados de eventos/prazos de estágio, planejar ações de sincronização e definir lembretes e notificações.
# 3. Regras que você deve seguir para gerar sua resposta
- Converter todas as datas para ISO 8601 e unificar fuso_horario; se ausente, assumir timezone do calendário_destino ou 'America/Sao_Paulo'.
- Deduplicar eventos por prioridade: usar 'id' se fornecido; se não, deduzir hash por (titulo, data_inicio, data_fim, organizador, curso/empresa).
- Recorrência: mapear regras simples (semanal, quinzenal, mensal) para RRULE canônico (freq, interval, byday).
- Definir janela_consulta_existentes: inicio = menor(data_inicio) - 7 dias; fim = maior(data_fim) + 7 dias entre eventos_normalizados.
- Para cada evento, decidir ação: criar se não houver id conhecido; atualizar se id presente; cancelar se status=cancelado explicitamente.
- Incluir relatorio_conflitos.itens com {evento_principal, evento_conflitante, motivo, gravidade, sugestoes_reagendamento[]}.
- Construir notificacoes_planejadas preliminares por evento e por papel: organizador, orientador, estagiário, coordenacao. 1.3 Configurações do Agente
1.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente é o ponto de partida do fluxo e deve ser acionado pelo envio de um JSON com a lista de eventos de estágio e preferências de sincronização via API. Na fase de testes, o fluxo será iniciado pelo envio manual dos dados, que serão enviados para o agente diretamente por upload do JSON na interface da Prototipe AI, para acelerar o processo de validação.
- Tipo do input: O input inicial para o fluxo é um JSON com eventos de estágio e preferências de sincronização.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 50.000 caracteres.
1.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON estruturado contendo: eventos_normalizados, janela_consulta_existentes, plano_sincronizacao, politicas_lembretes, notificacoes_planejadas, relatorio_conflitos, e metadados.
-
Exemplo de Estrutura de Output:
{ "eventos_normalizados": [...], "janela_consulta_existentes": {"inicio": "2025-11-28T00:00:00Z", "fim": "2025-12-12T23:59:59Z"}, "plano_sincronizacao": {...}, "politicas_lembretes": {...}, "notificacoes_planejadas": [...], "relatorio_conflitos": [...], "metadados": {...} } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 5.000 caracteres, variando conforme o número de eventos e complexidade das regras aplicadas.
1.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
1.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
1.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
- Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o Agente de Execução de Chamada à API (RF 2).
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Execução de Chamada à API (RF 2).
RF 2. Agente de Execução de Chamada à API
2.1 Tarefa do Agente
Realizar chamada à API do Sistema Google Calendar para obter e sincronizar eventos de estágio.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo um payload pronto para a execução, contendo a janela de consulta de eventos existentes e o plano de sincronização. # 2. Objetivo Realizar chamada à API do Sistema Google Calendar para obter e sincronizar eventos de estágio. # 3. Regras que você deve seguir para gerar sua resposta - Invoque a ferramenta `google_calendar_sync` passando o payload completo como argumento. - A ferramenta retornará dados recuperados e resultados de execução. - Seu output final deve conter os dados recuperados e os resultados de execução, sem nenhum texto ou formatação adicional. - Em caso de falha na chamada da API, o processo deve ser interrompido e o erro registrado para análise manual.
2.3 Configurações do Agente
2.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 1).
- Tipo do input: Este agente deve ser apto a receber como input um payload JSON com a janela de consulta de eventos existentes e o plano de sincronização.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 10.000 caracteres.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON contendo os dados recuperados e os resultados de execução, com campos como existentes, resultados_execucao, houve_alteracoes, e execucao_api_sucesso.
-
Exemplo de Estrutura de Output:
{ "existentes": [...], "resultados_execucao": [...], "houve_alteracoes": true, "execucao_api_sucesso": true } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 3.000 caracteres.
2.3.3 Parâmetros de Geração
- Modelo: Não se aplica (uso de ferramenta)
2.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: O agente deverá enviar o JSON recebido para a API externa (`google_calendar_sync`) e retornar os dados recebidos como resposta.
2.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções não são visíveis para agentes subsequentes.
- Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o Agente de Geração de Notificações e Lembretes (RF 3).
2.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Geração de Notificações e Lembretes (RF 3).
RF 3. Agente de Geração de Notificações e Lembretes
3.1 Tarefa do Agente
Produzir o pacote final de notificações e lembretes para todos os envolvidos com base no resultado da sincronização.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo o resultado da execução da API, incluindo notificações planejadas preliminares e políticas de lembretes.
# 2. Objetivo
Produzir o pacote final de notificações e lembretes para todos os envolvidos com base no resultado da sincronização.
# 3. Regras que você deve seguir para gerar sua resposta
- Só gerar notificacoes_finais se execucao_api_sucesso=true E houve_alteracoes=true. Caso contrário, retornar listas vazias e resumo com total=0.
- Compilar destinatarios por evento a partir dos participantes válidos.
- Assunto padrão: '[Estágios] {tipo}: {titulo} - {data_local}'.
- Corpo deve conter: resumo do evento, data/hora com timezone, local/meet, ações (confirmar presença quando aplicável).
- Para prazos_entrega: criar disparos em T-7d, T-3d, T-24h, T-2h.
- Vincular cada notificação a um resultados_execucao que tenha status_http 2xx. 3.3 Configurações do Agente
3.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 2).
- Tipo do input: Este agente deve ser apto a receber como input o resultado da execução da API, incluindo notificações planejadas preliminares e políticas de lembretes.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 10.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com notificacoes_finais, agenda_de_lembretes e resumo_notificacoes.
-
Exemplo de Estrutura de Output:
{ "notificacoes_finais": [...], "agenda_de_lembretes": [...], "resumo_notificacoes": {"total": 0, "por_tipo": {...}} } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 4.000 caracteres.
3.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
3.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não utiliza.
3.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções não são visíveis para agentes subsequentes.
- Visibilidade da Resposta: A resposta (JSON com notificações e lembretes) é o entregável final e não é passada para outros agentes internos.
3.3.6 Regras de Orquestração e Transição
A execução deste agente finaliza o fluxo. As notificações e lembretes gerados são o resultado que deve ser disponibilizado aos usuários.