The unexamined life is not worth living — Socrates, at his trial
Logos is a Discord bot designed to help you have high quality, structured discourse on virtually any topic. It acts as a logical filter, cutting through the noise of unstructured chatter and prioritizes high-signal, dialectical discussions. By enforcing logical consistency and identifying fallacies in real-time, Logos transforms Discord from a simple chat room into an arena for rigorous, structured thought.
Logos supports a limited set of commands in its beta that help enforce the central thesis of having productive conversations. This includes:
/test: test command that can be invoked to test the connection to Discord's servers/debate @user [topic]: the main command for starting a private, turn based discussion thread. Logos monitors this thread and intervenes only when there is a strict logical fallacy./argue [your argument]: use this when you have an argument you want to refine or optimize. The ideal use case would be inside debate threads where the bot will have the relevant context to the conversation./simulate [persona A] [persona B] [topic]: generates a simulated debate between two AI personas on a particular topic. The conversation ends automatically when a conclusion is reached.
NOTE: One can debate Logos itself using the /debate command, in which case traditional monitoring features are disabled.
Here is a screenshot of a demo conversation with the bot:

You can either use Docker or pip to work on Logos locally. If you have uv, you can use uv pip instead.
If you prefer to use Docker, the setup becomes quite easy. There's already a Dockerfile present in the root directory of this repository. First, clone the repo and change into the appropriate directory. Then, you need to craete a .env file at the root directory.
-
Clone the repository:
git clone https://github.com/cosmognaut/logos-bot cd logos-bot -
Create a
.envand set the variables as given hereDISCORD_BOT_TOKEN=your_bot_token GROQ_API_KEY=your_groq_key
You can obtain your bot token from the Discord developer portal. For your API key, you need to create an account on Groq first.
-
Run the following commands in the root directory:
docker build --tag cosmognaut/logos . docker run cosmognaut/logos:latestThat's it. The bot should be up and running instantly.
To set things up manually, first clone the repo to your local computer and change into the appropriate directory. Installation via pip is supported here.
-
Clone the repository:
git clone https://github.com/cosmognaut/logos-bot cd logos-bot -
Using
pip,pip install -r requirements.txt
Note that you might need to activate your virtual environment to avoid package conflicts.
-
For the configuration, follow the steps below:
- Create a
.envfile in the root directory of the project. - Set the variable values as given here:
DISCORD_BOT_TOKEN=your_bot_token GROQ_API_KEY=your_groq_key
- Create a
-
Finally, run the bot:
# This starts a version of the bot running locally for testing purposes python bot.py
As mentioned before, you can obtain your bot token from the Discord developer portal. For your API key, you need to create an account on Groq first.
The project has a simple structure, with the intelligence.py script serving as the "brains" for the application, while the bot itself is served through bot.py.
.
├── assets # assets for github
├── bot.py # main script for running the bot
├── Dockerfile # for Docker
├── intelligence.py # script for handling LLM interactions
├── keep_alive.py # for Render
├── LICENSE # project license
├── README.md # you are here
└── requirements.txt # project depsLogos uses the discord.py framework for interacting with the Discord API. More information can be found here.
For its intelligence models, it uses Llama 3.3 (70B) & Llama 3.1 (8B) via Groq API.
Logos is also deployed on Render.
It is heavily inspired by similar projects that use artificial intelligence models to optimize conversations (especially debates) between humans. Sway AI is a great example of such a project.
This project is licensed under the terms of the MIT license.
- It would be good to have a feature where one could use different models, and not only be restricted to use a
GROQ_API_KEYfor using the bot.