프로젝트 소개

ClaudIA는 Baileys 위에서 Node.js(22 이상)로 개발된 WhatsApp 봇이며, better-sqlite3에 데이터를 저장한다. 우루과이 친구들 그룹을 위한 개인 프로젝트로 시작했고, SawBot-MD를 기반으로 하며 이는 다시 GataBot-MD에서 파생되었다. 주요 기능: - AI 대화: 누군가 자신을 언급하거나 자신의 메시지에 답장하면 응답하며, 여러 Gemini 모델을 캐스케이드로 사용하고 Groq, OpenRouter, NVIDIA, Cerebras를 백업으로 쓴다. 요청을 구조화된 JSON 출력으로 분류한다. - 오디오: 자신에게 향한 음성 메시지만 처리한다(자신의 메시지에 대한 답장 또는 자신을 지명한 인용). 백업 제공자가 응답하면 들을 수 없었다고 알린다. - 사실 확인: 검증 가능한 질문(뉴스, 데이터, 저자)에 대해 Gemini로 Google을 조회하고, 링크를 요청받지 않는 한 링크 없이 답한다. - 주도성: 활성화된 그룹에서 하루 몇 번 그룹을 확인하고 반응하거나 코멘트할 수 있으며, 코드에 재치 규칙이 있다(밤에는 안 함, 진지한 주제에는 안 함, 무시당하면 고집하지 않음). - 기억: 대화 간에 각 사용자의 취향과 데이터를 기억하고, 그룹이 .recordá로 요청한 것도 기억한다. - 음악 및 영상: 쿠키와 재시도를 사용한 YouTube 다운로드, SoundCloud로 대체; TikTok과 Instagram도 지원. - 경제(UruCoins): 반응과 참여로 코인 획득, 일일 급여가 있는 직업, 레벨, 등급, 일일 연속, 오늘의 질문, 상점. - 게임: 퀴즈, 수수께끼, 국기, 단어 정렬, 행맨, 삼목. - 카지노: 유럽식 룰렛, 슬롯머신, 블랙잭, 마인스, 경주, 결투, 주간 복권, 베팅 시장, 플레이당 상한과 재시작 시 베팅금 반환. - 해시태그가 있는 주간 테마와 반응 기반 월간 랭킹. - 매매: #vendo 또는 #compro 게시물, 카탈로그, 검색, 평판, 평점. - 그룹 내 커플, 결혼, 입양. - 항공: 스페인어로 디코딩된 METAR, TAF, SIGMET, Inumet의 명확한 시간대, 측풍, 줄루 시간. - 도구: 날씨, 번역기, RAE, 텍스트 음성 변환, 스티커, 알림, AI 그룹 요약, 성경 구절. - 관리: 실제 권한이 있는 명령, 그룹별 봇 역할, 경고, 블랙리스트, 음소거, 시간 제한, 환영. - 인간적 속도: 메시지 간 최소 1.5초의 큐, 입력 중 표시, 그룹당 20초에 한 번 응답 제한. 설정: config.example.toml을 config.toml로 복사하고 봇 번호, 소유자, API 키를 채운다. 이 파일은 .gitignore에 있다. Termux(Android)에서는 better-sqlite3 컴파일을 위한 특정 지침이 있고 스티커와 오디오 효과를 위해 ffmpeg가 필요하다. Node 러너와 ESLint를 사용한 테스트가 포함되어 있으며 GitHub Actions에서 Node 22, 24, 26으로 실행된다.