Repositorios
marie_ai (Backend)
- URL: github.com/The-CMOS/marie_ai
- Tecnologia: Node.js + Express + TypeScript
- Imagem Docker:
ghcr.io/the-cmos/marie_ai
Estrutura
src/
agent/ # LangChain ReAct agent, tools e skills
config/ # Configuracao de ambiente (env.ts)
infra/ # MongoDB, RabbitMQ, GOWA, RD Station, Google Calendar, GCS, Embeddings
lib/ # Utilitarios: logger, JID parser, envelope
middlewares/ # Express error handler
migrations/ # Migracoes MongoDB
rabbitmq/ # Consumers (message.consumer.ts)
repositories/ # Acesso a dados MongoDB
routes/ # Rotas Express + OpenAPI spec
services/ # Agent processor, CRM sync, timeouts, calendario, follow-up, remarketing
types/ # Tipos TypeScript
Funcionalidades
- Agents de IA com LangChain ReAct + Google Gemini
- CRM sync automatico com RD Station (Marketing + CRM v1)
- Agendamento com Google Calendar (multi-calendario, lembretes)
- Follow-up e remarketing automatizados
- RAG com GCS + MongoDB Vector Search
- Webhooks para RD Station e agent_start
- Tasks agendadas (lembretes, acoes futuras)
Comandos
npm run dev # Desenvolvimento (tsx watch)
npm run build # Compilar TypeScript
npm start # Producao (node dist/server.js)
npx tsc --noEmit # Type check
marie_frontend (Frontend)
- URL: github.com/The-CMOS/marie_frontend
- Tecnologia: Next.js + TypeScript + Tailwind CSS + shadcn/ui
- Imagem Docker:
ghcr.io/the-cmos/marie_frontend
Funcionalidades
- Gestao de agents (CRUD, skills, modelo, temperatura, timezone)
- Gestao de calendarios (multi-calendario Google, horarios, dias)
- Gestao de eventos RD Station (triggers, stage map, follow-up)
- Gestao de arquivos RAG (upload, chunks, vinculo com agents)
- Follow-up e remarketing
- Visualizacao de conversas e contatos
Comandos
npm run dev # Desenvolvimento
npm run build # Build (output: standalone)
npm start # Producao
Build-time env
NEXT_PUBLIC_API_URL e injetada em build time via Docker build-arg, nao em runtime.
whatsapp_webhook_sqs (Webhook Bridge)
- URL: github.com/The-CMOS/whatsapp_webhook_sqs
- Tecnologia: Node.js
- Imagem Docker:
ghcr.io/the-cmos/whatsapp_webhook_sqs
Como funciona
- Go-Whatsmeow envia webhooks para
http://webhook_whatsapp:3000/events - O servico recebe e publica na fila
eventsdo RabbitMQ - O backend consome a fila e processa
Necessario porque Go-Whatsmeow nao tem integracao nativa com RabbitMQ.