1. Propósito e Escopo
Este documento define todos os prompts, configurações de memória, transição entre estados e demais requisitos funcionais para o Fluxo de Agentes "Acompanhamento de Progresso de Estágio", uma solução de automação projetada para monitorar o progresso dos estagiários, consolidar relatórios de atividades e identificar áreas de melhoria ou intervenção necessária. 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 é transformar o input de atividades diárias dos estagiários em relatórios gerenciais que facilitem a supervisão e a intervenção proativa, quando necessário.
2. Contexto e Problema
Cenário Atual
Atualmente, as empresas enfrentam dificuldades em monitorar o progresso diário dos estagiários e suas atividades, o que resulta em uma falta de visibilidade sobre o desempenho e desafios enfrentados. Além disso, há uma dificuldade em identificar rapidamente áreas que necessitam de intervenção ou suporte adicional.
Problemas Identificados
- Falta de visibilidade: Não há um sistema eficaz para monitorar o progresso diário dos estagiários, o que dificulta a supervisão e a intervenção proativa.
- Dificuldade de intervenção: A identificação de áreas que necessitam de suporte adicional ou intervenção é lenta e muitas vezes reativa.
3. Impactos Esperados
A implementação deste fluxo de automação visa alcançar os seguintes resultados:
- Aumentar a visibilidade do progresso dos estagiários, permitindo uma supervisão mais eficaz.
- Facilitar a identificação de áreas que necessitam de intervenção ou suporte adicional.
- Prover relatórios gerenciais que consolidem informações de progresso e desafios enfrentados pelos estagiários.
4. Visão Geral da Solução
O agente de IA para acompanhamento de progresso de estágio monitora as atividades diárias dos estagiários, consolida relatórios de progresso e identifica áreas que necessitam de intervenção. 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 estágios.
A solução consiste em um fluxo de automação composto por 3 agentes de IA. O processo inicia com a padronização e validação dos dados de entrada dos estagiários e termina com a geração de alertas e recomendações para os supervisores.
A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.
| Agentes | Função Principal |
|---|---|
Agente de Padronização e Validação de Entradas (RF 1)
| Receber relatórios diários de atividades dos estagiários e produzir um dataset padronizado e validado. |
Agente de Consolidação e KPIs Diários (RF 2)
| Consolidar as entradas padronizadas por estagiário e calcular indicadores operacionais. |
Agente de Detecção de Riscos e Recomendações (RF 3)
| Identificar estagiários que necessitam de intervenção e sugerir ações para o supervisor. |
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 supervisor receberá. Explore os links abaixo para entender melhor a solução em ação.
6. Requisitos Funcionais
RF 1. Agente de Padronização e Validação de Entradas
1.1 Tarefa do Agente
Receber relatórios diários de atividades dos estagiários em formatos variados e produzir um dataset único padronizado, validado e deduplicado para análise.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo relatórios diários de atividades dos estagiários em formatos variados. Este texto é o registro bruto das atividades diárias dos estagiários. # 2. Objetivo Padronizar e validar as entradas dos relatórios diários, consolidando-as em um dataset único para análise. # 3. Regras que você deve seguir para gerar sua resposta - Padronize datas para ISO-8601 (yyyy-mm-dd); se vier data e hora, mantenha apenas a data. Se ausente, marque em flags.campos_ausentes e não infira. - Normalize progresso: converta textos para percentual: 'iniciado'->10, 'em andamento'->50, 'quase pronto'->80, 'concluído'->100; números fora de 0-100 devem ser truncados ao limite. - Horas: aceite números com vírgula/ponto; valores negativos viram 0; acima de 24 viram 24; se ausente, defina 0 e registre campos_ausentes. - Atividades: se vier campo único textual, separe por delimitadores (;, •, quebra de linha). Para cada item, defina status por prefixos/palavras-chave: [done|concluído]->concluida; [doing|em andamento]->em_andamento; [todo|pendente]->pendente; caso não identificado, defina desconhecido. - Desafios: mapeie para taxonomia canônica: 'bloqueio_externo', 'dificuldade_tecnica', 'dependencia_aprovacao', 'falta_requisito', 'ambiguidade_escopo', 'falta_acesso', 'tempo_insuficiente', 'outros'. Use correspondências por palavras-chave; não crie novas categorias. - Evidências: valide URLs com http/https; itens não-URL vão para observacoes. - Humor: mapeie escalas textuais para enum: muito_bom, bom, neutro, ruim, muito_ruim. Ausente->neutro. - Deduplicação: se (estagiario_id, data, titulo_atividade normalizado) repetirem, mantenha a entrada mais completa (maior qualidade_dado, mais campos preenchidos). - Qualidade de dado: calcule como proporção de campos críticos presentes e válidos: estagiario_id, data, ao menos 1 atividade, horas, progresso_percentual. Escore = (validos/5) arredondado a 2 casas. - Flags.needs_followup = true quando: qualidade_dado < 0.6 OU existirem inconsistencias (horas=0 e progresso>=50; progresso=100 e status da atividade != concluida; desafio contém 'falta_acesso' sem evidencia).
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 relatórios diários de atividades dos estagiários 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 dos relatórios na interface da Prototipe AI, para acelerar o processo de validação.
- Tipo do input: O input inicial para o fluxo é uma lista de registros de atividades por estagiário no dia, em texto livre ou JSON heterogêneo.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs nos formatos:
.json,.txt. - 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 padronizado com array entries[]. Cada entry deve ter: estagiario_id (string), data (ISO-8601, yyyy-mm-dd), atividades (array de objetos {titulo, tipo, status}), horas (float, 0 a 24), progresso_percentual (int 0-100), desafios (array categorizada), evidencias (array de URLs/ids), humor (enum: muito_bom|bom|neutro|ruim|muito_ruim), observacoes (string), flags {campos_ausentes[], inconsistencias[], duplicado (bool), needs_followup (bool)}, qualidade_dado (float 0-1).
-
Exemplo de Estrutura de Output:
{ "entries": [ { "estagiario_id": "123", "data": "2025-12-19", "atividades": [ { "titulo": "Reunião inicial", "tipo": "concluida", "status": "concluida" } ], "horas": 3.5, "progresso_percentual": 80, "desafios": ["dificuldade_tecnica"], "evidencias": ["http://exemplo.com/evidencia1"], "humor": "bom", "observacoes": "Nenhuma", "flags": { "campos_ausentes": [], "inconsistencias": [], "duplicado": false, "needs_followup": false }, "qualidade_dado": 0.9 } ] } - Número de caracteres esperado: O JSON final deve ser claro e direto, com um tamanho estimado em 5.000 caracteres, podendo variar conforme o número de entradas processadas.
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 Consolidação e KPIs Diários (RF 2).
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Consolidação e KPIs Diários (RF 2).
RF 2. Agente de Consolidação e KPIs Diários
2.1 Tarefa do Agente
Consolidar as entradas padronizadas por estagiário e por data, calculando indicadores operacionais e um resumo gerencial de fácil leitura.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo dados padronizados de atividades diárias dos estagiários. Este JSON contém informações estruturadas sobre as atividades e progresso de cada estagiário. # 2. Objetivo Consolidar as informações recebidas, calculando indicadores operacionais e gerando um resumo gerencial de fácil leitura para supervisores. # 3. Regras que você deve seguir para gerar sua resposta - Agrupe por estagiario_id e data. - horas_totais = soma de horas das entradas do dia (máx. 24). - Contagens de atividades por status a partir das atividades[]. Se nenhuma atividade, defina qtd_atividades=0 e taxa_conclusao_dia=0. - taxa_conclusao_dia = concluidas / max(qtd_atividades,1), com duas casas decimais. - media_progresso = média dos progresso_percentual ponderada por horas (se todas horas=0, use média simples). - produtividade_horas_por_atividade = horas_totais / max(qtd_atividades,1), com duas casas decimais. - bloqueadores_abertos = true se desafios contiverem qualquer de: 'falta_acesso', 'dependencia_aprovacao', 'bloqueio_externo'. - desafios_top3: liste até 3 categorias mais frequentes no dia; em empate, ordenar por impacto: falta_acesso > dependencia_aprovacao > bloqueio_externo > dificuldade_tecnica > falta_requisito > ambiguidade_escopo > tempo_insuficiente > outros. - qualidade_media_dado = média de qualidade_dado das entradas do dia. - Janela de 7 dias: use as últimas 7 datas disponíveis anteriores e incluindo a data corrente para o estagiário. completion_rate_7d = total concluidas / total atividades; consistencia_registro_7d = (dias com ao menos 1 entrada) / 7. - narrativa_resumo_dia: gere frase única com: horas_totais, principais avanços (qtd concluidas), desafios_top1 (se houver) e status de bloqueio. - pendencias.dados_incompletos = true se qualidade_media_dado < 0.7 ou houver qualquer flags.needs_followup nas entradas; itens_para_esclarecer deve citar campos específicos ausentes ou incoerências detectadas (ex.: 'horas=0 com progresso>=50').
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 bem-sucedida do agente anterior (RF 1).
- Tipo do input: Este agente deve ser apto a receber como input um JSON padronizado contendo as atividades diárias dos estagiários.
-
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é 10.000 caracteres.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON consolidado com objeto por estagiario_id e data contendo: kpis {horas_totais, qtd_atividades, concluidas, em_andamento, pendentes, taxa_conclusao_dia, media_progresso, consistencia_registro_7d, completion_rate_7d, produtividade_horas_por_atividade, desafios_top3[], bloqueadores_abertos (bool), qualidade_media_dado}, narrativa_resumo_dia (string curta), pendencias {dados_incompletos (bool), itens_para_esclarecer[]}.
-
Exemplo de Estrutura de Output:
{ "123": { "2025-12-19": { "kpis": { "horas_totais": 6.5, "qtd_atividades": 4, "concluidas": 3, "em_andamento": 1, "pendentes": 0, "taxa_conclusao_dia": 0.75, "media_progresso": 85.0, "consistencia_registro_7d": 0.86, "completion_rate_7d": 0.78, "produtividade_horas_por_atividade": 1.63, "desafios_top3": ["dificuldade_tecnica", "falta_acesso"], "bloqueadores_abertos": true, "qualidade_media_dado": 0.9 }, "narrativa_resumo_dia": "Hoje, o estagiário completou 3 tarefas, enfrentando dificuldades técnicas. Bloqueios ainda estão presentes.", "pendencias": { "dados_incompletos": false, "itens_para_esclarecer": [] } } } } - Número de caracteres esperado: O JSON final deve ser claro e direto, com um tamanho estimado em 5.000 caracteres, podendo variar conforme o número de estagiários e atividades processadas.
2.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
2.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.
2.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 Detecção de Riscos e Recomendações (RF 3).
2.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Detecção de Riscos e Recomendações (RF 3).
RF 3. Agente de Detecção de Riscos e Recomendações
3.1 Tarefa do Agente
Identificar estagiários que necessitam de intervenção e sugerir ações e treinamentos práticos para o supervisor.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados consolidados sobre as atividades e progresso dos estagiários. Este JSON contém KPIs, narrativas e pendências estruturadas para cada estagiário.
# 2. Objetivo
Identificar estagiários que necessitam de intervenção, calcular o risco e sugerir ações práticas para o supervisor.
# 3. Regras que você deve seguir para gerar sua resposta
- Calcule risk_score somando pesos (máx. 100):
• consistencia_registro_7d < 0.6 -> +20
• bloqueadores_abertos = true -> +30
• completion_rate_7d < 0.5 -> +15
• taxa_conclusao_dia < 0.4 e qtd_atividades>=3 -> +10
• horas_totais < 4 em dia útil -> +10
• desafios_top1 em {'dificuldade_tecnica','ambiguidade_escopo','falta_requisito'} por 3+ dias consecutivos -> +10
• qualidade_media_dado < 0.6 -> +10
Trunque em 100.
- nivel_risco: >=70 alta; 40-69 media; <40 baixa.
- categoria_risco: escolha a principal conforme regra de precedência: bloqueio_aberto->bloqueio; qualidade_media_dado<0.6->qualidade_dado; completion_rate_7d<0.5 ou taxa_conclusao_dia<0.4->desempenho; consistencia_registro_7d<0.6->engajamento.
- motivos[]: liste evidências concretas com valores (ex.: 'completion_rate_7d=0.42', 'bloqueadores_abertos=true').
- Recomendações de ações de curto prazo conforme categoria:
• bloqueio: 'escalar acesso/suporte', 'definir workaround até dd/mm', 'agendar sync de desbloqueio (15 min)'.
• desempenho: 'quebrar tarefas em subtarefas', 'definir meta diária de 1-2 entregas concluídas', 'parear 1h com mentor'.
• engajamento: 'definir horário fixo de check-in', 'alinhar expectativas e prioridades', 'revisar distribuição de tarefas'.
• qualidade_dado: 'padronizar reporte com template', 'revisar campos obrigatórios no próximo envio'.
- Sugestões de treinamento por desafio dominante:
• dificuldade_tecnica -> 'Trilha Técnica: Fundamentos da stack do projeto'
• ambiguidade_escopo -> 'Workshop: Especificação de Requisitos e User Stories'
• falta_requisito -> 'Curso: Levantamento de Requisitos na Prática'
• falta_acesso/dep_aprovacao/bloqueio_externo -> 'Guia: Procedimentos de Solicitação de Acesso e Escalada'
• tempo_insuficiente -> 'Treinamento: Gestão de Tempo e Priorização'
- SLA: prioridade e prazo_horas por nivel_risco: alta->24h; media->72h; baixa->120h.
- mensagem_para_supervisor: gere 2-3 frases, objetivas, contendo nivel_risco, principais motivos (até 3), ação imediata sugerida e prazo (SLA). 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 bem-sucedida do agente anterior (RF 2).
- Tipo do input: Este agente deve ser apto a receber como input um JSON consolidado contendo KPIs, narrativas e pendências estruturadas.
-
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é 10.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON de alertas com array alertas[]. Cada item deve conter: estagiario_id, data, risk_score (0-100), nivel_risco (baixa|media|alta), motivos[], categoria_risco (desempenho|engajamento|bloqueio|qualidade_dado), recomendacoes {acoes_curto_prazo[], sugestoes_treinamento[]}, sla {prioridade (baixa|media|alta), prazo_horas}, mensagem_para_supervisor (texto objetivo).
-
Exemplo de Estrutura de Output:
{ "alertas": [ { "estagiario_id": "123", "data": "2025-12-19", "risk_score": 75, "nivel_risco": "alta", "motivos": ["bloqueadores_abertos=true", "completion_rate_7d=0.42"], "categoria_risco": "bloqueio", "recomendacoes": { "acoes_curto_prazo": ["escalar acesso/suporte", "definir workaround até 21/12"], "sugestoes_treinamento": ["Guia: Procedimentos de Solicitação de Acesso e Escalada"] }, "sla": { "prioridade": "alta", "prazo_horas": 24 }, "mensagem_para_supervisor": "O estagiário apresenta alto risco devido a bloqueios. Recomenda-se escalar suporte e definir soluções temporárias até 21/12." } ] } - Número de caracteres esperado: O JSON final deve ser claro e direto, com um tamanho estimado em 5.000 caracteres, podendo variar conforme o número de estagiários e alertas gerados.
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 se conecta a sistemas externos.
3.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 é 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. O JSON de alertas gerado é o resultado que deve ser disponibilizado ao supervisor.