Assistente de IA do Portfólio
Chat com Claude · Tool use + captura de leads
Visão Geral
Um assistente de IA conversacional embarcado neste próprio portfólio. O visitante pergunta em linguagem natural — "você já fez e-commerce?", "quanto custa um SaaS?", "tem projeto com Next.js?" — e o assistente responde fundamentado nos dados reais dos meus projetos, serviços e experiência.
O diferencial é o uso de ferramentas (tool use) do Claude: o modelo decide quando buscar projetos no catálogo real e quando registrar um lead, capturando nome, contato e necessidade direto na minha base. Funciona como um pré-atendimento que qualifica oportunidades 24 horas por dia.
Funcionalidades
- ○Integração com Claude (Anthropic) via function calling: o modelo chama ferramentas para buscar projetos e registrar leads
- ○Respostas fundamentadas (grounding) nos dados reais do portfólio — sem inventar projetos ou tecnologias
- ○Captura de leads (nome, contato, necessidade) gravada em tempo real no Convex e visível em painel interno
- ○Loop agêntico server-side com Next.js Server Actions — a chave de API nunca vai ao cliente
- ○Rate limiting diário por IP com contador visível ao usuário (anti-abuso e controle de custo)
- ○Encaminhamento inteligente para o WhatsApp quando há intenção real de contratar
Desafios e Aprendizados
O principal desafio foi fazer a IA ser útil sem inventar informação. Em vez de apenas "conversar", o modelo opera com ferramentas: consulta o catálogo real de projetos e só afirma o que existe ali. O segundo desafio foi equilibrar acessibilidade (chat público, aberto a qualquer um) com controle de custo e abuso — resolvido com rate limiting por IP e um loop de ferramentas com limite de iterações, tudo executado no servidor para nunca expor a chave da API.
Resultado Final
O portfólio ganhou um canal de atendimento automático que responde dúvidas e qualifica leads sozinho, a qualquer hora. Tecnicamente, é a vitrine do que mais diferencia meu trabalho hoje: integração de IA com tool use, grounding em dados reais e arquitetura serverless — não um wrapper de prompt, mas um agente com ferramentas conectado a um banco de dados.