Sobre o projeto
ClaudIA é um bot de WhatsApp desenvolvido em Node.js (22 ou superior) sobre Baileys, com persistência em better-sqlite3. Nasceu como projeto pessoal para um grupo de amigos do Uruguai e toma como base o SawBot-MD, que por sua vez deriva do GataBot-MD.
Funções principais:
- Conversa com IA: responde quando é mencionada ou quando respondem a ela, usando vários modelos Gemini em cascata e backups em Groq, OpenRouter, NVIDIA e Cerebras. Classifica pedidos com saída JSON estruturada.
- Áudios: só processa notas de voz direcionadas a ela (resposta a uma mensagem sua ou citação que a nomeia). Se um provedor de backup responder, avisa que não conseguiu ouvir.
- Verificação de dados: consulta o Google com Gemini para perguntas verificáveis (notícias, dados, autorias) e responde sem links, exceto se pedirem.
- Iniciativa: em grupos onde é ativada, revisa o grupo algumas vezes por dia e pode reagir ou comentar, com regras de tato no código (não à noite, não em temas sérios, sem insistir se for ignorada).
- Memória: lembra gostos e dados de cada usuário entre conversas, além do que o grupo pedir com .recordá.
- Música e vídeo: download do YouTube com cookies e tentativas, com fallback para SoundCloud; também TikTok e Instagram.
- Economia (UruCoins): moedas por reações e participação, trabalhos com salário diário, níveis, rankings, sequência diária, pergunta do dia e loja.
- Jogos: trivia, enigmas, bandeiras, ordenar palavras, forca e jogo da velha.
- Cassino: roleta europeia, caça-níqueis, blackjack, minas, corridas, duelos, loteria semanal e mercados de apostas, com limites por jogada e devolução do apostado em reinícios.
- Temáticas semanais com hashtags e ranking mensal por reações.
- Compra e venda: publicações com #vendo ou #compro, catálogo, busca, reputação e avaliações.
- Casais, casamentos e adoções dentro do grupo.
- Aviação: METAR, TAF e SIGMET decodificados em espanhol, horários claros do Inumet, vento cruzado e hora Zulu.
- Ferramentas: clima, tradutor, RAE, texto para fala, figurinhas, lembretes, resumo do grupo com IA e versículos.
- Administração: comandos com permissões reais, papéis do bot por grupo, avisos, listas negras, silenciados, horário e boas-vindas.
- Ritmo humano: fila com pelo menos 1,5 segundos entre mensagens, indicador de digitação e limite de uma resposta a cada 20 segundos por grupo.
Configuração: copia-se config.example.toml para config.toml e preenchem-se número do bot, owners e chaves de API. O arquivo está no .gitignore. No Termux (Android) há instruções específicas para compilar better-sqlite3 e é necessário ffmpeg para figurinhas e efeitos de áudio. Inclui testes com o runner do Node e ESLint, executados no GitHub Actions sobre Node 22, 24 e 26.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.