A friendly conversational chatbot named Alisya integrated with Large Language Model (gemini-2.0-flash) for creating response and using Chromadb to store conversation as memory. Using whatsapp-web.js as interface so this bot can used for everyone using their personal WhatsApp number.
- Add number to group chat.
- Kick person from group chat.
- Make sticker from sent image media.
- Tagging all group participants.
- Sending a message or media via bot to someone.
- Talking with bot using LLM with image attachment.
- Take over, automatic message response assistant.
For local development without Docker:
- Install node modules,
pnpm install
- Create
.envfile from.env.example,cp .env.example .env
- Fill
.envfile,CHIPER_KEY=<your_custom_secret_key> LLM_API_KEY=<your_llm_api_key> DB_NAME=BotDatabase.db - Perform database migration to store bot configuration and seeding for initialize data,
pnpm run migrate pnpm run seed
- Create chromadb container,
cd chromadb docker-compose up -d - Start development server,
pnpm run dev
- Wait application to start and after QR Code appeared scan it on WhatsApp to login,
- After client authenticated you're ready to go,
- Enjoyy...
For production deployment using Docker:
- Create
.envfile from.env.example,cp .env.example .env
- Fill
.envfile,CHIPER_KEY=<your_custom_secret_key> LLM_API_KEY=<your_llm_api_key> DB_NAME=BotDatabase.db - Start all services using Docker Compose,
docker-compose up -d
- Wait for application to start and QR Code to appear in logs,
- Scan the QR Code on WhatsApp to login,
- After client authenticated you're ready to go,
- Enjoyy...
Make sure to set these in your .env file:
CHIPER_KEY: Your custom secret key for encryptionLLM_API_KEY: Your Google Generative AI API key for LLM functionalityDB_NAME: Database name (default: BotDatabase.db)
For Mac and Windows User:
CHROMIUM_PATH: (You can keep this configuration empty, and puppeteer will open browser from the package)
You can send a !help command message to show the list action that bot can do. For bot configuration command you can send !help command message to your self WhatsApp phone number.
This bot using LLM from Google Generative AI you can grab your API key from Google AI Studio and fill it into env file.
Developed by Zavier Ferodova Al Fitroh ✌️