À propos du projet

ClaudIA est un bot WhatsApp développé en Node.js (22 ou supérieur) sur Baileys, avec persistance dans better-sqlite3. Né comme projet personnel pour un groupe d'amis d'Uruguay, il prend comme base SawBot-MD, qui dérive lui-même de GataBot-MD. Fonctions principales : - Discussion avec IA : répond lorsqu'on la mentionne ou qu'on lui répond, en utilisant plusieurs modèles Gemini en cascade et des secours chez Groq, OpenRouter, NVIDIA et Cerebras. Classe les demandes avec une sortie JSON structurée. - Audios : ne traite que les notes vocales qui lui sont adressées (réponse à un de ses messages ou citation qui la nomme). Si un fournisseur de secours répond, elle prévient qu'elle n'a pas pu l'écouter. - Vérification des données : interroge Google avec Gemini pour les questions vérifiables (actualités, données, authorship) et répond sans liens, sauf si on les lui demande. - Initiative : dans les groupes où elle est activée, elle consulte le groupe quelques fois par jour et peut réagir ou commenter, avec des règles de tact dans le code (pas la nuit, pas sur des sujets sérieux, sans insister si on l'ignore). - Mémoire : se souvient des goûts et des données de chaque utilisateur entre les discussions, en plus de ce que le groupe demande avec .recordá. - Musique et vidéo : téléchargement depuis YouTube avec cookies et tentatives répétées, avec repli sur SoundCloud ; aussi TikTok et Instagram. - Économie (UruCoins) : pièces par réactions et participation, emplois avec salaire quotidien, niveaux, rangs, série quotidienne, question du jour et boutique. - Jeux : trivia, énigmes, drapeaux, remise en ordre des mots, pendu et morpion. - Casino : roulette européenne, machines à sous, blackjack, mines, courses, duels, loterie hebdomadaire et marchés de paris, avec plafonds par mise et remboursement des mises en cas de redémarrage. - Thématiques hebdomadaires avec hashtags et classement mensuel par réactions. - Achat-vente : publications avec #vendo ou #compro, catalogue, recherche, réputation et évaluations. - Couples, mariages et adoptions au sein du groupe. - Aviation : METAR, TAF et SIGMET décodés en espagnol, créneaux horaires clairs d'Inumet, vent traversier et heure Zulu. - Outils : météo, traducteur, RAE, synthèse vocale, stickers, rappels, résumé du groupe avec IA et versets. - Administration : commandes avec permissions réelles, rôles du bot par groupe, avertissements, listes noires, mises en sourdine, horaires et bienvenue. - Rythme humain : file d'attente avec au moins 1,5 seconde entre les messages, indicateur de saisie et limite d'une réponse toutes les 20 secondes par groupe. Configuration : on copie config.example.toml vers config.toml et on renseigne le numéro du bot, les owners et les clés API. Le fichier est dans .gitignore. Sur Termux (Android), il y a des instructions spécifiques pour compiler better-sqlite3 et ffmpeg est requis pour les stickers et les effets audio. Inclut des tests avec le runner de Node et ESLint, exécutés dans GitHub Actions sur Node 22, 24 et 26.