This is a multifunctional AI assistant designed for Discord, integrating top-tier AI models like OpenAI, Gemini, Claude, DeepSeek and more, offering intelligent conversations, multimodal interaction, image generation, web search and deep thinking capabilities to bring unprecedented AI experiences to your server:
- Multi-Model Support: Integrates top AI models from OpenAI, Google AI, DeepSeek, and more, allowing flexible model switching.
- Real-Time Interaction: Supports streaming responses for smooth real-time conversations.
- Smart Predictions: AI-driven conversation prediction system automatically provides three most relevant response suggestions.
- Multimodal Capabilities: Supports text, image, PDF, voice inputs, and more for comprehensive interaction.
- Highly Customizable: Flexible role settings and model switching features to create a personalized AI assistant.
- Full support for four languages:
- Traditional Chinese (zh-TW)
- Simplified Chinese (zh-CN)
- English (en-US)
- Japanese (ja-JP)
- All system messages, command descriptions, and error prompts are localized.
- Supports user personal language settings.
- Supports server-wide language settings.
- Uses standard language codes for easy expansion.
- Modular architecture design for easy maintenance and expansion.
- Complete multilingual localization system.
- MongoDB data persistence to ensure data security.
- Real-time event monitoring and logging.
- Intelligent process management and automatic error recovery mechanism.
- Supports flexible switching between multiple AI models.
- Real-time streaming response display.
- Intelligent conversation memory function.
- Smart conversation prediction with interactive buttons.
- Multi-turn conversation context understanding.
- Edit conversation to re-respond (Coming Soon).
- Voice input and recognition.
- Image understanding and analysis.
- PDF document parsing and summarization.
- Deep thinking mode.
- Enhanced web search.
- AI image generation.
- Supports multiple drawing styles.
- Automatic prompt optimization.
- Multi-size image generation.
Model | Status | Base URL (supports OpenAI API format only) |
---|---|---|
OpenAI | ✅ | https://api.openai.com/v1 |
DeepSeek | ✅ | https://api.deepseek.com/v1 |
Google AI | ✅ | https://generativelanguage.googleapis.com/v1beta/openai/ |
xAI | ✅ | https://api.x.ai/v1 |
Anthropic | ✅ | Requires proxy API |
Proxy API | ✅ | Recommended to use proxy API to convert all models to OpenAI SDK format (e.g., one-api, new-api) |
- Message recall and management.
- Conversation record management (delete/edit).
- Role setting management.
- Model switching function.
- Automatic old conversation cleanup.
- Complete command reload system.
- User settings management system.
- MongoDB database integration.
- Detailed event logging.
- Permission management system.
- Channel management functions.
- Node.js 18.0.0 or higher
- MongoDB database
- Discord Bot Token
- AI API Keys (supports multiple providers)
- Tavily API Key (optional, for web search)
- Clone the repository
git clone https://github.com/Javis603/Discord-AIBot.git
cd Discord-AIBot
- Install dependencies
npm install
-
Set environment variables
- Copy .env.example to .env
- Fill in the necessary settings:
- Discord Bot Token
- MongoDB URI
- API Keys
- Other optional settings
-
Start the bot
# Production environment
npm start
# Development environment
npm run dev
- .env: Environment variable configuration
- config.json: Bot emoji settings
- roles.yaml: AI role settings (customizable)
- models.json: Developer AI model configuration
- models-user.json: User AI model configuration
- Copy config.json.example to config.json
- Check available emojis in
.github/assets/emojis
- Add required emojis to your Discord server
- Get emoji IDs (type \:emoji: in Discord)
- Update corresponding IDs in config.json
If custom emojis are not set, the bot will automatically use fallback generic emojis.
Required emojis:
- memory (default: 💾)
- clock (default: ⏰)
- update (default: 🔄)
- newchat (default: 🆕)
- cross (default: ❌)
- generating (default: ⚙️)
- search (default: 🔍)
- delete (default: 🗑️)
Command | Description | Permission |
---|---|---|
@bot ↰reply to bot /chat |
Chat with AI | General User |
/ai role |
Set AI role | General User |
/ai model |
Switch AI model | General User |
/ai chat clear |
Clear chat history | General User |
/imagine |
Generate AI image | General User |
/lang |
Personal language settings | General User |
/snipe .snipe |
View deleted messages | General User |
/info |
View bot information | General User |
/help |
View command list | General User |
/clear |
Clear messages | Admin |
/restart |
Restart bot | Developer |
/reload command /reload event |
Reload command/event | Developer |
/ai-admin model global |
Global model settings | Admin |
/ai-admin model user |
User model settings | Admin |
/ai-admin role user |
User role settings | Admin |
![]() Deep Thinking Feature |
![]() AI Image Generation |
![]() Web Search Feature |
![]() /language, /ai Commands |
![]() /clear, /info, /ping Commands |
![]() /snipe, .snipe |
If you have any questions or suggestions, feel free to:
This project is licensed under the MIT License - see the LICENSE file for details.
See CHANGELOG.md for detailed update records.