# 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 y’all 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 ""` 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*