DEV Community

Cover image for Bora construir um Agente de Notícias Hiper-Personalizado? 🤖📰 (Codar Juntos)
Carlos Rogerio Orioli
Carlos Rogerio Orioli

Posted on • Edited on

Bora construir um Agente de Notícias Hiper-Personalizado? 🤖📰 (Codar Juntos)

A ideia: Chega de newsletter genérica!

Você já percebeu que a maioria das newsletters de tech ou são genéricas demais ou só cobrem o que acontece no Vale do Silício? Eu decidi mudar isso criando um Software Agêntico que faz curadoria sob medida, e quero convidar vocês para codarem comigo.

Não é só um chatbot. É um agente autônomo que:

  • Varre a web em tempo real usando Tavily.
  • Filtra por País e Idioma: Você quer notícias sobre IA que saíram no Japão, mas resumidas em Português? O agente resolve.
  • Sintetiza com Gemini 1.5 Pro: O "cérebro" que traduz, resume e formata.
  • Entrega via Resend: Automação direto para a sua inbox (ou de uma audiência inteira).

A Stack (Modern & Clean) 💻

Escolhi essa stack para ser fácil de subir, mas potente o suficiente:

  • Framework: Next.js (Vercel)
  • Intelligence: Gemini SDK + Tavily API (Os olhos e o cérebro)
  • Database & ORM: MongoDB + Prisma (para salvar as preferências de cada user)
  • E-mail: Resend (usando Audiences para escalabilidade)
  • Design de E-mail: MJML (para garantir que o e-mail seja responsivo em tudo)

O Plano de Voo 🚀

  • [x] Definir a arquitetura (Prisma + Mongo).
  • [x] Criar o formulário de captura de preferências (Temas, Países, Idiomas).
  • [X] Orquestrar o loop do agente: Pesquisa -> Resumo -> Tradução.
  • [X] Configurar o Cron Job na Vercel para o envio semanal automático.

Por que estou postando isso?

Quero aprender em público e trocar ideia com quem também está explorando o mundo de AI Agents. Se você manja de TypeScript, quer entender como orquestrar LLMs além do "prompt básico" ou quer discutir arquitetura de banco de dados, esse projeto é pra você.

Como você pode colar junto:

  1. Comenta aí: Qual feature você adicionaria em um agente de notícias?
  2. Stack: Qual parte te interessa mais? (Prompt Engineering, Integração de APIs ou o Frontend no Next?)
  3. GitHub: Vou liberar o repo com a aplicação completa!

🔑 As 5 Contas Necessárias para o Projeto

Para construir este software agêntico, precisaremos integrar os melhores serviços de IA e infraestrutura do mercado. Antes de começar o código, crie suas contas e pegue suas chaves de API:

  1. GitHub 🐙 (Onde o código vive)
    Para que serve: Hospedar o seu repositório, gerenciar versões e permitir que outras pessoas colaborem com o seu projeto.
    Criar conta no GitHub

  2. Google AI Studio (Gemini) 🧠 (O cérebro)
    Para que serve: É aqui que você gera a sua GEMINI_API_KEY. O Gemini 2.5 será o responsável por raciocinar sobre as notícias, traduzir e formatar o e-mail.
    Pegar API Key do Gemini

  3. Tavily AI 🔍 (Os olhos)
    Para que serve: Diferente do Google comum, o Tavily é um motor de busca feito especificamente para agentes de IA. Ele retorna resultados limpos e otimizados para que o Gemini possa ler.
    Criar conta no Tavily

  4. Resend 📧 (O mensageiro)
    Para que serve: Plataforma moderna para envio de e-mails transacionais. Vamos usá-la para disparar a newsletter e gerenciar a lista de inscritos (Audiences).
    Criar conta no Resend

  5. Vercel ▲ (A casa do projeto)
    Para que serve: Onde faremos o deploy da nossa aplicação Next.js. Além disso, usaremos o Vercel Cron Jobs para fazer o agente "acordar" sozinho toda semana.
    Criar conta na Vercel


💡 Dica de Segurança

Nunca suba suas chaves de API diretamente no GitHub! No Dia 1 do vídeo, mostro como usar o arquivo .env para manter essas chaves seguras apenas na sua máquina e nas configurações da Vercel.


📅 Plano de Desenvolvimento Detalhado

Dia 1: Estrutura Base e Banco de Dados

O objetivo hoje é ter o projeto rodando localmente e o banco pronto para receber inscritos.

  • Setup: npx create-next-app@latest ai-newsletter
  • Libs: @prisma/client, @google/generative-ai, @tavily/core, resend, zod, mjml.
  • DB: Configurar o schema.prisma com o modelo Subscriber.

Dia 2: Frontend e Captura de Leads

Interface onde o usuário escolhe seus interesses.

  • Formulário: Inputs de E-mail, Selects para País/Idioma e Checkboxes para Temas.
  • API: Rota /api/subscribe para salvar no MongoDB via Prisma.

Dia 3: O Cérebro do Agente (Core Logic)

A "mágica" agêntica:

  • Search & Synthesis: Função que integra Tavily (busca) com Gemini (raciocínio).
  • Prompt Engineering: Instruir o Gemini a formatar especificamente para o idioma do usuário.

Dia 4: Integração Resend e Loop de Envio

Transformar o conteúdo em e-mails reais.

  • MJML Integration: Usar MJML para garantir que o layout gerado pela IA seja responsivo.
  • Batch Logic: Rota que processa todos os inscritos e dispara os envios.

Dia 5: Deploy e Automação na Vercel

O agente ganha vida própria:

  • Vercel Cron: Configurar o vercel.json para o agendamento (ex: toda segunda às 9h).
  • Teste Final: Cadastro real e validação do recebimento.


GITHUB DO PROJETO

Bora parar de só dar "oi" pro ChatGPT e começar a construir ferramentas que realmente entregam valor de forma autônoma. 🚀


Top comments (0)