Skip to content
cosmognautPublic

About

Logos is a Discord based discussion facilitator that helps users have structured discourse on any topic. It's currently in alpha and is actively being tested.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

17 Commits

Folders and files

Repository files navigation

Logos (alpha)

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.

Features

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.

Demo

Here is a screenshot of a demo conversation with the bot: a demo conversation with the bot

Local setup

You can either use Docker or pip to work on Logos locally. If you have uv, you can use uv pip instead.

Using Docker

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.

  1. Clone the repository:

    git clone https://github.com/cosmognaut/logos-bot
    cd logos-bot
  2. Create a .env and set the variables as given here

    DISCORD_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.

  3. Run the following commands in the root directory:

    docker build --tag cosmognaut/logos .
    docker run cosmognaut/logos:latest

    That's it. The bot should be up and running instantly.

Manual setup

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.

  1. Clone the repository:

    git clone https://github.com/cosmognaut/logos-bot
    cd logos-bot
  2. Using pip,

    pip install -r requirements.txt

    Note that you might need to activate your virtual environment to avoid package conflicts.

  3. For the configuration, follow the steps below:

    • Create a .env file 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
  4. 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.

Project structure

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 deps

Architecture

Logos 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.

Acknowledgement and License

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.

Enhancements

  • It would be good to have a feature where one could use different models, and not only be restricted to use a GROQ_API_KEY for using the bot.

About

Logos is a Discord based discussion facilitator that helps users have structured discourse on any topic. It's currently in alpha and is actively being tested.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages