Skip to the content.

Gideon Logo

Python 3.8+ Py-Cord 2.4+ License MIT

Your server's intelligent companion powered by cutting-edge AI models

InstallationFeaturesCommandsModelsTroubleshooting

🤖 Gideon - AI Assistant for Discord

🌟 Overview

Gideon transforms your Discord server into an AI-powered hub, connecting members to state-of-the-art language and image models. With Gideon, users can have intelligent conversations, generate creative images, analyze visual content, create fantasy adventures, and organize discussions through an intuitive thread system.

✨ Features

🧠 Intelligence

dynamic-model-search

analyze-demo

analyze-demo

imagine-queue

imagine-queue

imagine-queue

🧵 Organization

ai-thread-demo

ai-thread-demo

ai-thread-demo

url-summary-demo

url-summary-demo

🎲 Fantasy Game Master

🛠️ Customization

🚀 Installation

Prerequisites

Setup

# Clone and enter repository
git clone https://github.com/Emperor-Ovaltine/gideon
cd gideon

# Set up environment and dependencies
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt

# Configure bot
cp .env.example .env
# Edit .env with your Discord token, OpenRouter API key, and AI Horde API key

# Launch
python3 -m src

Discord Configuration

  1. Create an application at Discord Developer Portal
  2. Under “Bot” tab:
    • Enable “Message Content Intent”
    • Copy your bot token for the .env file
  3. Generate invite URL in “OAuth2 > URL Generator”:
    • Scopes: bot, applications.commands
    • Permissions: Send Messages, Read Message History, Embed Links, Use Slash Commands

Cloudflare Worker Configuration (Optional)

⚠️ IMPORTANT: Setting up and deploying the Cloudflare Worker is the responsibility of the end user. Gideon does not provide support for configuring or troubleshooting Cloudflare Workers.

If you want to use the /dream command for generating images:

  1. Create and deploy your own Cloudflare Worker that can generate images
  2. The worker should accept a JSON payload with at least a prompt field
  3. Set the CLOUDFLARE_WORKER_URL in your .env file to your worker’s URL
  4. Optionally set CLOUDFLARE_API_KEY if your worker requires authentication

An example Cloudflare worker that has been tested with Gideon can be found here: flux1-cloudflare-worker

Note: Setting up a Cloudflare Worker is also required for scene visualization in Adventure mode.

Example /dream output

imagine-queue

🤖 Commands

General Commands

Command Description
/chat Start a conversation with the AI
/reset Clear the conversation history
/summarize Summarize the current conversation
/memory Show conversation statistics

Thread Commands

Command Description
/thread new Create a new AI conversation thread
/thread message Send a message to a specific thread
/thread list View all threads
/thread delete Remove a thread
/thread rename Change the name of a thread
/thread setmodel Set the AI model for a thread
/thread setsystem Set the system prompt for a thread

Configuration Commands

Command Description
/setmodel Change the global AI model
/model View or change the current model
/setsystem Customize the AI personality
/setchannelmodel Set the AI model for the current channel
/setchannelsystem Set the system prompt for the current channel
/setmemory Set the message history limit
/setwindow Set the time window for memory

Image Commands

Command Description
/imagine Generate images from text using AI Horde
/hordemodels List available AI Horde models
/dream Generate images using Cloudflare Workers
/cftest Test the connection to Cloudflare Worker

Adventure Commands

Command Description
/adventure new Start a new tabletop RPG adventure
/adventure action Take an action in your adventure
/adventure roll Roll dice with narrated results
/adventure status Check the status of the current adventure
/adventure end End the current adventure with summary
/adventure config_images Configure frequency of scene image generation

📚 Supported Models

Text Models (via OpenRouter)

Image Models

Via AI Horde

Via Cloudflare Worker (requires self-setup)

🎲 Adventure System

The Adventure System transforms Gideon into an AI Game Master for immersive tabletop roleplaying experiences:

Features

Using the Adventure System

  1. Start an adventure with /adventure new
  2. Take actions with /adventure action [what you want to do]
  3. Roll dice when needed with /adventure roll [dice notation]
  4. Check your progress with /adventure status
  5. End your adventure when complete with /adventure end
  6. Adjust image generation with /adventure config_images [frequency] (0 to disable)

❓ Troubleshooting

📖 Documentation

For detailed technical information about Gideon’s architecture, implementation details, and advanced setup instructions, please refer to the Technical Documentation.

Made with ❤️ by Emperor-Ovaltine