Pular para o conteúdo
GBEspecialista em IAEnglish — Ver este site em inglês

Especialista em IA na iK · São Paulo

Sistemas de IA
em produção.

Orquestração de agentes, integração via API, telefonia, RAG e automação de processos de service desk. Os sistemas corporativos abaixo foram construídos na iK; os produtos próprios, fora dela. Cada card traz problema, solução, arquitetura, stack, resultado — e o status real do sistema.

Mapa

ErikaErikaPredikt AlertsPredikt AlertsMiddleware ADMiddleware ADPredikt LivePredikt LiveLivePropLivePropMyVibePagesMyVibePagesErika RAGErika RAGReset de senha por telefoneReset de senhaQualificador InteligenteQualificadorFerramentas internasFerramentas internasErikaErikaPredikt AlertsPredikt AlertsMiddleware ADMiddleware ADPredikt LivePredikt LiveLivePropLivePropMyVibePagesMyVibePagesErika RAGErika RAGReset de senha por telefoneReset de senhaQualificador InteligenteQualificadorFerramentas internasFerramentas internas
Legenda: disco cheio = sistema · círculo = domínio técnico · ponto = tecnologia ou certificação · linha forte = relação entre sistemasToque num sistema para abrir o card. Linha = relação declarada entre sistemas.

Filtrar por domínio

Agentes que decidem qual ferramenta chamar, em que ordem, e quando parar — com escopo travado.

Recuperação sobre base documental corporativa, com varredura de todos os documentos relacionados antes de responder.

Voz como interface: a IA atende, fala, escuta e age — sem menu de teclas.

Camadas que conversam com sistemas corporativos sem expor credencial nem vazar dado.

O chamado como unidade de trabalho: abrir, qualificar, encaminhar, resolver e encerrar.

Detectar incidente, tentar reparar sozinho, e só então acordar alguém.

Ações em diretório corporativo mediadas por uma camada que nunca devolve credencial.

A camada que as pessoas efetivamente tocam — e onde a engenharia fica visível ou invisível.

Erika

Orquestrador omnichannel de service desk: atende por chat e por telefone, e age direto no ITSM.

  • Em produção
  • Sistema corporativo
  • 2026-01

Operação de service desk multicliente · Cinco clientes mais a operação interna

Problema

Um service desk atende por canais que não conversam entre si. O mesmo pedido chega por chat e por telefone e recebe tratamento diferente, porque cada canal tem seu próprio caminho até o sistema de chamados. No meio de todos eles existe um analista digitando o que o usuário acabou de dizer.

Solução

Um orquestrador único por trás dos dois canais. A Erika entende o pedido em linguagem natural, decide qual ação executar e fala direto com o ITSM: abre, consulta e altera chamado sem intermediário humano. O canal deixa de ser uma bifurcação e vira só a porta de entrada.

Arquitetura

A camada de orquestração recebe a intenção — texto do chat ou transcrição da chamada — e escolhe a ferramenta a chamar, na ordem que o fluxo exige. As ações contra o ITSM passam por APIs REST. Quando o pedido toca identidade, a Erika não resolve sozinha: ela delega ao Middleware AD, que executa a ação no diretório e devolve só o resultado. A Erika nunca vê credencial.

Diagrama — Erika: a intenção entra por dois canais e sai como ação no ITSMLeitura do diagrama: caixa cheia = o sistema descrito neste card · caixa vazada = sistema ou serviço externo · linha tracejada = chamada assíncrona.

Conexões

Stack

Voz e chat compartilham o mesmo núcleo de decisão em vez de cada canal ter a sua lógica — é o que impede os dois de divergirem com o tempo. A integração é toda por API REST porque cada cliente tem sua própria instância de ITSM, e o contrato precisa ser o mesmo em todas.

  • LLM
  • APIs REST
  • ITSM
  • Voz
  • Chat
  • Docker
  • Google Cloud

Resultado

Em produção ininterrupta desde janeiro de 2026, atendendo cinco clientes e a operação interna.

~2.000chamados por mêsdesde jan/2026 · telemetria interna
24/7em operaçãodesde jan/2026 · telemetria interna
5clientes atendidosset/2026 · relato do time

Predikt Alerts

Alertas por voz e SMS com escalonamento inteligente — e uma tentativa de reparo antes de acordar alguém.

  • Em produção
  • Sistema corporativo
  • 2026

Monitoramento de infraestrutura corporativa · Operação contínua, com self-healing ativo em um cliente

Problema

Alerta de infraestrutura que chega por e-mail de madrugada não é alerta: é um registro para alguém ler de manhã. O incidente acontece às três, ninguém vê, e o problema fica de pé até o primeiro turno abrir o painel. O custo não está na detecção — está nas horas entre detectar e alguém tomar conhecimento.

Solução

O Predikt liga. Literalmente: comunica o incidente por telefone e por SMS, e escalona — de forma direcionada ou geral, conforme a regra. Antes disso, porém, ele tenta resolver: detectada a queda de um serviço, o sistema executa a ação de reparo e só escala se ela não funcionar. A madrugada deixou de ser um vão.

Arquitetura

O monitoramento de infraestrutura dispara o evento. O Predikt avalia se existe ação de reparo cadastrada para aquele sintoma e, havendo, executa antes de qualquer notificação. Se o serviço volta, o ciclo se fecha sozinho. Se não volta, entra a cadeia de escalonamento por voz e SMS e o chamado fica aberto até o serviço voltar. Nos dois casos o encerramento no ITSM é automático: o que fecha o chamado é o serviço voltar, não quem o consertou — e a volta é avisada, não só registrada.

Diagrama — Predikt Alerts: tenta reparar antes de acordar alguém

Stack

Voz e SMS em vez de e-mail ou push porque o requisito não é notificar, é acordar. E o chamado automático no ITSM existe por um motivo específico: sem ele, todo incidente resolvido pelo self-healing desapareceria do histórico, e o sistema ficaria invisível justamente quando funciona.

  • Monitoramento
  • ITSM
  • APIs REST
  • Voz
  • SMS
  • Java 21
  • Docker

Resultado

Sistema construído integralmente por mim, em operação contínua. O ganho real não está num gráfico: incidentes que antes esperavam o dia seguinte passaram a ser tratados na hora em que acontecem.

24/7em operaçãooperação contínua · telemetria interna
1cliente com self-healing ativoset/2026 · relato do time
0falhas do self-healing até hojedesde a ativação · telemetria interna

Middleware AD

A camada que executa ação no diretório para quem não pode ter credencial — e devolve só o resultado.

  • Em produção
  • Sistema corporativo
  • 2026

Diretório corporativo de uma operação multicliente · Camada única de identidade, atrás de proxy reverso, em rede segregada

Problema

Um agente de IA que reseta senha precisa de permissão no diretório. Dar essa permissão ao agente significa colocar credencial administrativa dentro do mesmo processo que interpreta texto livre de um usuário. E o diretório não perdoa: um caractere errado numa busca é injeção, e uma conta de serviço com permissão demais é o incidente inteiro numa linha só.

Solução

Nenhum agente fala com o diretório. Eles falam com este middleware, por REST, e ele traduz a intenção em comando LDAPS. Cada operação tem contrato estreito: identificador validado por expressão regular que recusa asterisco, aspas e parêntese; conta de serviço no mínimo de permissão; resposta que carrega o resultado e nada mais. A credencial nunca sai daqui.

Arquitetura

Um serviço Java com Spring Boot converte requisição REST em modificação de atributo. Reset de senha, por exemplo, é uma operação vista de fora e três por dentro: troca a senha, limpa o bloqueio da conta e marca a senha como expirada para forçar a troca no próximo acesso. A autenticação é híbrida — valida token emitido pela nuvem onde os agentes rodam, ou cai para token estático quando esse caminho está desligado — e vem combinada com lista de IPs permitidos. Existe ainda um modo de simulação que registra a intenção sem tocar no diretório, o que permite exercitar o fluxo em produção sem efeito colateral.

Diagrama — Middleware AD: uma requisição de fora, três operações por dentro

Conexões

Stack

Java e Spring Boot porque é onde vive a integração LDAP madura, e porque o protocolo tem armadilhas que só biblioteca calejada resolve — referências de continuação, por exemplo, quebram a busca se não forem explicitamente ignoradas. A blindagem é toda de borda e de propriedade: limite de requisições, cabeçalhos estritos, e cada recurso de segurança ligado por configuração, para que um teste de intrusão nunca exija recompilar nada.

  • Java 21
  • Diretório
  • APIs REST
  • Docker
  • Google Cloud

Resultado

Em produção, é o único caminho pelo qual a Erika age sobre identidade. O ganho não é de velocidade: é que a superfície de ataque do agente não inclui o diretório, e cada ação executada fica numa trilha de auditoria que mantém dado pessoal fora do log comum.

Predikt Live

Painel de incidentes ao vivo que não só mostra o que quebrou: propõe a ação e registra quem decidiu.

  • Piloto
  • Sistema corporativo
  • 2026

Centro de operações de rede de um provedor de serviços gerenciados · Multi-inquilino por chave de API, com um inquilino em homologação

Problema

Painel de operação costuma ser um espelho: mostra o número e devolve ao humano a pergunta inteira. Quem está de sobreaviso às três da manhã não precisa de mais um gráfico, precisa de uma próxima ação defensável. E quem lê o mesmo dado de manhã, na diretoria, precisa de outra coisa ainda — uma narrativa. Um painel só tentando servir os dois acaba não servindo nenhum.

Solução

Duas leituras do mesmo dado, em duas linguagens visuais: um boletim editorial para quem lê de manhã e um console de sala de guerra para quem está de plantão. Em cima disso, uma camada que recomenda — e um laço de governança em que a recomendação é aceita ou recusada por uma pessoa, e o registro dessa decisão fica. A IA propõe; ela nunca está no caminho crítico.

Arquitetura

A ingestão recebe abertura e encerramento de incidente e correlaciona os dois pelo número do chamado, calculando o tempo até o reparo. É idempotente por construção: repetir o mesmo evento não duplica nada, e um encerramento sem abertura correspondente é aceito e marcado como órfão, em vez de descartado em silêncio. Toda conversa com modelo de linguagem passa por uma porta só, e os provedores são adaptadores trocáveis por variável de ambiente — nenhum outro arquivo monta requisição de IA à mão.

Diagrama — Predikt Live: correlaciona por chamado e fala com o modelo por uma porta só

Conexões

  • consomeErika

    Os incidentes chegam do pós-processo da Erika, já correlacionados por chamado

Stack

A porta única para o modelo é o que torna a troca de provedor uma mudança de configuração e não uma refatoração: as declarações de ferramenta vivem num esquema neutro, e a tradução para o dialeto de cada fornecedor mora num arquivo só. Banco relacional porque o valor aqui está na correlação entre eventos, e correlacionar é trabalho de tabela, não de documento. E o piso de toda recomendação é determinístico: o modelo escreve o texto, ele não decide o limiar.

  • Next.js
  • TypeScript
  • LLM
  • Claude
  • Google Cloud
  • Docker

Resultado

O marco de chat de governança foi entregue e demonstrado à liderança. O que o sistema prova não é volume: é que dá para colocar um modelo de linguagem dentro de uma operação crítica sem que ele vire uma segunda porta de decisão — a recomendação é puxada, nunca empurrada, e o que fica registrado é a aceitação humana.

LiveProp

Transforma material bruto de venda em proposta web rastreável — e a IA nunca inventa um preço.

  • Em produção
  • Produto próprio
  • 2026

Produto próprio: propostas comerciais para times de venda pequenos · SaaS multi-inquilino no ar, com o fluxo completo navegável

Problema

Proposta de time pequeno nasce de um amontoado: transcrição de reunião, planilha de preços, um PDF antigo que alguém vai adaptar. O resultado sai como anexo, ninguém sabe se foi aberto, e o preço é digitado à mão toda vez. Jogar um modelo de linguagem nisso resolve a redação e cria um problema pior: um número plausível e errado dentro de um documento que o cliente vai tratar como compromisso.

Solução

O modelo redige e estrutura, mas não precifica. Ele só pode referenciar item do catálogo do próprio usuário, por identificador, ou marcar a linha como pendente. Preço e margem são calculados no servidor, depois. A proposta vira página web com link próprio — tema escolhível, seções fixas, eventos de abertura registrados — em vez de anexo que some na caixa de entrada.

Arquitetura

Aplicação Next.js na borda, com Postgres gerenciado e isolamento por linha separando os dados de cada conta. O motor de geração recebe texto, transcrição ou planilha e devolve uma estrutura, não um documento pronto: os identificadores de catálogo vêm dele, os valores vêm da tabela. O renderizador público é uma rota separada do painel, o que mantém a página que o cliente abre leve e independente da sessão de quem escreveu.

Diagrama — LiveProp: o modelo escolhe o item do catálogo, a tabela dá o preço

Stack

A regra de não inventar preço não é um pedido dentro do prompt: é fronteira de arquitetura. O modelo devolve identificador, o servidor resolve valor — assim nenhuma melhoria de prompt e nenhuma troca de modelo consegue reintroduzir o erro. O padrão é o modelo mais barato da família Claude, porque a tarefa é estruturar texto e não raciocinar longamente, e o cache de prompt corta o custo do trecho que se repete em toda proposta.

  • Next.js
  • TypeScript
  • Claude
  • LLM
  • Vercel
  • PostgreSQL

Resultado

O fluxo inteiro está no ar e navegável, e o build foi congelado por decisão de produto: a revalidação de mercado mostrou que não havia funcionalidade cuja ausência explicasse a falta de venda — o que faltava era distribuição. Parar de codar foi a entrega.

97de desempenho no Lighthouse mobileago/2026 · telemetria interna
0de deslocamento de layout (CLS)ago/2026 · telemetria interna
10 msde bloqueio total da thread (TBT)ago/2026 · telemetria interna

MyVibePages

Plataforma de sites no ar — e a decisão, medida, de que anúncio não pode cair na home.

  • Em produção
  • Produto próprio
  • 2026

Produto próprio: sites e páginas de venda para pequenos negócios · No ar em domínio próprio, com tráfego pago ativo

Problema

A home é peça de marca: abre com uma sequência cinematográfica de vários múltiplos da altura da tela antes de mostrar o título. E ela é rápida — os indicadores de experiência ficam todos verdes. Só que um clique vindo de anúncio cai numa tela preta e só encontra a mensagem milhares de pixels de rolagem depois. O erro não aparece no painel de desempenho, porque a métrica mede o que foi pintado, não o que foi comunicado.

Solução

Páginas de anúncio viraram peça separada, com regra própria: sem biblioteca de animação, sem menu de navegação, o texto do título como primeiro elemento pintado, e um formulário por campanha para que o contato chegue já atribuído. A home segue cinematográfica, porque para quem chega por busca ou indicação ela funciona. Duas peças, dois objetivos, medidos em separado.

Arquitetura

Sites estáticos publicados direto do repositório, com endereços limpos resolvidos na configuração do host. Cada página de anúncio mora num arquivo próprio e é clonada trocando seis coisas — título, endereço canônico, chamada, imagem, nome do formulário e perguntas frequentes —, listadas no cabeçalho do próprio arquivo. A camada de medição carimba o identificador do clique num campo oculto do formulário, o que faz a conversão voltar ligada à campanha que a gerou.

Diagrama — MyVibePages: publica do repositório e devolve a conversão ligada à campanha

Stack

A página de anúncio não carrega biblioteca de animação, e isso não é economia de bytes: é o que elimina de uma vez a abertura, o sequestro da rolagem e uma classe inteira de defeito de recorte no navegador móvel da Apple. Já o bloqueio de indexação é feito por meta tag e não por regra de robô — bloquear o rastreador anularia a própria instrução, porque um robô impedido de ler a página nunca lê o pedido que está dentro dela.

  • Netlify
  • GitHub

Resultado

A página de anúncio trocou o que domina a tela: antes o maior objeto pintado era uma dica de rolagem de quinze pixels a trinta por cento de opacidade; agora é o próprio título.

120 msaté o maior elemento aparecer (LCP)ago/2026 · medição antes/depois
8requisições na página inteiraago/2026 · telemetria interna
0de deslocamento de layout (CLS)ago/2026 · telemetria interna

Erika RAG

Recuperação sobre a base de procedimentos — e a regra de que a base vence o modelo, sempre.

  • Em produção
  • Sistema corporativo
  • 2026

Base de procedimentos de uma operação de service desk · Consultada por pessoas e por outros sistemas, pelo mesmo contrato

Problema

O procedimento certo existe, escrito, e mesmo assim ninguém acha. Ele está num documento que alguém revisou há oito meses, com um nome que só faz sentido para quem já sabia onde procurar. Pior: quando um modelo de linguagem entra nesse vão, ele preenche a lacuna com algo plausível. Um procedimento inventado é mais perigoso que procedimento nenhum, porque parece resposta.

Solução

Recuperação sobre a base documental, com uma hierarquia declarada e não negociável: em caso de conflito entre a fala do usuário, a inferência do modelo e a base, **a base prevalece**. Campo obrigatório só aceita valor que está na base, com a grafia da base — nada de sinônimo, tradução ou variação. E dúvida não vira chute: vira pergunta.

Arquitetura

Os ativos de recuperação vivem em armazenamento de objetos na nuvem, acessados pelo SDK em vez do sistema de arquivos montado — a montagem é conveniente e é gargalo. A camada é exposta como serviço, o que faz dela um recurso compartilhado: a interface conversacional consulta, e outro sistema de triagem consulta o mesmo endpoint, com o mesmo contrato. O tempo limite de inferência no balanceador é de 60 segundos, dimensionado para o fluxo de recuperação longo — abaixo disso a resposta certa chegava como erro de gateway.

Diagrama — Erika RAG: a recuperação é um serviço, com dois consumidores e um contrato

Conexões

Stack

A decisão que sustenta o resto não é de infraestrutura, é de precedência: a base de conhecimento tem prioridade absoluta sobre qualquer inferência. Isso transforma alucinação de campo obrigatório num problema de dado, não de prompt — se o valor não está na base, não existe valor a devolver, e o caminho certo passa a ser perguntar. Expor a recuperação como serviço, em vez de embutir em cada consumidor, é o que impede duas bases de conhecimento divergirem no terceiro mês.

  • LLM
  • Documentos
  • APIs REST
  • Google Cloud
  • Java 21

Resultado

Virou infraestrutura: um segundo sistema passou a consultá-la em produção, e foi esse consumo que produziu as primeiras medidas honestas sobre ela — latência e taxa de aproveitamento reais, medidas de fora.

7–13 spara responder uma consultaset/2026 · telemetria interna
5%das conversas rendem um procedimento aproveitávelset/2026 · telemetria interna

Reset de senha por telefone

O chamado número um do service desk, resolvido por telefone às três da manhã, sem ninguém do outro lado.

  • Em produção
  • Sistema corporativo
  • 2026

Service desk corporativo, canal de voz · Disponível fora do horário comercial, sem analista de plantão

Problema

Senha bloqueada é o chamado mais comum e o menos interessante de todos. Ele não exige julgamento, exige disponibilidade — e é exatamente aí que ele falha: acontece na segunda de manhã, na virada do turno, no domingo. Enquanto não tem analista, a pessoa não trabalha. E o caminho tradicional, de autoatendimento por portal, não serve para quem está justamente trancado para fora.

Solução

A pessoa liga. A identificação é positiva e feita pela voz: o sistema localiza o cadastro pelo número que está chamando e confirma atributos que só o titular saberia. Confirmada a identidade, o reset é delegado — a camada de identidade executa a troca, limpa o bloqueio e marca a senha como expirada, para que a definitiva seja escolhida pela própria pessoa no primeiro acesso. Nenhuma senha é dita em voz alta por um sistema.

Arquitetura

A telefonia entrega a intenção já transcrita ao orquestrador, que trata o reset como qualquer outra ação: escolhe a ferramenta e chama. A busca pelo cadastro parte do número de telefone, com normalização de caracteres — número guardado com parêntese, hífen ou espaço precisa casar com o número que a operadora entrega. A execução no diretório não acontece aqui: é uma chamada ao middleware de identidade, que devolve apenas sucesso ou falha. O orquestrador nunca recebe credencial, nem a antiga nem a nova.

Diagrama — Reset de senha: identifica pelo telefone e delega a execução

Conexões

  • consomeMiddleware AD

    Segundo consumidor da mesma porta de identidade — é o que faz dela plataforma

  • estendeErika

    O reset é mais uma ferramenta na mão do orquestrador, não um sistema à parte

Stack

Reaproveitar o middleware de identidade, em vez de dar acesso ao diretório a mais um sistema, é o que mantém uma única porta auditável para ações de identidade — e é a diferença entre dois sistemas e uma plataforma. A senha expirada na origem é uma escolha deliberada: ela garante que o valor temporário não sobreviva ao telefonema, e transfere a escolha da senha real para quem é dono dela.

  • Voz
  • LLM
  • APIs REST
  • Diretório

Resultado

O chamado de maior volume da operação deixou de depender de turno. Não há número publicado aqui porque a medida honesta seria a comparação de tempo de atendimento antes e depois, e ela não foi instrumentada — o que existe é o sistema em produção e o caminho de auditoria completo no diretório.

Qualificador Inteligente

Classifica o pedido contra um catálogo fechado — e o modelo nunca escreve a categoria, só escolhe um identificador.

  • Em produção
  • Sistema corporativo
  • 2026-09

Atendimento de primeiro nível em uma operação de service desk · Catálogo de 305 serviços, duas versões em produção comparadas entre si

Problema

Quem abre chamado não fala o idioma do catálogo de serviços. A pessoa diz "perdi o acesso à pasta do setor"; o catálogo espera um caminho de três níveis, escrito exatamente de um jeito. A tradução entre os dois é o trabalho do primeiro nível, e é onde o chamado entra na fila errada. Entregar isso a um modelo de linguagem é tentador e perigoso: ele escreve uma categoria plausível que não existe, e o erro só aparece na fila de destino.

Solução

O modelo não escreve a categoria. Ele escolhe um identificador de uma lista fechada, e o banco resolve o resto. Quatro etapas: uma busca textual traz cerca de doze candidatos sem gastar token nenhum; o modelo escolhe um; o código confere; e a categoria final sai de uma consulta ao catálogo. Identificador fora da lista é descartado, mesmo que exista no catálogo. Confiança abaixo do piso vira triagem humana explícita, não palpite.

Arquitetura

Antes de registrar, o sistema pergunta à base de procedimentos se existe caminho que a própria pessoa consiga seguir — e não espera pela resposta: já faz a pergunta seguinte do detalhamento. Não bloquear é medição, não estilo, porque a consulta leva de sete a treze segundos e só uma em vinte conversas rende algo aproveitável; esperar cobraria a espera de todos para atender poucos. O procedimento que volta é escrito para analista, então duas camadas filtram: o modelo marca cada passo como de usuário ou técnico, e uma lista de bloqueio em código descarta passo técnico mesmo quando ele veio marcado como de usuário.

Diagrama — Qualificador: pergunta à base sem esperar, e filtra o que volta duas vezes

Conexões

  • consomeErika RAG

    Consulta a base de procedimentos antes de registrar, e não espera pela resposta

Stack

A trava importante não está no prompt, está no tipo do dado: o que o modelo devolve é um identificador, e o que o usuário lê vem de uma consulta ao banco. Nenhuma melhoria de redação pode reintroduzir uma categoria inventada. O mesmo princípio governa o filtro de autoatendimento — o que se pede ao modelo é pedido, não garantia, e por isso o código confere de novo. A temperatura é zero por medição, não por gosto: acima disso a mesma frase mudava de serviço entre execuções idênticas. E as duas versões no ar rodam a mesma imagem contra o mesmo banco, diferindo em um único parâmetro, para que a comparação meça o recurso e não dois produtos diferentes.

  • Python
  • LLM
  • PostgreSQL
  • Docker
  • Google Cloud
  • APIs REST

Resultado

Em produção com o modo de simulação como padrão, inclusive lá: abrir chamado é irreversível no sistema de destino, então sair da simulação é uma mudança de configuração deliberada e não um botão na tela.

~700tokens por classificação, contra ~22.000 se o catálogo inteiro fosse injetadoset/2026 · medição antes/depois
305serviços no catálogo, dos quais o modelo vê dozeset/2026 · telemetria interna

Ferramentas internas

Prospecção, propostas e extração — e a mesma regra em todas: a ferramenta só afirma o que verificou.

  • Em produção
  • Ferramenta interna
  • 2026

Ferramentas que construí para o meu próprio trabalho · Uso pessoal e de equipe, sem usuário externo

Problema

Ferramenta interna é onde a disciplina costuma ser abandonada, porque o único usuário é quem escreveu. O resultado aparece depois: um script de prospecção que classifica pela aparência do site em vez da existência dele, um gerador de proposta que afirma o que ninguém apurou. O erro não é técnico, é de honestidade — e ele sai da ferramenta direto para a frente de um cliente.

Solução

A regra é a mesma nas três: toda classificação produz uma evidência, e a evidência é a única coisa que o texto gerado pode afirmar. Na prospecção, o que qualifica um contato é o tipo de presença online e não a estética dela — um encurtador que termina em aplicativo de mensagem é ausência de site, não site ruim, e a ferramenta segue os redirecionamentos até o destino final antes de decidir.

Arquitetura

A prospecção é um script Python que consulta a API de lugares, resolve a presença online real e só então pede o texto ao modelo, passando a evidência apurada como insumo — e o modelo dessa etapa é o rápido, porque cada rodada avalia muitos negócios. O gerador de propostas é uma aplicação de página única com a chamada ao modelo isolada numa função sem servidor, que valida a sessão antes de gastar o modelo de redação — a chave nunca chega ao navegador, o que é a diferença entre uma ferramenta interna e uma chave vazada. A terceira é um extrator de conteúdo de sites, insumo das outras duas; mas nenhuma delas o chama: ele roda por fora e a saída entra à mão.

Diagrama — Ferramentas internas: três utilitários, uma regra — só afirmar o que foi verificado

Stack

A chave de API na função sem servidor, e não no front, é a decisão que mais se paga: ferramenta interna vira pública no dia em que alguém publica o repositório. E separar apuração de redação — primeiro verificar, depois pedir o texto — é o que permite trocar o modelo sem que a honestidade do resultado dependa do modelo escolhido.

  • Python
  • Claude
  • LLM
  • APIs REST
  • Vercel

Resultado

São ferramentas de uso próprio, sem usuário externo e sem número a publicar. Entram aqui por um motivo só: mostram que a mesma regra que governa os sistemas corporativos — a máquina não afirma o que não verificou — foi aplicada também onde ninguém estava olhando.