No description
Find a file
2025-05-08 11:32:37 -04:00
__pycache__ Chat API approach was not successful. I couldnt figure it out with ChatGPT so we went back to a more rudementary approach that does seem to work fairly well. 2025-05-07 23:26:58 -04:00
docs/images Chat API approach was not successful. I couldnt figure it out with ChatGPT so we went back to a more rudementary approach that does seem to work fairly well. 2025-05-07 23:26:58 -04:00
node_modules First Commit 2025-05-06 11:56:01 -04:00
.env Bot can how reply when using the "!chat" command then prompting it. The .env file points to an ollama instance, the ai.py file has the model being used. 2025-05-07 17:20:34 -04:00
ai.py Chat API approach was not successful. I couldnt figure it out with ChatGPT so we went back to a more rudementary approach that does seem to work fairly well. 2025-05-07 23:26:58 -04:00
bot.py Roast feature works, its not content aware yet but it does work. Message cooldows have been added. Custom cooldown messages have been added. 2025-05-08 10:46:43 -04:00
conda_env.yml Roast feature works, its not content aware yet but it does work. Message cooldows have been added. Custom cooldown messages have been added. 2025-05-08 10:46:43 -04:00
persona.json Chat API approach was not successful. I couldnt figure it out with ChatGPT so we went back to a more rudementary approach that does seem to work fairly well. 2025-05-07 23:26:58 -04:00
personality.py Most of day 3 is done but the personality is not being loaded properly. Some time is being taken to understand Ollama better and see how system prompts can be used 2025-05-07 18:40:28 -04:00
README.md Changed README.md. cleaned up and added new targets 2025-05-08 11:32:37 -04:00
requirements.txt Roast feature works, its not content aware yet but it does work. Message cooldows have been added. Custom cooldown messages have been added. 2025-05-08 10:46:43 -04:00
settings.yml Roast feature works, its not content aware yet but it does work. Message cooldows have been added. Custom cooldown messages have been added. 2025-05-08 10:46:43 -04:00

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

  • Create Discord bot in Developer Portal
  • Enable Message Content Intent
  • Set up .env with token
  • Write bot.py with basic !ping command
  • Invite bot to server and confirm it replies

🔄 Day 2 AI Integration

  • Write ai.py to connect to Ollama/OpenAI
  • Set up API call + prompt formatting
  • Add !chat command to relay messages
  • 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.

  • Replace hardcoded PERSONALITY with a JSON-based persona profile
  • Create persona.json to store:
    • Bot name
    • Emoji
    • Style prefix
    • Prompt injection
  • Update personality.py to read from persona.json
  • Style all AI replies using the loaded persona
  • 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 Lives Screenshot

📁 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)
  • Fix Emojis (optional)
    • Emojis from the settings.yml file are broken. Please fix

🕒 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

🧬 Final Day Delta Modelfile Integration

Goal: Make Delta self-contained by baking her personality directly into an Ollama Modelfile.

This final step removes the need for runtime prompt injection by turning Delta into her own model using Ollamas custom model system.

Tasks

  • Create a Modelfile for Delta inside models/delta/
  • Set FROM llama3 or other base model
  • Add personality using the SYSTEM directive
  • Tune parameters:
    • temperature for flair (suggested: 0.85)
    • num_ctx for longer memory (suggested: 4096)
    • stop tokens like User: to avoid rambling
  • Define a conversation TEMPLATE that ensures in-character replies
  • Build the model:
    ollama create delta -f ./models/delta/Modelfile
    
    
    

🎨 Polish & Bonus features

  • Bot appears on the server like a "user" (ability to @delta instead of "!chat")
    • helps the "sell" the idea to others that the bot is a "friend"
    • All user interactions apply to the bot so other users dont need to remmember special commands
  • Have the bot be content aware
    • pulls the existing conversation and talks about stuff that is inline with the topics
  • Give bot ability to react to mesages like users would
    • adds a personal touch and helps sell the idea of it being your "friend" more
    • does need some sort of content awareness
  • Bot can be given some power to change the server a bit
  • keeps thing fresh, makes it so that there is some change happening in servers
  • the idea being it makes the bot more unique by providing more tailored experiences
  • Bot is user aware
    • usernames are passed to the bot along side the users prompt
  • Image interpretation
    • bot can read images like GPT this allows for more personalised interactions
  • Web usage
    • Bot can search the web like GPT or OpenWebUI
    • Opens up a ton of interactivity for memes, media discussion, an be easily integrated with multiple platforms

Progress last updated: May 8, 2025