AI-Discord-Bot/README.md
2025-05-07 21:36:01 -04:00

117 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# AI Discord Bot
## 👤 What It Is
A self-hosted, always-online Discord friend that feels like a fun, social member of the group — not a bot. Its job is to stimulate conversations, keep things lighthearted, and make the server feel alive, even during quiet hours.
🧠 Primary Goals
* Boost server engagement organically
* Act like a real person with jokes, roasts, and casual banter
* Share daily messages and eventually auto-post memes
* Be customizable, self-hostable, and monetizable via hosting
## ✨ Core Vibes
* Feels like a homie, not a bot
* Casual, sometimes spicy, often funny
* Always online and paying attention
* Posts stuff like:
* “@everyone yall still alive or is this a ghost town? 👻”
* “New meme dropped: [image] 🔥”
## 🔥 Updated Feature Focus
* !chat → Casual convos with LLM
* !roast → Roast your friends
* Scheduled daily messages (sassy, motivational, or chaotic)
* Future: Meme hunting & posting (from Reddit, X, Discord meme pages, etc.)
## 💡 Naming Ideas (More Intuitive & Fun)
| **Name** | **Vibe** |
|-------------------|----------------------------------|
| **ServerMate** | Feels social + simple |
| **PartyBot** | For fun-focused servers |
| **MemeBoi / MemeGal** | If meme-focused |
| **BanterBot** | Pure vibes and chaos |
| **ChatCrew** | Feels like a squad member |
| **VibeCheck** | Funny, catchy, modern |
| **HomieBot** | Friendly + clear purpose |
| **PingPal** | Low-key but memorable |
| **Instigator** | Edgy, fun, accurate |
## 🛠️ AlphaBot MVP Build Schedule
A structured build plan for developing and deploying the AlphaBot Discord companion.
---
### ✅ ~~Day 1 Core Bot Setup~~
- [x] Create Discord bot in Developer Portal
- [x] Enable Message Content Intent
- [x] Set up `.env` with token
- [x] Write `bot.py` with basic `!ping` command
- [x] Invite bot to server and confirm it replies
---
### 🔄 ~~Day 2 AI Integration~~
- [x] Write `ai.py` to connect to Ollama/OpenAI
- [x] Set up API call + prompt formatting
- [x] Add `!chat` command to relay messages
- [x] Create `.env` key for `OLLAMA_API_URL`
---
### 🎭 Day 3 Persona System (Updated)
> Goal: Create a dynamic personality engine using a JSON file for flexible identity control.
- [x] Replace hardcoded `PERSONALITY` with a JSON-based persona profile
- [x] Create `persona.json` to store:
- Bot name
- Emoji
- Style prefix
- Prompt injection
- [x] Update `personality.py` to read from `persona.json`
- [x] Style all AI replies using the loaded persona
- [x] Add `!setpersona "<description>"` command
- Updates `persona.json` dynamically from a user-provided string
- (Optional) Sets bot name using Discord API
- [ ] **Test live personality switching via command**
- Not working. Personality is being loaded but it doesnt actually work
![Delta Fail Screenshot](docs/images/personality-test-fail.png)
📁 *This unlocks full customization without editing code or restarting the bot.*
---
### 🔥 Day 4 Roast Command
- [ ] Build `!roast @user` with AI-generated replies
- [ ] Style roast output with selected personality
- [ ] Add cooldown to prevent spam (optional)
---
### 🕒 Day 5 Daily Message Scheduler
- [ ] Add `scheduler.py` for once-a-day posting
- [ ] Pick default channel (e.g. `#general`)
- [ ] Make messages dynamic/funny with flair
---
### 🐳 Day 6 Dockerization
- [ ] Write `Dockerfile` and `docker-compose.yml`
- [ ] Test local build and `.env` passthrough
- [ ] Optional: containerize Ollama model if running locally
---
### 💰 Day 7+ Monetization Prep (Optional)
- [ ] Add donation/promo message in daily post
- [ ] Plan hosting model for non-technical users
- [ ] Write self-host instructions in `README.md`
---
*Progress last updated: May 7, 2025*